App Hub アプリケーションを管理する

アプリケーションの設定モデルを選択するときに管理プロジェクトで App Hub アプリケーションのアプリケーション管理境界を定義します。 この境界内のアプリケーションにサービスとワークロードを登録できます。

アプリケーション管理プラクティスを導入するための推奨されるユースケースについては、 アプリケーション管理の準備をご覧ください。 アプリケーションを作成してリソースを登録するには、 既存のリソースをアプリケーションに登録するをご覧ください。

構成のドリフトを回避し、信頼できる唯一の情報源を維持するため、アプリケーション コンポーネントは、最初に定義された環境で管理することをおすすめします。

  • App Design Center テンプレートからデプロイされたアプリケーションの場合: App Design Center を使用してアプリケーションを管理および更新します。 アプリケーション設計の変更に合わせてテンプレートを 修正する か、アプリケーション リビジョンを 作成して 、アプリケーションやコンポーネントの詳細などの設定を更新できます。

    App Design Center に移動

  • App Hub で既存のリソースを登録して作成されたアプリケーションの場合: App Hub 内でアプリケーション、サービス、ワークロードを直接管理します。

    App Hub に移動

このページでは、App Hub 内で直接登録されたアプリケーションを管理する方法について説明します。これらの操作は、 Google Cloud コンソールまたは Google Cloud CLI を使用して実行できます。テンプレートからデプロイされたアプリケーションについては、 App Design Center のドキュメントをご覧ください。

始める前に

このドキュメントでは、 サポートされているリソースが登録されているアプリケーションがあることを前提としています

必要なロール

App Hub でアプリケーションを管理するために必要な権限を取得するには、アプリケーション管理境界を定義する管理プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

必要な権限は、カスタム ロールや他の事前定義 ロールから取得することもできます。

App Hub のロールの詳細については、 App Hub の IAM ロールと権限をご覧ください。

アプリケーションの一覧表示

アプリケーション管理境界内のすべてのアプリケーションを一覧表示してフィルタするには、次の操作を行います。

コンソール

  1. コンソールで、プロジェクト選択ツールを使用して管理プロジェクトを選択します。 Google Cloud

  2. App Hub から [アプリケーション] ページに移動します。

    [アプリケーション] に移動

    ページにアプリケーションのリストが表示されます。

  3. リストをフィルタするには、[フィルタ] フィールドを使用します。[重大度] や [環境] などの属性でフィルタできます。

gcloud

  1. 管理プロジェクトの プロジェクト ID を確認します。

  2. 次のいずれかのオプションを使用して、アプリケーションのリストを表示します。

    • すべてのアプリケーションを一覧表示する:

      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 を使用します。

アプリケーションの詳細を表示する

特定のアプリケーションの詳細情報(属性やメタデータなど)を表示するには、次の操作を行います。

コンソール

  1. コンソールで、プロジェクト選択ツールを使用して管理プロジェクトを選択します。 Google Cloud

  2. App Hub から [アプリケーション] ページに移動します。

    [アプリケーション] に移動

    ページにアプリケーションのリストが表示されます。

  3. 表示するアプリケーションの名前をクリックします。

    アプリケーションの [詳細] タブが表示されます。

gcloud

  1. 管理プロジェクトの プロジェクト ID を確認します。

  2. アプリケーションを記述します。

    gcloud apphub applications describe APPLICATION_NAME \
        --project=PROJECT_ID \
        --location=LOCATION
    

    次のように置き換えます。

    • APPLICATION_NAME: アプリケーションの名前。この値は、アプリケーションを 作成するときに指定します。
    • PROJECT_ID: 管理プロジェクトの ID。
    • LOCATION: アプリケーションのロケーション。グローバル アプリケーションの場合は global、リージョン アプリケーションの場合は us-east1 などの特定のリージョンを使用します。

アプリケーションの属性を更新する

アプリケーションの作成後に属性を変更するには、 次の操作を行います。サービスと ワークロードは、登録時に同じアプリケーション属性を使用することもできます。

コンソール

  1. コンソールで、プロジェクト選択ツールを使用して管理プロジェクトを選択します。 Google Cloud

  2. App Hub から [アプリケーション] ページに移動します。

    [アプリケーション] に移動

    ページにアプリケーションのリストが表示されます。

  3. 更新するアプリケーションで、 [Edit] をクリックします。

  4. [アプリケーションを編集] ペインで、必要に応じてフィールドを変更します。

  5. [保存] をクリックします。

gcloud

  1. 管理プロジェクトの プロジェクト ID を確認します。

  2. アプリケーションの属性を更新します。display-namecriticality-typeenvironment-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_NAMEDEV_EMAIL: デベロッパー オーナーの表示名とメールアドレス。

    • 省略可: OPERATOR_NAMEOPERATOR_EMAIL: オペレーター オーナーの表示名とメールアドレス。

    • 省略可: BUSINESS_NAMEBUSINESS_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
    }
}

アプリケーションを削除する

アプリケーションを削除する前に、まず すべてのサービスとワークロードの登録を解除する必要があります。 その後、次の手順でアプリケーションを削除します。

コンソール

  1. コンソールで、プロジェクト選択ツールを使用して管理プロジェクトを選択します。 Google Cloud

  2. App Hub から [アプリケーション] ページに移動します。

    [アプリケーション] に移動

    ページにアプリケーションのリストが表示されます。

  3. 削除するアプリケーションの名前をクリックします。

  4. [サービスとワークロード] タブに移動し、すべてのアプリケーション コンポーネントの登録が解除されていることを確認します。詳細については、 サービスとワークロードの登録解除をご覧ください。

  5. すべてのサービスとワークロードの登録を解除したら、アプリケーションの詳細に戻り、[削除] をクリックします。

gcloud

  1. 管理プロジェクトの プロジェクト ID を確認します。

  2. すべてのアプリケーション コンポーネントの登録が解除されていることを確認します。詳細については、 サービスとワークロードの登録解除をご覧ください。

  3. アプリケーションに登録されているコンポーネントがない場合は、次のコマンドで削除します。

    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 構成で管理されているすべてのリソースを終了します。

次のステップ