既存の Google Cloud リソースを App Hub アプリケーションのサービスとワークロードとして登録すると、ビジネス上の目的に基づいてリソースを整理することで、管理を簡素化できます。このアプローチにより、可視性、モニタリング、ガバナンス、運用制御を一元化できます。
このガイドでは、まだアプリケーションとして正式に定義されていない既存の Google Cloud リソースをグループ化する方法について説明します。
始める前に
リソースをアプリケーションに整理する前に、アプリケーション管理の初期設定を完了する必要があります。このプロセスには通常、次のロールと手順が含まれます。
管理者向け:
- アプリケーションのセットアップ モデルを選択します。管理プロジェクトを構成し、整理する Google Cloud リソースを含むアプリケーション管理境界を定義する必要があります。
- 使用するすべての Google Cloud リソースに必要な API を有効にします。
- ユーザーにアクセス権を付与します。アプリケーション ライフサイクルにおけるユーザーの役割に基づいて、適切な IAM ロールを割り当てます。
デベロッパーとオペレータ向け:
- 初期設定が完了していることを管理者にご確認ください。
- 実行するタスクに必要な IAM ロールがあることを確認します。
- Google Cloud コンソールで管理プロジェクトを開くか、Terraform または Google Cloud CLI の操作に使用する管理プロジェクトのプロジェクト ID を確認します。
アプリケーションを作成する
App Hub でアプリケーションを作成して、既存の Google Cloud リソースの論理コンテナとして機能させます。
コンソール
Google Cloud コンソールで、プロジェクト選択ツールを使用して管理プロジェクトを選択します。
App Hub の [アプリケーション] ページに移動します。
[アプリケーションを作成] をクリックします。
[アプリケーションの詳細] タブで、地理的分布の要件に基づいてアプリケーションに最適なロケーションを選択します。
- [グローバル] を選択して、グローバル アプリケーションを作成します。
- リージョン アプリケーションを作成するには、[リージョン] を選択します。次に、App Hub でサポートされているリージョンに基づいて、アプリケーションの特定のリージョンを選択します。
アプリケーションに最適なロケーションの詳細については、グローバル アプリケーションとリージョン アプリケーションをご覧ください。
アプリケーションの名前を入力します。
この名前は、小文字、数字、ハイフンのみを使用できる一意の識別子です。アプリケーションの作成後にこの名前を変更することはできません。
必要に応じて、アプリケーションの表示名と説明を追加します。
これらは固有識別子ではなく、アプリケーションの作成後に変更できます。
[続行] をクリックします。
[アプリケーション リソース] タブで、インフラストラクチャ リソースを参照し、アプリケーションのサービスとワークロードとして登録するリソースのチェックボックスをオンにします。
一度に選択できるリソースは 10 個までです。
[続行] をクリックします。
[属性とオーナー] タブで、重要度、環境、アプリケーション オーナーなどのアプリケーションの属性を追加できます。
アプリケーションに登録するリソースに同じ属性とオーナーを使用するか、後で定義するかを選択できます。
[作成] をクリックします。
アプリケーションが作成されると、[アプリケーション] ページに、サービスとワークロードとして登録したリソースなどの詳細が表示されます。アプリケーションを作成したら、サービスとワークロードをさらに登録できます。
gcloud
Google Cloud CLI を使用して、ターミナルまたは Cloud Shell からアプリケーションを作成します。
gcloud apphub applications create APPLICATION_NAME \ --project=PROJECT_ID \ --scope-type=LOCATION \ --location=REGION \ --display-name=DISPLAY_NAME \ --criticality-type=CRITICALITY \ --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_EMAILAPPLICATION_NAMEは、アプリケーションの名前に置き換えます。この名前は一意の識別子であり、英小文字、数字、ハイフンのみを使用できます。--criticality-typeなどのオプションのフラグを使用して、アプリケーションの最上位の属性を定義し、検出可能性とガバナンスをサポートします。必須フラグとオプション フラグの場合は、次のように置き換えます。
- 必須:
PROJECT_ID: 管理プロジェクトの ID。 必須:
LOCATION: 地理的分布の要件に基づくアプリケーションのロケーション。次のいずれかの値を使用します。- リージョン アプリケーションの場合は
REGIONAL。 - グローバル アプリケーションの場合は
GLOBAL。
アプリケーションに最適なロケーションの詳細については、グローバル アプリケーションとリージョン アプリケーションをご覧ください。
- リージョン アプリケーションの場合は
必須:
REGION: アプリケーションの特定のリージョン。次の値のいずれかを使用できます。- アプリケーションの
--scope-typeロケーションがREGIONALに設定されている場合は、App Hub でサポートされているリージョン名を指定します。 - アプリケーションの
--scope-typeの場所がGLOBALに設定されている場合は、globalを使用します。
- アプリケーションの
省略可:
DISPLAY_NAME: アプリケーションの表示名。表示名は固有識別子ではないため、アプリケーションの作成後に変更できます。省略可:
CRITICALITY: 運用におけるアプリケーションの重要度。次のいずれかの値を使用します。MISSION_CRITICALHIGHMEDIUMLOW
省略可:
ENVIRONMENT: ソフトウェア ライフサイクルのステージ。次の値のいずれかを使用できます。PRODUCTIONSTAGINGDEVELOPMENTTEST
省略可:
DEV_NAMEとDEV_EMAIL: それぞれデベロッパー オーナーの表示名とメールアドレス。省略可:
OPERATOR_NAMEとOPERATOR_EMAIL: オペレーター オーナーの表示名とメールアドレス。省略可:
BUSINESS_NAMEとBUSINESS_EMAIL: それぞれビジネス オーナーの表示名とメールアドレス。
- 必須:
プロジェクト内のアプリケーションを一覧表示します。
gcloud apphub applications list \ --project=PROJECT_ID \ --location=REGION次のような出力を取得する必要があります。
ID DISPLAY_NAME CREATE_TIME APPLICATION_NAME DISPLAY_NAME 2023-10-31T18:33:48
Terraform
Terraform を使用してアプリケーションを作成するには、google_apphub_application リソースを使用します。このリソースを使用すると、アプリケーションの名前、ロケーション、属性などのプロパティを定義できます。
次の例では、重要度、環境、所有者属性が定義された us-central1 にリージョン アプリケーションを作成します。
resource "google_apphub_application" "example" {
project =