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

テンプレートからカスタマイズしてデプロイする場合は、アプリケーションを作成します。 たとえば、テスト目的でデプロイするアプリケーションを作成できます。本番環境で使用する別のアプリケーションを作成することもできます。

アプリケーションを作成するときは、アプリケーションの用途に基づいて分類するのに役立つ情報を指定します。この情報は、特定のアプリケーションをフィルタして見つけるのに役立ちます。コンポーネントと接続の詳細を構成することもできます。

このドキュメントでは、アプリケーションのライフサイクルを管理する方法について説明します。テンプレートからアプリケーションのドラフトを作成し、コンポーネントを構成し、基盤となる Terraform コードを編集し、新しいリビジョンを作成し、不要になったアプリケーションを削除する方法について説明します。

始める前に

アプリ対応 フォルダまたは管理プロジェクトに対する次のいずれかの ロールを付与するよう管理者に依頼します。

  • App Design Center 管理者(roles/designcenter.admin)。
  • アプリケーション管理者(roles/designcenter.applicationAdmin)。
  • アプリケーション編集者(roles/designcenter.applicationEditor)。

アプリケーションのドラフトを作成する

詳細を指定し、必要に応じてコンポーネント構成をオーバーライドして、テンプレートからアプリケーションのドラフトを作成します。その後、ドラフトをデプロイしてアプリケーションを作成できます。

デザイン キャンバス

  1. ナビゲーション メニューで、次のいずれかを行います。

  2. 使用するテンプレート ID をクリックします。

  3. デザイン キャンバスで、[アプリの設定] をクリックします。次に、[新しいアプリケーションを作成] をクリックします。

  4. [アプリケーション名] 領域で、次の操作を行ってアプリケーションに名前を付け、説明を入力します。

    1. [名前] フィールドに、このスペースの一意の識別子を入力します。たとえば、web-app-staging のように、一意の名前と環境の組み合わせを使用します。これは必須項目です。

      英小文字、数字、ハイフンを含む最大 63 文字を使用できます。名前は小文字で始める必要があります。末尾をハイフンにすることはできません。名前は変更できません。

    2. [Display name] フィールドに、 Google Cloud コンソールに表示する名前を入力します。

    3. [説明] フィールドに、このアプリケーションの目的を入力します。

  5. [プロジェクト ID] フィールドが空のコンポーネントのデフォルト プロジェクトを設定するには、[デプロイ プロジェクト] リストからプロジェクトを選択します。プロジェクトは次の資格要件を満たす必要があります。

    コンポーネントの [プロジェクト ID] フィールドにプロジェクトがすでに指定されている場合、この設定ではなくそのプロジェクトが使用されます。

  6. [リージョン] リストから、コンポーネントがデプロイされるリージョンを選択します。 コンポーネント リージョンは、次に基づいて適用されます。

    • アプリケーション スコープが [グローバル](デフォルト)の場合、リージョンは構成済みのリージョンがないコンポーネントに適用されます。

    • アプリケーション スコープが [リージョン] の場合、リージョンはすべての コンポーネントに適用されます。

  7. [環境] リストから、このアプリケーションをデプロイする環境を選択します。たとえば、TEST でデプロイが想定どおりに機能することを確認できます。

  8. [重要度] リストから、ビジネスへの影響度を選択します。たとえば、LOWHIGH です。

  9. オーナーを指定するには、[オーナー] 領域で [オーナーを追加] をクリックし、次の表示名メールアドレス を入力します。

    • [ビジネス オーナー] 領域に、品質とユーザーの期待に応えるオーナーを入力します。

    • [デベロッパー オーナー] 領域に、開発とコーディングを担当するオーナーを入力します。

    • [オペレーター オーナー] 領域に、アプリケーションの運用を担当するオーナーを入力します。

  10. [スコープ] リストから、次のいずれかを選択します。

    • [グローバル](デフォルト): アプリケーションにグローバル リソースが含まれているか、リソースが複数のリージョンに存在します。

    • [**リージョン**]: すべてのリソースが単一のリージョンに存在します。

    これは必須項目です。詳細については、グローバル アプリケーションとリージョン アプリケーションを比較するをご覧ください。

  11. [アプリケーションを作成] をクリックします。アプリケーションの詳細が表示されます。

gcloud CLI

  1. アプリケーションの作成に使用するテンプレートのアプリケーション テンプレート リビジョン 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 をご覧ください。

  2. latestRevision 出力をコピーします。

  3. テンプレートに基づいてアプリケーションのドラフトを作成します。

      gcloud design-center spaces applications create APPLICATION \
      --project=PROJECT \
      --location=LOCATION \
      --space=SPACE \
      --source-application-template-revision=SOURCE_APPLICATION_TEMPLATE_REVISION \
      --scope-type=SCOPE_TYPE
    

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

    • APPLICATION: 作成するアプリケーションのドラフトのアプリケーション ID。
    • PROJECT: 管理プロジェクト ID。
    • LOCATION: アプリケーション リージョン。
    • SPACE: スペース ID。
    • SOURCE_APPLICATION_TEMPLATE_REVISION: アプリケーション テンプレート URI。例: projects/PROJECT/locations/LOCATION/spaces/SPACE/applicationTemplates/APPLICATION_TEMPLATE/revisions/REVISION
    • SCOPE_TYPE: アプリケーションのスコープ。regional または global のいずれか。アプリケーション スコープが「global, the region is applied to components that don't already have a configured region. If the application scope isregional」の場合、リージョンはすべてのコンポーネントに適用されます。

    詳細については、gcloud design-center spaces applications create をご覧ください。

コンポーネントと接続を構成する

アプリケーションの各コンポーネントについて、リソースが作成されるプロジェクトやデプロイされる場所などの構成の詳細を指定できます。

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

サポートされているリソースごとに必要な詳細を構成する必要があります。

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

デザイン キャンバス

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

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

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

    • リージョン
    • バックアップ構成
    • データベース フラグ
    • IP 構成

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

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

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

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

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

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

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

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

gcloud CLI

  1. アプリケーションを記述してコンポーネント パラメータを表示し、アプリケーションに必要なパラメータを特定します。

     gcloud design-center spaces applications describe APPLICATION \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE \
     --format='yaml(name,componentParameters)'
    

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

    • APPLICATION: アプリケーション ID。
    • PROJECT: 管理プロジェクト ID。
    • LOCATION: アプリケーション リージョン。
    • SPACE: スペース ID。

    詳細については、gcloud design-center spaces applications describe をご覧ください。

  2. 変更するコンポーネントごとに、ホーム ディレクトリにパラメータ値を含む JSON ファイルを作成します。

    たとえば、Cloud Run コンポーネント用に次のファイルを作成できます。

      {
        "component": "projects/PROJECT/locations/us-central1/spaces/SPACE/applicationTemplates/APPLICATION_TEMPLATE/components/COMPONENT",
        "parameters": [
           {
              "key": "service_name",
              "value": "frontend-service"
           },
           {
              "key": "project_id",
              "value": "DEPLOYMENT_PROJECT"
           }
        ]
      }
    
  3. 必要なパラメータを構成するようにアプリケーションを更新します。

     gcloud design-center spaces applications update APPLICATION \
     --project=PROJECT \
     --location=LOCATION \
     --space=SPACE \
     --component-parameters=COMPONENT_FILE_PATH_1
    

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

    • APPLICATION: アプリケーション ID。
    • PROJECT: 管理プロジェクト ID。
    • LOCATION: アプリケーション リージョン。
    • SPACE: スペース ID。
    • COMPONENT_FILE_PATH_1: コンポーネント パラメータを含む JSON ファイル。JSON ファイルを追加するごとに、別の --component-parameter 引数と値を追加します。

    詳細については、gcloud design-center spaces applications update をご覧ください。

デプロイの手順については、アプリケーションをデプロイするをご覧ください。

Terraform コードを編集する

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

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

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

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

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

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

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

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

    編集内容は自動的に検証され、無効な場合はエラーが表示されます。

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

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

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

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

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

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

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

アプリケーションのリビジョンを作成する

アプリケーションのリビジョンを作成して、詳細やコンポーネントを変更します。App Design Center の外部でアプリケーション コンポーネントを変更した場合、再デプロイしても変更は保持されません。

アプリケーションのリビジョンを作成する手順は次のとおりです。

デザイン キャンバス

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

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

  2. 表で、リビジョンするアプリケーション名 をクリックします。

  3. アプリケーションの詳細を変更する手順は次のとおりです。

  4. [編集] をクリックして、詳細を変更します。

  5. [保存] をクリックして、変更を保存します。

  6. このアプリケーションのコンポーネントを変更する手順は次のとおりです。

    1. デザイン キャンバスでコンポーネントをクリックし、[構成] 領域の詳細を編集します。

    2. [保存] をクリックして、変更を保存します。

gcloud CLI

コンポーネントと接続を構成するをご覧ください。

デプロイの手順については、アプリケーションをデプロイするをご覧ください。

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

アプリケーションが不要になった場合は、削除できます。たとえば、TEST 環境でテンプレートを確認するためにアプリケーションをデプロイし、その後アプリケーションを削除できます。

次のアプリケーションを削除できます。

  • デプロイされていないアプリケーション。[アプリケーション] ページの [ステータス] は [ドラフト] と表示されます。
  • TESTDEVELOPMENTSTAGING 環境 にデプロイされたアプリケーション。

アプリケーションを削除すると、次のようになります。

  • App Design Center からアプリケーションの詳細が削除されます。
  • 基盤となる App Hub アプリケーションが削除されます。
  • デプロイした場合は、リソースが削除されます。

アプリケーションを削除する手順は次のとおりです。

デザイン キャンバス

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

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

  2. 表で、アプリケーション名 をクリックします。

  3. [アクション] をクリックして、[アプリケーションを削除] を選択します。

  4. [削除] フィールドに、アプリケーション名を入力します。

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

gcloud CLI

アプリケーションを削除します。

    gcloud design-center spaces applications delete APPLICATION \
    --project=PROJECT \
    --location=LOCATION \
    --space=SPACE

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

  • APPLICATION: 削除するアプリケーションのアプリケーション ID。
  • PROJECT: 管理プロジェクト ID。
  • LOCATION: アプリケーション リージョン。
  • SPACE: スペース ID。

    詳細については、gcloud design-center spaces applications delete をご覧ください。

次のステップ

次のいずれかを使用してアプリケーションをデプロイします。