前提条件
App Hub リソースを変更する前に、次のタスクを完了します。
- 前提条件に沿って App Hub を設定します。
- 変更するリソースの種類に応じて、App Hub を設定する手順を実行していることを確認します。詳細については、App Hub を設定するをご覧ください。
必要なロール
App Hub リソースの変更に必要な権限を取得するには、アプリ対応フォルダに対する次の IAM ロールを付与するよう管理者に依頼してください。
-
アプリケーションの作成と更新、サービスとワークロードの登録と登録解除、関連する属性の更新を行うには、次の操作を行います。
-
App Hub 管理者 (
roles/apphub.admin
) -
App Hub 編集者 (
roles/apphub.editor
)
-
App Hub 管理者 (
-
アプリケーション、サービス、ワークロード、およびそれらの属性を表示するには: App Hub 閲覧者 (
roles/apphub.viewer
) -
アプリケーション管理をサポートするサービス全体でアプリケーション、サービス、ワークロード、およびそれらの属性を表示するには: App Hub 管理閲覧者 (
roles/apphub.appManagementViewer
) Google Cloud
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
アプリケーションの一覧表示
アプリ対応のフォルダ内のアプリを一覧表示してフィルタできます。
Console
アプリ対応フォルダ内のアプリケーションを表示するには、Google Cloud コンソールで App Hub の [アプリケーション] ページに移動します。
アプリケーションをフィルタするには:
- [フィルタ] フィールドで、[重要度] などのフィルタを選択します。
- フィルタの値を指定します。たとえば、重要度の高いアプリケーションを表示するには、値として [高] を選択します。
指定したフィルタに一致するアプリケーションのリストが表示されます。
gcloud
アプリ対応フォルダ内のアプリを表示するには:
gcloud apphub applications list \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
次のように置き換えます。
MANAGEMENT_PROJECT_ID
: 管理プロジェクトの ID。管理プロジェクト ID は、Google Cloud コンソールの Identity and Access Management(IAM)と管理の [設定] ページで確認できます。管理プロジェクト ID が見つからない場合は、アプリが有効になっているフォルダに移動していない可能性があります。Purview 選択ツール(またはプロジェクト セレクタ)から、アプリ対応フォルダを選択します。アプリケーション管理用にフォルダを有効にする方法については、アプリケーション管理を有効にするをご覧ください。REGION
: アプリケーションのリージョン。アプリケーションの--scope-type
に応じて、値global
またはアプリケーションのリージョン(us-east1
など)を指定します。アプリの--scope-type
の設定の詳細については、アプリを作成するをご覧ください。
変数属性に基づいてアプリケーションをフィルタするには、
--filter
フラグを使用します。たとえば、environment-type
属性がPRODUCTION
に設定されているすべてのアプリケーションを一覧表示するには、次のコマンドを使用します。gcloud apphub applications list \ --filter='attributes.environment.type=PRODUCTION' \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
申請書を表示する
アプリ対応のフォルダにアプリを記述できます。
Console
Google Cloud コンソールで、App Hub の [アプリケーション] ページに移動します。
アプリケーションのリストから、詳細を確認するアプリケーションをクリックします。
[詳細] タブをクリックして、申請の詳細を表示します。
gcloud
gcloud apphub applications describe APPLICATION_NAME \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
APPLICATION_NAME
は、アプリケーションの名前に置き換えます。名前にはスペースなしの小文字の英数字のみを使用します。
App Hub アプリケーションを更新する
アプリケーションの属性は、アプリケーションの作成後に更新できます。
Console
Google Cloud コンソールで、App Hub の [アプリケーション] ページに移動します。
アプリケーションの一覧で、更新するアプリケーションの [
編集] をクリックします。必要に応じてフィールドを編集します。
[保存] をクリックします。
gcloud
criticality-type
、environment-type
、owner type の各属性でアプリケーションを更新します。gcloud apphub applications update APPLICATION_NAME \ --display-name='APPLICATION_DISPLAY_NAME' \ --criticality-type='CRITICALITY_LEVEL' \ --environment-type='ENVIRONMENT' \ --developer-owners=display-name=DISPLAY-NAME-DEVELOPER,email=EMAIL-DEVELOPER \ --operator-owners=display-name=DISPLAY-NAME-OPERATOR,email=EMAIL-OPERATOR \ --business-owners=display-name=DISPLAY-NAME-BUSINESS,email=EMAIL-BUSINESS \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
次のように置き換えます。
APPLICATION_NAME
: アプリケーションの名前。 名前にはスペースなしの小文字の英数字のみを使用します。REGION
: アプリケーションのリージョン。
次のいずれかを更新できます。
APPLICATION_DISPLAY_NAME
: アプリケーションの表示名を示します。CRITICALITY_LEVEL
: ビジネス運営におけるアプリケーション、サービス、ワークロードの重要度を示します。次のいずれかの値を指定します。MISSION_CRITICAL
HIGH
MEDIUM
LOW
ENVIRONMENT
: ソフトウェア ライフサイクルのステージを示します。次のいずれかの値を指定します。PRODUCTION
STAGING
DEVELOPMENT
TEST
DISPLAY-NAME-DEVELOPER
、DISPLAY-NAME-OPERATOR
、DISPLAY-NAME-BUSINESS
: それぞれ、デベロッパー、オペレーター、ビジネス オーナーの表示名。EMAIL-NAME-DEVELOPER
、EMAIL-NAME-OPERATOR
、EMAIL-NAME-BUSINESS
: それぞれ、デベロッパー、オペレーター、ビジネス オーナーのメールアドレス。これらの値は、username@yourdomain
の形式(例:222larabrown@gmail.com
)にする必要があります。
次に例を示します。
gcloud apphub applications update my-application \ --criticality-type='MEDIUM' \ --environment-type='STAGING' \ --developer-owners=display-name=developer-name,email=username@yourdomain \ --project=google-mpf-FOLDER-ID \ --location=us-east1
サービスとワークロードを表示する
アプリケーション内のサービスとワークロードを表示、一覧表示、フィルタできます。
Console
サービスとワークロードを一覧表示するには:
Google Cloud コンソールで、App Hub の [サービスとワークロード] ページに移動します。
[リージョン] リストで、サービスとワークロードを表示するリージョンを選択します。たとえば、[us-east1] を選択します。
[サービスとワークロード] ページには、us-east1 に関連付けられた、接続済みのサービス プロジェクトのすべてのサービスとワークロードが表示されます。
サービスまたはワークロードをフィルタするには:
- [フィルタ] フィールドで、[環境] などのフィルタを選択します。
- フィルタの値を指定します。たとえば、本番環境のサービスとワークロードを表示するには、値として [本番環境] を選択します。
指定したフィルタに一致するサービスとワークロードのリストが表示されます。
gcloud
検出されたサービスを一覧表示する
検出されたサービスは、アプリケーションに登録できます。
検出されたサービスを一覧表示するには:
gcloud apphub discovered-services list \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
次のような出力が表示されます。
ID SERVICE_REFERENCE SERVICE_PROPERTIES [DISCOVERED_SERVICE_ID] {'uri': '//compute.googleapis.com/projects/[PROJECT_NUMBER]/regions/REGION/forwardingRules/testing-forwarding-rule-1'} {'gcpProject': 'projects/PROJECT_ID', 'location': 'REGION'}
省略可: 検出されたサービスのリストをフィルタします。たとえば、アプリが有効になっているフォルダで転送ルールを使用して検出されたサービスをフィルタリングするには、次のコマンドを使用します。
gcloud apphub discovered-services list \ --filter='service_reference.uri~"forwardingRules"' \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
登録済みサービスを一覧表示する
アプリケーションから登録済みの App Hub サービスを一覧表示してフィルタする。
アプリケーション内の登録済みサービスを一覧表示するには:
gcloud apphub applications services list \ --application=APPLICATION_NAME \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
次のような出力が表示されます。
ID DISPLAY_NAME SERVICE_REFERENCE CREATE_TIME SERVICE_NAME mywebserver-service1 {'uri': '//compute.googleapis.com/projects/[PROJECT_NUMBER]/regions/REGION/forwardingRules/testing-forwarding-rule'} 2023-11-01T21:38:08
登録されているが切断されたサービスは、
SERVICE_REFERENCE
フィールドの空の値で表されます。省略可: 登録済みサービスのリストをフィルタします。たとえば、
environment-type
属性がPRODUCTION
に設定されているアプリケーションで登録済みサービスをフィルタリングするには、次のようにします。gcloud apphub applications services list \ --filter='attributes.environment.type=PRODUCTION' \ --application=APPLICATION_NAME \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
検出されたワークロードを一覧表示する
検出されたワークロードは、アプリケーションに登録できます。
検出されたワークロードを一覧表示するには:
gcloud apphub discovered-workloads list \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
未登録の MIG を含む次のような出力が表示されます。
ID WORKLOAD_REFERENCE WORKLOAD_PROPERTIES [DISCOVERED_WORKLOAD_ID] {'uri': '//compute.googleapis.com/projects/[PROJECT_NUMBER]/regions/REGION/instanceGroups/testing-mig'} {'gcpProject': 'projects/PROJECT_ID', 'location': 'REGION'}
省略可: 検出されたワークロードのリストをフィルタします。たとえば、アプリ対応フォルダ内のコンピューティング リソースを含む検出されたワークロードのリストをフィルタするには、次のコマンドを使用します。
gcloud apphub discovered-workloads list \ --filter='workload_reference.uri~"compute"' --project=MANAGEMENT_PROJECT_ID \ --location=REGION
登録済みワークロードを一覧表示する
アプリケーションから登録済みの App Hub ワークロードを一覧表示してフィルタする。
アプリケーション内の登録済みワークロードを一覧表示するには:
gcloud apphub applications workloads list \ --application=APPLICATION_NAME \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
次のような出力が表示されます。
ID DISPLAY_NAME WORKLOAD_REFERENCE CREATE_TIME WORKLOAD_NAME mywebserver-deployment1 {'uri': '//compute.googleapis.com/projects/[PROJECT_NUMBER]/regions/REGION/instanceGroups/testing-mig'} 2023-10-31T18:34:23
登録済みだが切断されたワークロードは、
WORKLOAD_REFERENCE
フィールドの空の値で表されます。登録ステータスの詳細については、App Hub のプロパティと属性をご覧ください。省略可: 登録済みワークロードのリストをフィルタします。たとえば、
environment-type
属性がPRODUCTION
に設定されているアプリケーション内のワークロードをフィルタリングするには、次のようにします。gcloud apphub applications workloads list \ --filter='attributes.environment.type=PRODUCTION' \ --application=APPLICATION_NAME \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
サービスとワークロードを更新する
アプリケーションに登録されているサービスとワークロードを更新できます。
Console
Google Cloud コンソールで、App Hub の [アプリケーション] ページに移動します。
アプリケーションの名前をクリックします。
[サービスとワークロード] タブに、サービス プロジェクトに存在する登録済みのサービスとワークロードのリストが表示されます。更新するサービスまたはワークロードごとに、次の操作を行います。
- [サービスとワークロード] タブで、更新するサービスまたはワークロードの more_vert をクリックし、 [サービス編集] または [ワークロード編集] をクリックします。
- [サービス編集] ペインまたは [ワークロード編集] ペインで、必要に応じてフィールドを編集し、[保存] をクリックします。
gcloud
criticality-type
、environment-type
、owner type の各属性でサービスを更新します。gcloud apphub applications services update SERVICE_NAME \ --application=APPLICATION_NAME \ --display-name='SERVICE_DISPLAY_NAME' \ --criticality-type='CRITICALITY_LEVEL' \ --environment-type='ENVIRONMENT' \ --developer-owners=display-name=DISPLAY-NAME-DEVELOPER,email=EMAIL-DEVELOPER \ --operator-owners=display-name=DISPLAY-NAME-OPERATOR,email=EMAIL-OPERATOR \ --business-owners=display-name=DISPLAY-NAME-BUSINESS,email=EMAIL-BUSINESS \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
SERVICE_NAME
は、App Hub サービスの名前に置き換えます。次のいずれかを更新できます。
SERVICE_DISPLAY_NAME
: サービスの表示名を示します。CRITICALITY_LEVEL
: ビジネス運営におけるアプリケーション、サービス、ワークロードの重要度を示します。次のいずれかの値を指定します。MISSION_CRITICAL
HIGH
MEDIUM
LOW
ENVIRONMENT
: ソフトウェア ライフサイクルのステージを示します。次のいずれかの値を指定します。PRODUCTION
STAGING
DEVELOPMENT
TEST
DISPLAY-NAME-DEVELOPER
、DISPLAY-NAME-OPERATOR
、DISPLAY-NAME-BUSINESS
: それぞれ、デベロッパー、オペレーター、ビジネス オーナーの表示名。EMAIL-NAME-DEVELOPER
、EMAIL-NAME-OPERATOR
、EMAIL-NAME-BUSINESS
: それぞれ、デベロッパー、オペレーター、ビジネス オーナーのメールアドレス。これらの値は、username@yourdomain
の形式(例:222larabrown@gmail.com
)にする必要があります。
次に例を示します。
gcloud apphub applications workloads update my-application \ --criticality-type='MEDIUM' \ --environment-type='STAGING' \ --developer-owners=display-name=developer-name,email=username@yourdomain \ --project=google-mpf-FOLDER-ID \ --location=us-east1
criticality-type
、environment-type
、owner type の各属性でワークロードを更新します。gcloud apphub applications workloads update WORKLOAD_NAME \ --application=APPLICATION_NAME \ --display-name='WORKLOAD_DISPLAY_NAME' \ --criticality-type='CRITICALITY_LEVEL' \ --environment-type='ENVIRONMENT' \ --developer-owners=display-name=DISPLAY-NAME-DEVELOPER,email=EMAIL-DEVELOPER \ --operator-owners=display-name=DISPLAY-NAME-OPERATOR,email=EMAIL-OPERATOR \ --business-owners=display-name=DISPLAY-NAME-BUSINESS,email=EMAIL-BUSINESS \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
WORKLOAD_NAME
は、App Hub ワークロードの名前に置き換えます。次のいずれかを更新できます。
WORKLOAD_DISPLAY_NAME
: サービスの表示名を示します。CRITICALITY_LEVEL
: ビジネス運営におけるアプリケーション、サービス、ワークロードの重要度を示します。次のいずれかの値を指定します。MISSION_CRITICAL
HIGH
MEDIUM
LOW
ENVIRONMENT
: ソフトウェア ライフサイクルのステージを示します。次のいずれかの値を指定します。PRODUCTION
STAGING
DEVELOPMENT
TEST
DISPLAY-NAME-DEVELOPER
、DISPLAY-NAME-OPERATOR
、DISPLAY-NAME-BUSINESS
: それぞれ、デベロッパー、オペレーター、ビジネス オーナーの表示名。EMAIL-NAME-DEVELOPER
、EMAIL-NAME-OPERATOR
、EMAIL-NAME-BUSINESS
: それぞれ、デベロッパー、オペレーター、ビジネス オーナーのメールアドレス。これらの値は、username@yourdomain
の形式(例:222larabrown@gmail.com
)にする必要があります。
次に例を示します。
gcloud apphub applications workloads update my-application \ --criticality-type='MEDIUM' \ --environment-type='STAGING' \ --developer-owners=display-name=developer-name,email=username@yourdomain \ --project=google-mpf-FOLDER-ID \ --location=us-east1
アプリケーション、サービス、ワークロードを削除する
既存のアプリを削除して、アプリ対応フォルダに関連付けられている登録済みリソースを削除します。これを行うには、まず、アプリケーションに登録されているワークロードとサービスの登録を解除する必要があります。
Console
Google Cloud コンソールで、App Hub の [アプリケーション] ページに移動します。
アプリケーションの名前をクリックします。アプリケーションに登録されているサービスとワークロードのリストが表示されます。
サービスまたはワークロードの登録を解除します。
- [サービスとワークロード] タブの [登録済みのサービスとワークロード] セクションで、登録を解除するサービスまたはワークロードの名前をクリックします。
- 登録済みのサービスまたはワークロードのページで、[登録を解除] をクリックして、サービスまたはワークロードを [検出済み] リソースとして更新します。[サービスとワークロード] タブに、ワークロードの登録が解除されたことを示すアラートが表示されます。
- サービスとワークロードごとに、上記の手順を繰り返します。
App Hub の [アプリケーション] ページに移動します。
アプリケーションの名前をクリックします。
アプリケーションの詳細が表示されているページで、[削除] をクリックします。
gcloud
アプリケーションに登録されているサービスを一覧表示します。
gcloud apphub applications services list \ --application=APPLICATION_NAME \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
アプリケーションからサービスを登録解除します。
gcloud apphub applications services delete SERVICE_NAME \ --application=APPLICATION_NAME \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
これで、サービスが検出されたサービスになり、アプリケーションに登録できるようになりました。
前のコマンドを繰り返して、アプリケーションから残りの登録済みサービスを登録解除します。
アプリケーションに登録されているワークロードを一覧表示します。
gcloud apphub applications workloads list \ --application=APPLICATION_NAME \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
アプリケーションからワークロードの登録を解除します。
gcloud apphub applications workloads delete WORKLOAD_NAME \ --application=APPLICATION_NAME \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION
これで、ワークロードは、アプリケーションに登録可能な検出されたワークロードになります。
先ほどのコマンドを繰り返して、残りの登録済みワークロードをアプリケーションから削除します。
アプリケーションを削除します。
gcloud apphub applications delete APPLICATION_NAME \ --project=MANAGEMENT_PROJECT_ID \ --location=REGION