アプリケーション テンプレートを設計する

管理者は、各開発チームが希望するアーキテクチャを使用できるように、アプリケーション テンプレートを作成します。これにより、デベロッパーがアプリケーションのデプロイで使用するリソースと構成を管理できます。

アプリ テンプレートを作成すると、スペース内の他のユーザーがアクセスできるようになります。テンプレートをカタログに追加して、他のスペースと共有することもできます。

デベロッパーは、このテンプレートを使用してアプリケーションを作成してデプロイできます。デベロッパーは、アプリケーションを作成する際に、テンプレートから各コンポーネントを構成できますが、コンポーネントを追加または削除することはできません。このテンプレートは Terraform コードを生成します。開発者は、App Design Center からこのコードをダウンロードまたはデプロイできます。

このドキュメントでは、App Design Center を使用してアプリケーション テンプレートを設計、構成、共有する方法について説明します。

始める前に

アプリ対応フォルダまたは管理プロジェクトに、次のいずれかのロールが必要です。

  • App Design Center 管理者(roles/designcenter.admin
  • App Design Center ユーザー(roles/designcenter.user

アプリケーション テンプレートを作成する

アプリケーション テンプレートを作成して、アーキテクチャ設計を開発チームと共有します。テンプレートのデザインには、次のコンポーネントを追加できます。

  • アセット: 他のリソースの制御に役立つ上位レベルのリソース。たとえば、サービス アカウントなどです。

  • サービス: ネットワーク経由で使用されるネットワーク インターフェースまたは API インターフェース。たとえば、Cloud Storage や Vertex AI などがあります。

  • ワークロード: ビジネス機能を実行するバイナリ デプロイ。例としては、Cloud Run や Compute Engine などがあります。

次のコンポーネントから選択できます。

テンプレートを設計すると、App Design Center は設計と構成の詳細を反映する Terraform コードを生成します。

テンプレートの詳細を指定する

テンプレートの詳細を指定すると、テンプレートを分類したり、デベロッパーがテンプレートを使用するかどうかを判断したりするのに役立ちます。

テンプレートの詳細を入力する手順は次のとおりです。

  1. ナビゲーション メニューで [テンプレート] をクリックします。

    [テンプレート] に移動

  2. [テンプレートを作成] をクリックします。

  3. [テンプレート ID] フィールドに、テンプレートの一意の識別子を入力します。このフィールドは必須です。

  4. [テンプレート名] フィールドに、 Google Cloud コンソールに表示する人間が読める識別子を入力します。

    名前を指定しない場合、テンプレート ID がこのフィールドにコピーされます。

  5. [説明] フィールドに、アプリの目的の簡単な説明を入力します。

  6. [テンプレートを作成] をクリックします。デザイン キャンバスが表示されます。

テンプレートを設計する

デザイン キャンバスでコンポーネントを追加して接続し、テンプレートをデザインします。次の例には、3 つの接続コンポーネントが含まれています。

デザイン キャンバスに表示された 3 層ウェブ アプリケーション。このアプリケーションには、フロントエンド、バックエンド、データベースのコンポーネントが含まれています。

次の開始点にコンポーネントを追加して、テンプレートを設計できます。

テンプレートを設計する手順は次のとおりです。

  1. デザイン キャンバスで、[デザイン] が選択されていることを確認します。

  2. 始めるには、次のいずれかの操作を行います。

    • 最初から作成するには、[コンポーネント] 領域でコンポーネントをクリックして、キャンバス領域に追加します。

    • Google 提供のテンプレートから始めるには、テンプレート名をクリックします。

    • 自然言語チャットを使用してテンプレートを生成するには、[Gemini を使用したカスタム アプリケーション] をクリックします。

  3. コンポーネント間の通信チャネルを作成するには、次のいずれかを行います。

    • キャンバス上の 2 つのコンポーネントを接続するには、コンポーネントの青い点から別のコンポーネントの青い点までドラッグします。

    • 既存のコンポーネントに追加するには、 [追加] をクリックして、追加するコンポーネントを選択します。

    接続の詳細については、各サポートされているリソースの構成ドキュメントをご覧ください。

  4. コンポーネントまたは接続を削除する手順は次のとおりです。

    1. キャンバスで、コンポーネントまたは接続をクリックします。

    2. [構成] 領域で、[削除] をクリックします。

    3. フィールドに「delete」と入力します。

    4. [削除] をクリックします。

コンポーネントのデフォルト値を構成する

キャンバスに追加するコンポーネントごとに、リソースが作成されるプロジェクトやデプロイされるロケーションなどの構成の詳細を指定できます。構成の詳細を指定すると、Application Design Center はそれらをアプリケーションのデフォルト値として使用します。

デフォルトの構成が要件を満たしていない場合は、接続の詳細を変更することもできます。たとえば、環境変数キー名を変更したり、接続ポートを変更したり、サービス アカウントに追加のロールを追加したりできます。

デベロッパーは、アプリケーションをデプロイする前に、テンプレートで構成したデフォルト値を表示して変更できます。デベロッパーは、サポートされているリソースごとに必要な詳細情報を構成する必要があります。

コンポーネントと接続を構成する手順は次のとおりです。

  1. デザイン キャンバスで、コンポーネントをクリックします。

  2. [構成] 領域の [プロジェクト ID] リストで、リソースをデプロイするプロジェクトを選択します。次の条件を満たすプロジェクトを選択します。

  3. リソースの追加設定を構成します。たとえば、Cloud SQL の場合は次のように構成できます。

    • 地域
    • バックアップ構成
    • データベース フラグ
    • IP 構成

    各コンポーネントの構成ドキュメントへのリンクについては、サポートされているリソースをご覧ください。

  4. デザイン キャンバスでコンポーネントを接続すると、デフォルトの構成値を使用して接続が作成されます。接続の詳細を追加または変更する手順は次のとおりです。

    1. デザイン キャンバスで、2 つのコンポーネント間の接続をクリックします。[接続] パネルが開き、接続パラメータが表示されます。

    2. 次のいずれかを行います。

      • 既存の接続パラメータを変更するには、[編集] をクリックします。

      • 新しい接続パラメータを追加するには、[パラメータを追加] をクリックします。

    3. [キー] フィールドと [] フィールドを更新します。たとえば、次の詳細を変更できます。

      • アプリケーションの要件に沿った環境変数キー名。
      • 接続ポートの値。
      • サービス アカウントに追加されたロール。
  5. [保存] をクリックします。

Terraform コードを編集する

アプリケーション テンプレートを設計すると、Application Design Center は設計と構成の詳細を反映する Terraform コードを生成します。Terraform を編集して、コンポーネント構成の詳細を指定できます。

システムは次の Terraform ファイルを生成します。

  • main.tf: テンプレート内の各コンポーネントのモジュールを含むインフラストラクチャ コード。
  • outputs.tf: デプロイされたインフラストラクチャ コンポーネントに関する情報を公開します。
  • variables.tf: main.tf ファイルで使用される変数の名前、型、説明を宣言します。
  • input.tfvars: main.tf ファイルで使用される変数の値を定義します。
  • providers.tf: Terraform が Google Cloud API とリソースを操作するのに役立つラベルを定義します。

背景情報については、Google Cloudでの Terraform の概要をご覧ください。

Terraform コードを編集する手順は次のとおりです。

  1. デザイン キャンバスで、[コード] をクリックします。生成された Terraform ファイルが表示されます。

  2. [main.tf] をクリックします。システムに、各コンポーネントの Terraform モジュールが表示されます。

  3. 構成の詳細を編集します。詳細については、各サポートされているリソースの構成ドキュメントをご覧ください。

    システムは編集内容を自動的に検証し、無効な編集内容がある場合はエラーを表示します。

  4. 編集内容をハイライト表示して比較する手順は次のとおりです。

    1. [差分を表示] をクリックします。

    2. 変更を元に戻すには、余白で [変更を元に戻すにはここをクリック] をクリックします。

    3. [差分を表示] をクリックして、比較ビューを閉じます。

  5. 編集内容を保存するには、[コードの変更を保存] をクリックします。

  6. 変更を確認する手順は次のとおりです。

    1. [デザイン] をクリックします。
    2. コンポーネントをクリックして、構成の詳細を確認します。

テンプレートを削除する

不要になったテンプレートは削除できます。

  1. デザイン キャンバスで、 [アクション] をクリックします。
  2. [削除] をクリックします。

テンプレートを確認する

テンプレートをデベロッパーと共有する前に、テンプレートが意図したとおりに機能することを確認してください。テンプレートを確認する手順は次のとおりです。

  1. 次の設定でアプリケーションを作成します。
    1. [環境] リストで [TEST] を選択します。
    2. [重要度] リストで [] を選択します。
  2. アプリケーションをデプロイします。デプロイの手順については、コンソールからアプリケーションをデプロイするをご覧ください。
  3. インフラストラクチャをテストして、要件を満たしていることを確認します。
  4. 繰り返し費用が発生しないようにするには、テスト デプロイを削除します。

テンプレートをカタログに共有する

テンプレートを検証したら、テンプレートをカタログに公開できます。このテンプレートは、カタログが共有されているスペースにアクセスできるアプリケーション デベロッパーが使用できます。

  1. デザイン キャンバスで、[カタログに追加] をクリックします。
  2. カタログが共有されているスペースを管理するには、カタログを管理するをご覧ください。

テンプレートを修正して再共有する

アプリケーションの経験を積み、ビジネスニーズが進化するにつれて、アプリケーション テンプレートの更新が必要になることがあります。たとえば、キャッシュ保存用の Memorystore サービスを追加して、バックエンド サービスのパフォーマンスを向上させる場合があります。

テンプレートを変更すると、テンプレート リビジョンが作成されます。既存のアプリケーションに変更を適用するには、デベロッパーがリビジョンを使用してアプリケーションをデプロイする必要があります。

App Design Center では、テンプレート リビジョンがカタログに自動的に公開されることはありません。最新のリビジョンを共有するには、テンプレートをカタログに再度公開します。

新しいリビジョンを作成する手順は次のとおりです。

  1. ナビゲーション メニューで [テンプレート] をクリックします。

    [テンプレート] に移動

  2. 修正するアプリケーション テンプレートを選択します。キャンバスが開きます。

  3. 新しい要件に合わせてテンプレートを変更します。たとえば、新しいコンポーネントを追加して構成します。

  4. 最新のリビジョンを他のスペースと共有するには、関連するカタログにテンプレートを再度追加します。

次のステップ