App Design Center でアプリケーション ドラフトをデプロイすると、 Google Cloud リソースをプロビジョニングし、App Hub にアプリケーションを自動的に登録できます。デプロイする前に、計画された Terraform の変更をプレビューし、組織のポリシーに照らして設計を評価し、必要なGoogle Cloud API を有効にできます。デプロイ後は、デプロイの問題を調査し、テレメトリー データを使用してリソースのパフォーマンスを分析し、新しいテンプレート リビジョンをアプリケーションに適用できます。
始める前に
このドキュメントのタスクを実行するには、次の表に示すように、アプリ対応フォルダまたは管理プロジェクトに必要なロールを付与するよう管理者に依頼してください。
| タスク | 必要なロール |
|---|---|
| アプリケーションをデプロイしてテンプレート リビジョンを適用する | アプリケーション管理者(roles/designcenter.applicationAdmin)、またはアプリケーション オペレーター( roles/designcenter.applicationOperator) |
| デプロイ時にサービス アカウントを自動的に作成する | プロジェクト IAM 管理者(roles/resourcemanager.projectIamAdmin) |
既存のサービス アカウントを使用してアプリケーションをデプロイするには、サービス アカウントにロールを付与するをご覧ください。
ロールの詳細については、IAM を使用したアクセス制御をご覧ください。
アプリケーションのデプロイ
サービス アカウント オプションを選択して、アプリケーションをデプロイします。アプリケーションをデプロイすると、 Google Cloud リソースが作成され、それらのリソースに関連する料金が発生し始めます。
デザイン キャンバス
ナビゲーション メニューで [アプリケーション] をクリックします。
表で [アプリケーション名] をクリックします。
[アプリケーションの詳細] ページで詳細を確認し、[編集] をクリックして変更を加えます。
[デプロイ] をクリックします。
アプリケーションをデプロイするには、次のいずれかのサービス アカウントを選択します。
サービス アカウントを選択する: [サービス アカウント] フィールドに、既存のサービス アカウントの名前を入力します。サービス アカウントを構成するには、サービス アカウントにロールを付与するをご覧ください。
新しいサービス アカウントを作成する: プロジェクト IAM 管理者(
roles/resourcemanager.projectIamAdmin)ロールが必要です。このロールは、必要なデプロイロールをサービス アカウントに割り当てるために使用されます。
[続行] をクリックします。
Terraform がインフラストラクチャに加える予定の変更をプレビューする手順は次のとおりです。
[プレビュー] をクリックします。
変更内容を確認し、[コピーして閉じる] をクリックします。プレビューがクリップボードにコピーされます。
プレビューを保存するには、任意のドキュメントに貼り付けて保存します。
[API を確認] 領域で、アプリケーションに必要な API のリストを確認します。API はデプロイ時に自動的に有効になります。
[デプロイ] をクリックします。デプロイが完了すると、アプリケーションの詳細とデプロイ ステータスが表示されます。
デプロイに問題がある場合は、次の操作を行います。
[アプリケーションの詳細] パネルで、[デプロイ] をクリックします。
エラー メッセージを確認します。
[ログを表示] をクリックして、ビルドの詳細情報を表示します。
デプロイエラーを修正するための提案を表示するには、[デプロイのトラブルシューティング](プレビュー)をクリックします。
詳細については、デプロイに関する問題のトラブルシューティングと修正をご覧ください。
デプロイされたアプリケーションを管理するには、アプリケーションの詳細を表示するをご覧ください。
gcloud CLI
デプロイする前に、アプリケーションをプレビューして Terraform コードを表示します。このオペレーションが完了するまでに数分かかることがあります。次のいずれかを行います。
サービス アカウントを自動的に作成するには、次のコマンドを使用します。
gcloud design-center spaces applications preview APPLICATION \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --create-sa \ --service-account=SERVICE_ACCOUNT独自のサービス アカウントを使用するには、次のコマンドを使用します。
gcloud design-center spaces applications preview APPLICATION \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --service-account=SERVICE_ACCOUNT
次のように置き換えます。
APPLICATION: アプリケーション ID。PROJECT: 実際の管理プロジェクト ID。LOCATION: アプリケーション リージョン。SPACE: スペース ID。SERVICE_ACCOUNT: 次のいずれかを行います。- 新しいサービス アカウントを作成するには、サービス アカウントの名前を指定します。
- 独自のサービス アカウントを使用するには、完全なリソース名を
projects/PROJECT/serviceAccounts/EMAIL_ADDRESSの形式で指定します。
詳細については、gcloud design-center spaces applications preview をご覧ください。
アプリケーションを非同期でデプロイし、完全なオペレーション名をコピーします。次のいずれかを行います。
サービス アカウントを自動的に作成するには、次のコマンドを使用します。
gcloud design-center spaces applications deploy APPLICATION \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --create-sa \ --service-account=SERVICE_ACCOUNT \ --async独自のサービス アカウントを使用するには、次のコマンドを使用します。
gcloud design-center spaces applications deploy APPLICATION \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --service-account=SERVICE_ACCOUNT \ --async
次のように置き換えます。
APPLICATION: アプリケーション ID。PROJECT: 実際の管理プロジェクト ID。LOCATION: アプリケーション リージョン。SPACE: スペース ID。SERVICE_ACCOUNT: 次のいずれかを行います。- 新しいサービス アカウントを作成するには、サービス アカウントの名前を指定します。
- 独自のサービス アカウントを使用するには、完全なリソース名を
projects/PROJECT/serviceAccounts/EMAIL_ADDRESSの形式で指定します。
詳細については、gcloud design-center spaces applications deploy をご覧ください。
デプロイが完了するまでに数分かかります。デプロイ ステータスを追跡します。
gcloud design-center operations describe OPERATION\ --project=PROJECT \ --location=LOCATION次のように置き換えます。
OPERATION:deployコマンド出力からコピーしたオペレーションの完全な名前(projects/PROJECT/locations/LOCATION/operations/operation-<var>OPERATION_ID</var>形式)。PROJECT: 実際の管理プロジェクト ID。LOCATION: アプリケーション リージョン。
詳細については、gcloud design-center operations describe をご覧ください。
デプロイに関する問題のトラブルシューティングと解決
アプリケーションのデプロイが失敗した場合は、エラーの概要の表示、詳細な分析の取得、解決手順の特定、一部の問題の自動修正を行うことができます。
エラーのトラブルシューティングと修正を行うには、次の操作を行います。
[アプリケーションの詳細] パネルで、[デプロイ] をクリックします。
エラーを分析して修正を提案するには、[デプロイのトラブルシューティング] をクリックします。
[トラブルシューティングの詳細] パネルには、ドキュメントの提案、構成の変更、デプロイエラーの解決に役立つその他の情報が表示されます。
デプロイエラーと推奨事項を確認します。
分析の結果、コンポーネント構成の推奨事項が生成された場合は、推奨される変更を確認し、[アプリケーションを更新] をクリックして変更を適用します。
分析の結果、他の推奨事項が生成された場合、エラーを解決するために実行できる gcloud CLI コマンドが表示されます。Cloud Shell で gcloud CLI コマンドを実行するには、[コマンドを実行] をクリックします。
アプリケーションの詳細を表示する
アプリケーションのデプロイが完了すると、関連情報を確認できます。たとえば、次のような情報を確認できます。
- 最終更新時刻、リビジョン日、リージョンなどの詳細。
- サービス URI などの出力。
- デプロイ ステータス、エラー情報、ログへのリンク。
アプリケーションの詳細を表示する手順は次のとおりです。
デザイン キャンバス
ナビゲーション メニューで [アプリケーション] をクリックします。
表で、[アプリケーション名] をクリックします。[アプリケーションの詳細] パネルには、次の情報が表示されます。
App Hub でアプリを表示: App Hub でアプリケーションを調査します。デプロイされたリソースを表示し、テレメトリー データを調べて、問題の診断とパフォーマンスの分析を行うことができます。詳細については、App Hub アプリケーションをモニタリングするをご覧ください。
アプリの詳細: 最終更新日、ソース テンプレート、リージョン、サービス アカウントなどの情報を表示します。
出力: サービス URI を特定します。これは、アプリケーションのフロントエンドまたはバックエンドを操作するために使用できます。
デプロイ: デプロイ ステータス、デプロイエラー、ログへのリンクを調べて、エラーをトラブルシューティングします。
gcloud CLI
gcloud design-center spaces applications describe APPLICATION \
--project=PROJECT \
--location=LOCATION \
--space=SPACE
次のように置き換えます。
APPLICATION: アプリケーション ID。PROJECT: 実際の管理プロジェクト ID。LOCATION: アプリケーション リージョン。SPACE: スペース ID。
詳細については、gcloud design-center spaces applications describe をご覧ください。
デプロイされたアプリケーションを変更する
デプロイされたアプリケーションを変更する場合は、次のいずれかを行って、アプリケーションを再デプロイするときに変更が保持されるようにします。
- テンプレートを修正してから、テンプレートの修正を適用します。
- アプリケーションを修正する
テンプレート リビジョンを適用する
アプリケーションが以前に App Design Center を使用してデプロイされ、管理者がテンプレート リビジョンを共有している場合は、テンプレートの変更をアプリケーションに適用できます。アプリケーションを更新すると、アプリケーション リビジョンが作成されます。変更されたコンポーネント、または改訂されたテンプレートに追加されたコンポーネントを構成できます。
アプリケーションで使用可能なテンプレート リビジョンは、Cloud Hub で確認できます。詳細については、デプロイを表示するをご覧ください。
テンプレートのリビジョンをアプリケーションに適用する手順は次のとおりです。
デザイン キャンバス
ナビゲーション メニューで [テンプレート] をクリックします。
適用するリビジョンを含むテンプレート ID をクリックします。
[アプリを構成する] リストから、更新するアプリケーションを選択します。
アプリケーションの詳細を編集し、[保存] をクリックします。
デザイン キャンバスで各コンポーネントをクリックし、コンポーネントの構成を変更します。
[デプロイ] をクリックします。デプロイ手順については、アプリケーションをデプロイするをご覧ください。
gcloud CLI
最新リビジョンのアプリケーション テンプレート リビジョン URI を特定します。
gcloud design-center spaces application-templates describe APPLICATION_TEMPLATE \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --format='yaml(name,latestRevision)'次のように置き換えます。
APPLICATION_TEMPLATE: アプリケーションのベースとなるアプリケーション テンプレート ID。PROJECT: 実際の管理プロジェクト ID。LOCATION: アプリケーション テンプレートのリージョン。SPACE: スペース ID。
詳細については、gcloud design-center spaces application-templates describe をご覧ください。
latestRevisionの出力をコピーします。アプリケーション テンプレート リビジョンを使用するようにアプリケーションを更新します。
gcloud design-center spaces applications update APPLICATION \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --source-application-template-revision=SOURCE_APPLICATION_TEMPLATE_REVISION次のように置き換えます。
APPLICATION: アプリケーション ID。PROJECT: 実際の管理プロジェクト ID。LOCATION: アプリケーション リージョン。SPACE: スペース ID。SOURCE_APPLICATION_TEMPLATE_REVISION: アプリケーション テンプレートの URI。例:projects/PROJECT/locations/LOCATION/spaces/SPACE/applicationTemplates/APPLICATION_TEMPLATE/revisions/REVISION
詳細については、gcloud design-center spaces applications update をご覧ください。
アプリケーションで新しいコンポーネントまたは更新されたコンポーネントを構成するには、コンポーネントと接続を構成するをご覧ください。
アプリケーションをデプロイするときに、
--replaceフラグを使用します。デプロイ手順については、アプリケーションをデプロイするをご覧ください。
次のステップ
- アプリケーションの健全性とパフォーマンスをモニタリングして、ワークロードを追跡する。
- Google テンプレートを基盤として構築することで、事前構成済みのアーキテクチャを使い始める。