Deployment Manager のデプロイ用の VM イメージを構成する

VM プロダクト用に Deployment Manager を使用してデプロイをサポートすることを選択した場合は、次の手順を完了する必要があります。

デプロイ パッケージの作成方法を決定する

Producer Portal のガイド付き構成オプションを使用して、Google Cloud コンソールで直接デプロイ パッケージを作成することをおすすめします。

ガイド付き構成では、基本的なファイアウォール ルールを使用した単一 VM デプロイなどの簡単な VM プロダクトがサポートされますが、複数の VM やカスタム構成フィールドを使用したデプロイなど、複雑な機能はサポートされません。ガイド付き構成でサポートされていない機能が必要な場合は、オープンソース mpdev ツールを使用して、デプロイ パッケージを作成するか、既存のパッケージに新しい機能を追加してカスタマイズします。

Google Cloud コンソールや、Cloud Marketplace で Deployment Manager Autogen ツールを使用せずに作成したカスタム デプロイ テンプレートの使用はおすすめしません。デプロイ パッケージは Google Cloud コンソールで直接作成することをおすすめします。

ガイド付き構成と手動構成を切り替える

Producer Portal のガイド付き構成オプションを使用していて、後でデプロイ パッケージを手動構成に切り替える場合は、[手動構成に移動] をクリックします。

切り替え時に、ガイド付き構成で作成した デプロイ パッケージの Autogen 仕様をダウンロードし、手動構成のベースとして使用できます。

ガイド付き構成を行う

Google Cloud コンソールを使用してシンプルなデプロイ パッケージの構成を完了し、送信するには、次の手順を実施します。

  1. Producer Portal で [デプロイ パッケージ] セクションに移動します。

  2. [Deployment Manager の構成] で、[Cloud Storage バケット] というラベルの付いた入力フィールドの横にある [参照] をクリックします。

    Cloud Storage バケットをすでに作成している場合は、ここで選択します。

    Cloud Storage バケットがない場合は、[新しいバケットを作成] というラベルのアイコンをクリックします。新しいバケットを作成するときは、次の操作を行います。

    • バケットの名前を選択します。
    • バケットでデータの保存先リージョンを指定します。
    • データのストレージ クラスを指定します。
    • バケットのデータに対する Identity and Access Management(IAM)権限に適用する粒度を決定します。
    • 暗号化やデータ保持ポリシーなど、オプションの詳細設定を構成します。
  3. Cloud Storage バケットでオブジェクトのバージョニングを有効にしていることを確認します。

  4. バケット設定を保存してデプロイ パッケージの構成を続けるには、[構成] をクリックします。

  5. [マシンタイプの選択] で、VM プロダクトのデフォルト ゾーン最小マシンタイプデフォルトのマシンタイプ、およびブートディスクのサイズとタイプを指定する必要があります。

  6. [オペレーティング システムの指定] で、VM イメージが使用する OS の名前とバージョン、および VM イメージのバージョン番号を指定する必要があります。

  7. (省略可能)[VM アクセスの設定] で、ユーザーがデプロイ後の VM へのアクセスに使用できるようにするために、サイトと管理者 URL、およびユーザー名とパスワードを指定できます。

  8. (省略可能)[ネットワークの構成] で IP 転送の設定を指定し、ファイアウォール ルールを構成します。

  9. (省略可能)[次のステップの定義] で、プロダクトのユーザーにプロダクトの使用を開始するための手順を提供できます。これらの手順は、プロダクトをデプロイした後に表示されます。

  10. 前の手順を完了したら、[生成] をクリックしてデプロイ パッケージを作成します。

    後からさらにデプロイ パッケージに変更を加える必要がある場合は、[編集] をクリックして変更を行い、[生成] をクリックして、これらの変更が適用されたデプロイ パッケージを再生成します。

    手動構成に切り替える場合は、[ダウンロード] をクリックして、ガイド付き構成で作成したデプロイ パッケージの Autogen 仕様をダウンロードし、手動構成のベースとして使用します。

  11. Producer Portal で審査のためにデプロイ パッケージを送信します。デプロイ パッケージを送信してから Google がパッケージを審査し、承認するまでには最大で 2 週間かかります。

手動構成を行う

このセクションでは、mpdev ツールを使用してデプロイ パッケージを作成し、パッケージを送信して審査を受ける方法について説明します。

mpdev ツールは、Deployment Manager の Autogen を使用して、デプロイ パッケージ用の Deployment Manager テンプレートを生成します。このツールは、VM プロダクトの構成入力を含む Autogen の仕様に基づいて、デプロイ パッケージを生成します。

デプロイ パッケージを生成して送信する大まかな流れは次のとおりです。

  1. デプロイ パッケージへのアクセスを保存および管理するための Cloud Storage バケットの作成と構成を行います。
  2. VM プロダクトのイメージの詳細とデプロイ要件を含む Autogen 仕様を作成します。
  3. Autogen 仕様に基づいてデプロイ パッケージを生成し、パッケージを Cloud Storage バケットにアップロードします。
  4. Producer Portal で審査のためにデプロイ パッケージを送信します。デプロイ パッケージを送信してから Google がパッケージを審査し、承認するまでには最大で 2 週間かかります。

以下のセクションでは、デプロイ パッケージを生成して送信する手順を説明します。

始める前に

mpdev を使用してデプロイ パッケージを作成する場合は、次の手順を行います。

  1. marketplace-tools リポジトリの手順に沿って、mpdev ツールをインストールします。

  2. Google Cloud SDK をダウンロードします。

Cloud Storage バケットを作成する

Producer Portal で使用するのと同じパブリックの Google Cloud プロジェクトで Cloud Storage バケットを作成し、次のようにバケットを構成する必要があります。

Cloud Storage バケットを作成して構成するには、次の gcloud storage コマンドを実行します。

  BUCKET_NAME=YOUR_BUCKET_NAME
  gcloud storage buckets create gs://$BUCKET_NAME
  gcloud storage buckets update gs://$BUCKET_NAME --versioning
  gcloud storage buckets add-iam-policy-binding gs://$BUCKET_NAME --member=group:cloud-commerce-marketplace-onboarding@twosync-src.google.com --role=roles/storage.objectViewer
  

ここで、YOUR_BUCKET_NAME は新しいバケットに付ける名前で、命名要件の対象となります。

Autogen 仕様を作成する

Autogen 仕様を作成するには、marketplace-tools リポジトリで single VM example を初期 Autogen 仕様として使用し、VM の構成の詳細を使用して仕様をカスタマイズすることをおすすめします。

より複雑なユースケースでは、一部の統合開発環境(IDE)で予測入力を設定して、configurations.yaml ファイルの編集と検証を行えます。

single VM example から Autogen の仕様を作成するには:

  1. 例の事前構成された Autogen 仕様をローカル ディレクトリにチェックアウトします。

    PACKAGE=YOUR_PACKAGE_NAME
    mpdev pkg get https://github.com/GoogleCloudPlatform/marketplace-tools.git/examples/deployment-manager/autogen/singlevm $PACKAGE
    

    ここで、YOUR_PACKAGE_NAME はローカル ディレクトリに指定する名前です。例: my-deployment-package

  2. VM の構成の詳細で仕様を更新するには、次の情報で configurations.yaml ファイルを変更します。

    • VM イメージの名前。
    • VM イメージをホストするパブリック Google Cloud プロジェクトの ID。これは Producer Portal で使用するのと同じプロジェクトです。

    configurations.yaml ファイル内の VM イメージと Google Cloud プロジェクトのフィールドを更新する手順については、single VM exampleREADME.md ファイルをご覧ください。

  3. プロダクトに必要な場合は、さらに passwordsdeployInputpostDeploy などのフィールドをカスタマイズします。これらのフィールドは、configurations.yaml ファイルの DeploymentSpec の下にあります。カスタマイズ可能なフィールドの詳細については、Autogen のリファレンス ドキュメントをご覧ください。

デプロイ パッケージを生成する

Autogen 仕様を作成してカスタマイズしたら、その仕様を使用して、デプロイ パッケージ用の Deployment Manager テンプレート ファイルを生成します。パッケージを保存するには、パッケージを Cloud Storage バケットにアップロードします。

デプロイ パッケージを生成してアップロードするには:

  1. デプロイ パッケージの出力場所を Cloud Storage バケットに設定します。

    mpdev cfg set zipPath gs://BUCKET_NAME/OBJECT
    

    ここで、BUCKET_NAME はパッケージ用に作成したバケットの名前、OBJECT命名ガイドラインに従って、Cloud Storage オブジェクト用に指定した名前です。

  2. デプロイ パッケージを生成します。

    mpdev apply -f $PACKAGE/configurations.yaml
    

生成されたデプロイ パッケージが zip 圧縮され、バケットにアップロードされます。

テンプレートが正しく構成されていることを確認するために、次のコマンドを実行してデプロイを作成します。

  TMPDIR=$(mktemp -d)
  unzip $PACKAGE/template.zip -d $TMPDIR
  gcloud deployment-manager deployments create $PACKAGE --config $TMPDIR/test_config.yaml
  

Producer Portal で審査のためにデプロイ パッケージを送信します。

デプロイ パッケージを作成して構成した後、Cloud Marketplace チームがパッケージを審査して承認できるように、パッケージを Producer Portal に送信する必要があります。

  1. Producer Portal で [デプロイ パッケージ] セクションに移動します。

  2. [Cloud Storage オブジェクトのロケーションを指定する] で、先ほどアップロードしたデプロイ パッケージ オブジェクトを選択します。

  3. [検証] をクリックします。検証プロセスには最大 2 時間かかります。完了後に画面を閉じることもできます。

  4. Producer Portal がデプロイ パッケージを正常に読み取ったら、[デプロイのプレビュー] をクリックして、VM 構成の表示方法を確認できます。

  5. 検証が正常に完了したら、デプロイ パッケージを送信してレビューできるようにするために、[送信] をクリックします。デプロイ パッケージを送信してから Google がパッケージを審査し、承認するまでには最大で 2 週間かかります。