App Hub を設定すると、アプリケーションの管理境界が作成されます。この境界は、設定モデルに応じて、管理プロジェクトまたはアプリケーション管理用に構成したホスト プロジェクトとサービス プロジェクトのコレクションのいずれかです。この管理境界内では、サービスとワークロードがアプリケーションとして登録されます。
構成のドリフトを回避し、明確な信頼できる情報源を維持するには、アプリケーション リソースが最初に定義された環境で管理することをおすすめします。
App Design Center テンプレートからデプロイされたアプリケーションの場合: App Design Center を使用してアプリケーションを管理および更新します。アプリケーション設計の変更については、テンプレートを修正するか、アプリケーション リビジョンを作成して、アプリケーションやコンポーネントの詳細などの設定を更新できます。
App Hub でリソースを登録して作成されたアプリケーションの場合: アプリケーション、そのサービス、ワークロードを App Hub 内で直接管理します。
このページでは、App Hub 内で直接登録されたアプリケーションを管理する方法について説明します。これらのアクションは、 Google Cloud コンソールまたは Google Cloud CLI を使用して実行できます。テンプレートからデプロイされたアプリケーションについては、Application Design Center のドキュメントをご覧ください。
始める前に
App Hub でアプリケーションのリスト表示、表示、更新、削除を行うには、次の手順を完了します。
- サポートされている設定モデルのいずれかを使用して、App Hub を設定します。
- アプリケーションを作成し、管理するアプリケーションにサポートされているリソースを登録します。
必要なロール
App Hub でアプリケーションを管理するために必要な権限を取得するには、設定モデル(管理プロジェクトまたはホスト プロジェクトとサービス プロジェクト)のアプリケーション管理境界に対する次の IAM ロールを付与するよう管理者に依頼してください。
-
アプリケーションを更新して削除する: App Hub 編集者 (
roles/apphub.editor
) -
アプリケーションを表示する: App Hub 閲覧者 (
roles/apphub.viewer
)
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
App Hub のロールの詳細については、App Hub の IAM ロールと権限をご覧ください。
アプリケーションの一覧表示
次の手順に沿って、App Hub の管理境界内のすべてのアプリケーションを一覧表示してフィルタします。
コンソール
Google Cloud コンソールの [ようこそ] ページで、プロジェクト ピッカーを使用して管理プロジェクトまたはホスト プロジェクトを選択します。
App Hub の [アプリケーション] ページに移動します。
このページには、アプリケーションのリストが表示されます。
リストをフィルタするには、[フィルタ] フィールドを使用します。重大度や環境などの属性でフィルタできます。
gcloud
管理プロジェクトまたはホスト プロジェクトのプロジェクト ID を確認します。
次のいずれかのオプションを使用して、アプリケーションのリストを表示します。
すべてのアプリケーションを一覧表示します。
gcloud apphub applications list \ --project=PROJECT_ID \ --location=LOCATION
次のように置き換えます。
PROJECT_ID
: ホスト プロジェクトまたは管理プロジェクトの ID。LOCATION
: アプリケーションのロケーション。グローバル アプリケーションの場合はglobal
を使用し、リージョン アプリケーションの場合はus-east1
などの特定のリージョンを使用します。
--filter
フラグを使用して、属性に基づいてアプリケーションのリストをフィルタします。gcloud apphub applications list \ --project=PROJECT_ID \ --location=LOCATION \ --filter=FILTER_EXPRESSION \
次のように置き換えます。
PROJECT_ID
: ホスト プロジェクトまたは管理プロジェクトの ID。LOCATION
: アプリケーションのロケーション。グローバル アプリケーションの場合はglobal
を使用し、リージョン アプリケーションの場合はus-east1
などの特定のリージョンを使用します。FILTER_EXPRESSION
: 属性を指定するフィルタ式。たとえば、PRODUCTION
環境タイプのすべてのアプリケーションを一覧表示するには、attributes.environment.type=PRODUCTION
を使用します。
アプリケーションの詳細を表示する
特定のアプリケーションの詳細情報(属性やメタデータなど)を表示する手順は次のとおりです。
コンソール
Google Cloud コンソールの [ようこそ] ページで、プロジェクト ピッカーを使用して管理プロジェクトまたはホスト プロジェクトを選択します。
App Hub の [アプリケーション] ページに移動します。
このページには、アプリケーションのリストが表示されます。
表示するアプリケーションの名前をクリックします。
アプリケーションの [詳細] タブが表示されます。
gcloud
管理プロジェクトまたはホスト プロジェクトのプロジェクト ID を確認します。
アプリケーションの説明:
gcloud apphub applications describe APPLICATION_NAME \ --project=PROJECT_ID \ --location=LOCATION
次のように置き換えます。
APPLICATION_NAME
: アプリケーションの名前。この値は、アプリケーションの作成時に指定します。PROJECT_ID
: ホスト プロジェクトまたは管理プロジェクトの ID。LOCATION
: アプリケーションのロケーション。グローバル アプリケーションの場合はglobal
を使用し、リージョン アプリケーションの場合はus-east1
などの特定のリージョンを使用します。
アプリケーション属性を更新する
アプリケーションの作成後にユーザー定義属性を変更する手順は次のとおりです。
コンソール
Google Cloud コンソールの [ようこそ] ページで、プロジェクト ピッカーを使用して管理プロジェクトまたはホスト プロジェクトを選択します。
App Hub の [アプリケーション] ページに移動します。
このページには、アプリケーションのリストが表示されます。
更新するアプリケーションの
[編集] をクリックします。[アプリケーションの編集] ペインで、必要に応じてフィールドを変更します。
[保存] をクリックします。
gcloud
管理プロジェクトまたはホスト プロジェクトのプロジェクト ID を確認します。
アプリケーションの属性を更新します。
display-name
、criticality-type
、environment-type
、所有者などの変更可能な属性を更新できます。gcloud apphub applications update APPLICATION_NAME \ --project=PROJECT_ID \ --location=LOCATION \ --display-name=DISPLAY_NAME \ --criticality-type=CRITICALITY_LEVEL \ --environment-type=ENVIRONMENT \ --developer-owners=display-name=DEV_NAME,email=DEV_EMAIL \ --operator-owners=display-name=OPERATOR_NAME,email=OPERATOR_EMAIL \ --business-owners=display-name=BUSINESS_NAME,email=BUSINESS_EMAIL
次のように置き換えます。
- 必須:
APPLICATION_NAME
: アプリケーションの名前。この値は、アプリケーションの作成時に指定します。 - 必須:
PROJECT_ID
: ホスト プロジェクトまたは管理プロジェクトの ID。 - 必須:
LOCATION
: アプリケーションの場所。グローバル アプリケーションの場合はglobal
を使用し、リージョン アプリケーションの場合はus-east1
などの特定のリージョンを使用します。 - 省略可:
DISPLAY_NAME
: アプリケーションの表示名。 省略可:
CRITICALITY_LEVEL
: アプリケーションの重要度。次の値のいずれかを使用できます。MISSION_CRITICAL
HIGH
MEDIUM
LOW
省略可:
ENVIRONMENT
: ソフトウェア ライフサイクルのステージ。次の値のいずれかを使用できます。PRODUCTION
STAGING
DEVELOPMENT
TEST
省略可:
DEV_NAME
とDEV_EMAIL
: それぞれデベロッパー オーナーの表示名とメールアドレス。省略可:
OPERATOR_NAME
とOPERATOR_EMAIL
: オペレーター オーナーの表示名とメールアドレス。省略可:
BUSINESS_NAME
とBUSINESS_EMAIL
: それぞれビジネス オーナーの表示名とメールアドレス。
- 必須:
Terraform
Terraform でアプリケーション属性を更新するには、構成ファイルの google_apphub_application
リソース ブロック内の引数を変更します。変更を適用すると、Terraform は新しい構成に合わせてアプリケーションを更新します。
次の例では、us-central1
のリージョン アプリケーションの重要度と環境の属性を更新します。
resource "google_apphub_application" "example" {
project = "my-project-id"
location = "us-central1"
application_id = "my-application"
display_name = "My Application"
description = "This application represents our platform."
attributes {
criticality {
type = "HIGH" # Updated criticality
}
environment {
type = "PRODUCTION"
}
# ... other attributes
}
}
アプリケーションを削除する
アプリケーションを削除する前に、まず関連するすべてのサービスとワークロードの登録を解除する必要があります。次の手順でアプリケーションを削除します。
コンソール
Google Cloud コンソールの [ようこそ] ページで、プロジェクト ピッカーを使用して管理プロジェクトまたはホスト プロジェクトを選択します。
App Hub の [アプリケーション] ページに移動します。
このページには、アプリケーションのリストが表示されます。
削除するアプリケーションの名前をクリックします。
[サービスとワークロード] タブに移動し、アプリケーションに関連付けられているすべてのリソースの登録が解除されていることを確認します。詳細については、サービスとワークロードの登録を解除するをご覧ください。
すべてのサービスとワークロードの登録を解除したら、アプリケーションの詳細に戻り、[削除] をクリックします。
gcloud
管理プロジェクトまたはホスト プロジェクトのプロジェクト ID を確認します。
アプリケーションに関連付けられているすべてのリソースの登録を解除したことを確認します。詳細については、サービスとワークロードの登録解除をご覧ください。
登録されたリソースがなくなったら、アプリケーションを削除します。
gcloud apphub applications delete APPLICATION_NAME \ --project=PROJECT_ID \ --location=LOCATION
次のように置き換えます。
APPLICATION_NAME
: アプリケーションの名前。この値は、アプリケーションの作成時に指定します。PROJECT_ID
: ホスト プロジェクトまたは管理プロジェクトの ID。LOCATION
: アプリケーションのロケーション。グローバル アプリケーションの場合はglobal
を使用し、リージョン アプリケーションの場合はus-east1
などの特定のリージョンを使用します。
Terraform
Terraform で管理されているアプリケーションを削除するには、次のいずれかの方法を使用します。
- 構成からリソースを削除する: Terraform ファイルから
google_apphub_application
リソース ブロックを削除し、terraform apply
を実行します。Terraform は、リソースが構成に存在しないことを認識し、プロジェクトから削除します。 - すべてのリソースを終了する:
terraform destroy
コマンドを実行して、アプリケーションを含む Terraform 構成で管理されているすべてのリソースを終了します。