このドキュメントでは、H4D マシンタイプを使用するマネージド インスタンス グループ(MIG)を作成する方法について説明します。
MIG を作成すると、複数の仮想マシン(VM)を単一のエンティティとして管理できます。MIG 内の各 VM はインスタンス テンプレートに基づいています。MIG はグループ内の VM を自動的に管理することで、高可用性とスケーラビリティを実現します。MIG の詳細については、マネージド インスタンス グループをご覧ください。
HPC VM と HPC クラスタの作成オプションについては、HPC クラスタの作成の概要をご覧ください。
MIG を作成するが、H4D マシンタイプを使用していない場合や、インスタンスの高密度デプロイを作成する必要がない場合は、マネージド インスタンス グループ(MIG)を作成するための基本的なシナリオをご覧ください。
始める前に
使用オプションを選択する: コンピューティング インスタンスを一括で作成し、クラスタ管理機能を強化するには、カレンダー モードの将来の予約または Spot VM を選択します。
Spot VM を使用する場合、VM がコンパクトにコロケーションされないことがあります。また、Spot VM は必要に応じてプリエンプトされる可能性があり、VM グループのホスト メンテナンス イベントの管理の対象外です。
容量を取得する: 容量を取得するプロセスは、消費オプションごとに異なります。
詳細については、使用オプションを選択して容量を取得するをご覧ください。
-
まだ設定していない場合は、認証を設定します。認証では、 Google Cloud サービスと API にアクセスするための ID が確認されます。ローカル開発環境からコードまたはサンプルを実行するには、次のいずれかのオプションを選択して Compute Engine に対する認証を行います。
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Google Cloud CLI をインストールします。 インストール後、次のコマンドを実行して Google Cloud CLI を初期化します。
gcloud init外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
- Set a default region and zone.
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
Google Cloud CLI をインストールします。 インストール後、次のコマンドを実行して Google Cloud CLI を初期化します。
gcloud init外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
詳細については、 Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。
概要
H4D マシンタイプを使用して MIG を作成する手順は次のとおりです。
制限事項
H4D VM を使用して MIG を作成する場合、次の制限が適用されます。
MIG に使用するインスタンス テンプレートで Flex Start プロビジョニング モデルが指定されている場合、次の制限が適用されます。
VM を MIG に追加できるのは、サイズ変更リクエストを使用する場合のみです。
ワークロード ポリシーを MIG に適用することはできません。
MIG で修復をオフにする必要があります。
リージョン MIG を作成すると、MIG は VPC ネットワークのプロファイルを含むゾーンにのみ VM を作成できます。
MIG でインスタンスの柔軟性を構成することはできません。
ワークロード ポリシーを MIG に適用すると、グループに VM が含まれている場合、MIG でポリシーを変更できません。VM がある MIG のポリシーを変更するには、まず MIG のサイズを 0 に変更する必要があります。
プレースメント ポリシーを指定するインスタンス テンプレートを使用して、ワークロード ポリシーを使用する MIG を作成することはできません。
MIG サイズ変更リクエストを作成する際には、次の制限が適用されます。
リージョン MIG では、
ANY_SINGLE_ZONEターゲット分配形態(プレビュー)のみを使用できます。他の分布形状はサポートされていません。MIG のスタンバイ プールモードは
manual(デフォルト)にのみ設定できます。自動スケーリングを設定することはできません。
MIG に承認済みのサイズ変更リクエストが含まれている場合、次のことはできません。
MIG がサイズ変更リクエスト用に作成した
CREATINGステータスのマネージド インスタンスは削除または破棄できません。これらのマネージド インスタンスを削除するには、サイズ変更リクエストをキャンセルする必要があります。
省略可: VPC ネットワークを作成する
コンピューティング インスタンスを作成するときに、VPC ネットワークとサブネットを指定できます。この構成を省略すると、デフォルトのネットワークとサブネットが使用されます。
Cloud RDMA を使用するように MIG の H4D インスタンスを構成する場合は、このセクションの手順を完了します。それ以外の場合は、このセクションをスキップして、代わりにデフォルト ネットワークを使用できます。
H4D インスタンスで Cloud RDMA を使用するには、少なくとも 2 つのネットワーク(ネットワーク インターフェース(NIC)のタイプごとに 1 つ)を構成する必要があります。
- NIC タイプ
GVNIC: 通常の VM 間通信と VM-インターネット間通信の TCP/IP トラフィックとインターネット トラフィックにgveドライバを使用します。 - NIC タイプ
IRDMA: インスタンス間の Cloud RDMA ネットワーキングに IDPF / iRDMA ドライバを使用します。
Cloud RDMA を使用するインスタンスには、
IRDMAインターフェースを 1 つだけ設定できます。最大 8 個のGVNICネットワーク インターフェースをさらに追加して、インスタンスごとに合計 10 個の vNIC を使用できます。インスタンスで使用する Falcon VPC ネットワークを設定するには、ドキュメントに記載されている手順で操作するか、提供されているスクリプトを使用します。
手順ガイド
ネットワークを作成するには、次の操作を行います。
GVNICネットワーク インターフェースのホスト ネットワークを作成するには、VPC ネットワークの作成と管理をご覧ください。GVNICネットワーク インターフェースを 1 つだけ構成する場合は、デフォルトの VPC ネットワークと、インスタンスと同じリージョンにある自動サブネットを使用できます。IRDMAネットワーク インターフェースのネットワークを作成するには、Falcon VPC ネットワーク プロファイルを使用して VPC ネットワークを作成するをご覧ください。Falcon VPC ネットワークの最大伝送単位(MTU)のデフォルト値(8896)を使用します。
スクリプト
インスタンスごとに最大 9 個の gVNIC ネットワーク インターフェースと 1 個の IRDMA ネットワーク インターフェースを作成できます。各ネットワーク インターフェースは、別々のネットワークに接続する必要があります。ネットワークを作成するには、次のスクリプトを使用します。このスクリプトは、gVNIC 用に 2 つのネットワークを作成し、IRDMA 用に 1 つのネットワークを作成します。
- 省略可: スクリプトを実行する前に、Falcon VPC ネットワーク プロファイルを一覧表示して、使用可能なプロファイルがあることを確認します。
gcloud compute network-profiles list
次のコードをコピーして、Linux シェル ウィンドウで実行します。
#!/bin/bash # Set the number of GVNIC interfaces to create. You can create up to 9. NUM_GVNIC=NUMBER_OF_GVNIC # Create regular VPC networks and subnets for the GVNIC interfaces for N in $(seq 0 $(($NUM_GVNIC - 1))); do gcloud compute networks create GVNIC_NAME_PREFIX-net-$N \ --subnet-mode=custom gcloud compute networks subnets create GVNIC_NAME_PREFIX-sub-$N \ --network=GVNIC_NAME_PREFIX-net-$N \ --region=REGION \ --range=10.$N.0.0/16 gcloud compute firewall-rules create GVNIC_NAME_PREFIX-internal-$N \ --network=GVNIC_NAME_PREFIX-net-$N \ --action=ALLOW \ --rules=tcp:0-65535,udp:0-65535,icmp \ --source-ranges=10.0.0.0/8 done # Create SSH firewall rules gcloud compute firewall-rules create GVNIC_NAME_PREFIX-ssh \ --network=GVNIC_NAME_PREFIX-net-0 \ --action=ALLOW \ --rules=tcp:22 \ --source-ranges=IP_RANGE # Optional: Create a firewall rule for the external IP address for the # first GVNIC network interface gcloud compute firewall-rules create GVNIC_NAME_PREFIX-allow-ping-net-0 \ --network=GVNIC_NAME_PREFIX-net-0 \ --action=ALLOW \ --rules=icmp \ --source-ranges=IP_RANGE # Create a Falcon VPC network for the Cloud RDMA network interface gcloud compute networks create RDMA_NAME_PREFIX-irdma \ --network-profile=ZONE-vpc-falcon \ --subnet-mode custom # Create a subnet in the Falcon VPC network gcloud compute networks subnets create RDMA_NAME_PREFIX-irdma-sub \ --network=RDMA_NAME_PREFIX-irdma \ --region=REGION \ --range=10.2.0.0/16 # offset to avoid overlap with GVNIC subnet ranges次のように置き換えます。
NUMBER_OF_GVNIC: 作成する GVNIC インターフェースの数。1~9 の数値を指定します。GVNIC_NAME_PREFIX: GVNIC NIC タイプを使用する標準の VPC ネットワークとサブネットに使用する名前の接頭辞。REGION: ネットワークを作成するリージョン。これは、Falcon VPC ネットワークの作成時に--network-profileフラグに指定したゾーンに対応している必要があります。たとえば、ゾーンをeurope-west4-bとして指定すると、リージョンはeurope-west4になります。IP_RANGE: SSH ファイアウォール ルールに使用する VPC ネットワーク外の IP アドレス範囲。すべての IPv4 または IPv6 ソースではなく、アクセスを許可する必要がある特定の IP アドレス範囲を指定することをおすすめします。0.0.0.0/0または::/0をソース範囲として使用しないでください。これにより、 Google Cloudの外部にあるソースを含むすべての IPv4 または IPv6 ソースからのトラフィックが許可されるからです。RDMA_NAME_PREFIX: IRDMA NIC タイプを使用する VPC ネットワークとサブネットに使用する名前の接頭辞。ZONE: ネットワークとコンピューティング インスタンスを作成するゾーン。us-central1-aまたはeurope-west4-bを使用します。
省略可: VPC ネットワーク リソースが正常に作成されたことを確認するには、 Google Cloud コンソールでネットワーク設定を確認します。
- Google Cloud コンソールで、[VPC ネットワーク] ページに移動します。
- リストで、前の手順で作成したネットワークを検索します。
- サブネット、ファイアウォール ルール、その他のネットワーク設定を表示するには、ネットワークの名前をクリックします。
省略可: ワークロード ポリシーを作成する
Compute Engine で VM インスタンスを単一のブロックまたは隣接するブロックに配置する場合は、ワークロード ポリシーを作成してインスタンスの配置を指定します。ただし、Compute Engine でインスタンスを特定のブロックに配置する場合は、この手順をスキップして、インスタンス テンプレートの作成時に予約アフィニティでブロックの名前を指定します。
ワークロード ポリシーがすでに存在する場合は、再利用できます。ワークロード ポリシーを MIG に適用すると、Compute Engine は可能な限り互いに近接したインスタンスを作成しようとします。アプリケーションがレイテンシの影響を受けやすく、インスタンスを近づけて配置する必要がある(最大近接性)場合は、ワークロード ポリシーの作成時に
maxTopologyDistanceフィールドを指定します。ワークロード ポリシーは、作成後に更新することはできません。ワークロード ポリシーを変更するには、新しいポリシーを作成する必要があります。
ワークロード ポリシーを作成するには、次のいずれかのオプションを選択します。
gcloud
ワークロード ポリシーを作成するには、
gcloud compute resource-policies create workload-policyコマンドを使用します。-
VM をベスト エフォートで配置するには、コマンドで
--type=high-throughputフラグのみを指定します。gcloud compute resource-policies create workload-policy WORKLOAD_POLICY_NAME \ --type=high-throughput \ --region=REGION -
VM の厳密なコロケーションを行うには、コマンドで
--max-topology-distanceフラグを指定します。gcloud compute resource-policies create workload-policy WORKLOAD_POLICY_NAME \ --type=high-throughput \ --max-topology-distance=TOPOLOGY_DISTANCE \ --region=REGION
次のように置き換えます。
WORKLOAD_POLICY_NAME: ワークロード ポリシーの名前。REGION: ワークロード ポリシーを作成するリージョン。使用するマシンタイプが利用可能で、MIG を作成するリージョンを指定します。リージョンとゾーンについては、利用可能なリージョンとゾーンをご覧ください。
REST
ワークロード ポリシーを作成するには、
resourcePolicies.insertメソッドにPOSTリクエストを送信します。-
VM をベスト エフォートで配置するには、リクエストで
typeフィールドのみを次のように指定します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "WORKLOAD_POLICY_NAME" "workloadPolicy": { "type": "HIGH_THROUGHPUT" } } -
VM の厳密なコロケーションを行うには、リクエストで
maxTopologyDistanceフィールドを次のように指定します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "WORKLOAD_POLICY_NAME" "workloadPolicy": { "type": "HIGH_THROUGHPUT", "maxTopologyDistance": "TOPOLOGY_DISTANCE" } }
次のように置き換えます。
PROJECT_ID: プロジェクト IDREGION: ワークロード ポリシーを作成するリージョン。使用するマシンタイプが利用可能で、MIG を作成するリージョンを指定します。リージョンとゾーンについては、利用可能なリージョンとゾーンをご覧ください。WORKLOAD_POLICY_NAME: ワークロード ポリシーの名前。
インスタンス テンプレートの作成
MIG 内の各インスタンスのインスタンス プロパティと消費プロパティを指定するには、次のいずれかの方法でインスタンス テンプレートを作成します。
次のコマンドは、インスタンスのアクセス スコープも設定します。権限管理を簡素化するには、インスタンスのアクセス スコープをcloud-platformアクセスに設定し、IAM ロールを使用してインスタンスがアクセスできるサービスを定義することをおすすめします。詳細については、スコープのベスト プラクティスをご覧ください。gcloud
指定する必要があるパラメータは、このデプロイで使用している消費オプションによって異なります。消費オプションとプロビジョニング モデルに対応するタブを選択します。
Flex Start
リージョン インスタンス テンプレートを作成するには、
gcloud compute instance-templates createコマンドを使用します。gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \ --machine-type=MACHINE_TYPE \ --image-family=IMAGE_FAMILY \ --image-project=IMAGE_PROJECT \ --instance-template-region=REGION \ --boot-disk-type=hyperdisk-balanced \ --boot-disk-size=DISK_SIZE \ --scopes=cloud-platform \ --network-interface=nic-type=GVNIC, \ network=GVNIC_NAME_PREFIX-net-0, \ subnet=GVNIC_NAME_PREFIX-sub-0, \ stack-type=STACK_TYPE, \ address=EXTERNAL_IPV4_ADDRESS \ --network-interface=nic-type=GVNIC, \ network=GVNIC_NAME_PREFIX-net-1, \ subnet=GVNIC_NAME_PREFIX-sub-1,no-address \ --network-interface=nic-type=IRDMA, \ network=RDMA_NAME_PREFIX-irdma, \ subnet=RDMA_NAME_PREFIX-irdma-sub, \ stack-type=IPV4_ONLY,no-address \ --reservation-affinity=none \ --instance-termination-action=DELETE \ --max-run-duration=RUN_DURATION \ --maintenance-policy=TERMINATE \ --provisioning-model=FLEX_START次のように置き換えます。
INSTANCE_TEMPLATE_NAME: インスタンス テンプレートの名前。MACHINE_TYPE: インスタンスに使用する H4D マシンタイプ。IMAGE_FAMILY: 使用する OS イメージのイメージ ファミリー。サポート対象のオペレーティング システムの一覧については、サポートされているオペレーティング システムをご覧ください。IMAGE_PROJECT: OS イメージのプロジェクト ID。REGION: インスタンス テンプレートを作成するリージョン。使用するマシンタイプが利用可能なリージョンを指定します。DISK_SIZE: ブートディスクのサイズ(GiB)。GVNIC_NAME_PREFIX: gVNIC インターフェースの標準 VPC ネットワークとサブネットの作成時に使用した名前の接頭辞。デフォルト ネットワークを使用している場合は、
nic-typeフィールドがGVNICに設定された 1 つの--network-interfaceフィールドのみを含めます。また、このネットワーク インターフェースのnetworkとsubnetworkの設定は省略します。STACK_TYPE: 省略可。gVNIC インターフェースに使用するスタックタイプ。IPV4_ONLYまたはIPV4_IPV6を指定します。値を指定しない場合は、デフォルトでIPV4_ONLYが使用されます。EXTERNAL_IPV4_ADDRESS: 省略可。gVNIC ネットワーク インターフェースで使用する静的外部 IPv4 アドレス。外部 IPv4 アドレスは予約済みである必要があります。次のいずれかを行います。- サブネットの有効な IPv4 アドレスを指定します。
- ネットワーク インターフェースで外部 IP アドレスを使用しない場合は、
no-addressフラグを使用します。 - ネットワーク インターフェースでエフェメラル外部 IP アドレスを受信する場合は、
address=''を指定します。
GVNIC ネットワーク インターフェースの外部 IPv6 アドレスを指定するには、代わりに
--external-ipv6-addressフラグを使用します。RDMA_NAME_PREFIX: IRDMA ネットワーク インターフェースの VPC ネットワークとサブネットの作成時に使用した名前の接頭辞。H4D インスタンスで Cloud RDMA を使用していない場合は、IRDMA インターフェースの
--network-interfaceフィールドを省略します。RUN_DURATION: リクエストされたインスタンスを実行する期間。値は、日数、時間、分、秒として指定し、その後にそれぞれd、h、m、sを付けて書式設定する必要があります。たとえば、30 分の場合は30mと指定し、1 日と 2 時間 3 分 4 秒の場合は1d2h3m4sと指定します。値は 10 分~7 日の範囲で指定してください。
予約で制限
リージョン インスタンス テンプレートを作成するには、
gcloud compute instance-templates createコマンドを使用します。gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \ --machine-type=MACHINE_TYPE \ --image-family=IMAGE_FAMILY \ --image-project=IMAGE_PROJECT \ --instance-template-region=REGION \ --boot-disk-type=hyperdisk-balanced \ --boot-disk-size=DISK_SIZE \ --scopes=cloud-platform \ --network-interface=nic-type=GVNIC, \ network=GVNIC_NAME_PREFIX-net-0, \ subnet=GVNIC_NAME_PREFIX-sub-0, \ stack-type=STACK_TYPE, \ address=EXTERNAL_IPV4_ADDRESS \ --network-interface=nic-type=GVNIC, \ network=GVNIC_NAME_PREFIX-net-1, \ subnet=GVNIC_NAME_PREFIX-sub-1,no-address \ --network-interface=nic-type=IRDMA, \ network=RDMA_NAME_PREFIX-irdma, \ subnet=RDMA_NAME_PREFIX-irdma-sub, \ stack-type=IPV4_ONLY,no-address \ --reservation-affinity=specific \ --reservation=RESERVATION \ --provisioning-model=RESERVATION_BOUND \ --instance-termination-action=DELETE \ --maintenance-policy=TERMINATE次のように置き換えます。
INSTANCE_TEMPLATE_NAME: インスタンス テンプレートの名前。MACHINE_TYPE: インスタンスに使用する H4D マシンタイプ。IMAGE_FAMILY: 使用する OS イメージのイメージ ファミリー。サポート対象のオペレーティング システムの一覧については、サポートされているオペレーティング システムをご覧ください。IMAGE_PROJECT: OS イメージのプロジェクト ID。REGION: インスタンス テンプレートを作成するリージョン。使用するマシンタイプが利用可能なリージョンを指定します。DISK_SIZE: ブートディスクのサイズ(GiB)。GVNIC_NAME_PREFIX: gVNIC インターフェースの標準 VPC ネットワークとサブネットの作成時に使用した名前の接頭辞。デフォルト ネットワークを使用している場合は、
nic-typeフィールドがGVNICに設定された 1 つの--network-interfaceフィールドのみを含めます。また、このネットワーク インターフェースのnetworkとsubnetworkの設定は省略します。STACK_TYPE: 省略可。gVNIC インターフェースに使用するスタックタイプ。IPV4_ONLYまたはIPV4_IPV6を指定します。値を指定しない場合は、デフォルトでIPV4_ONLYが使用されます。EXTERNAL_IPV4_ADDRESS: 省略可。gVNIC ネットワーク インターフェースで使用する静的外部 IPv4 アドレス。外部 IPv4 アドレスは予約済みである必要があります。次のいずれかを行います。- サブネットの有効な IPv4 アドレスを指定します。
- ネットワーク インターフェースで外部 IP アドレスを使用しない場合は、
no-addressフラグを使用します。 - ネットワーク インターフェースでエフェメラル外部 IP アドレスを受信する場合は、
address=''を指定します。
GVNIC ネットワーク インターフェースの外部 IPv6 アドレスを指定するには、代わりに
--external-ipv6-addressフラグを使用します。RDMA_NAME_PREFIX: IRDMA ネットワーク インターフェースの VPC ネットワークとサブネットの作成時に使用した名前の接頭辞。H4D インスタンスで Cloud RDMA を使用していない場合は、IRDMA インターフェースの
--network-interfaceフィールドを省略します。-
RESERVATION: 使用する予約の名前。RESERVATION: 予約名または予約内の特定のブロック。予約名または使用可能なブロックを取得するには、予約容量を表示するをご覧ください。インスタンスの配置の要件に基づいて、次のいずれかを選択します。複数のブロックにまたがってインスタンスを作成する場合、または単一のブロックにインスタンスを作成する場合:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
また、単一のブロックの場合は、ブロック コロケーション(
maxTopologyDistance=BLOCK)を指定するワークロード ポリシーを適用して MIG を作成します。これにより、ポリシーが予約に適用され、Compute Engine によって同じブロックにインスタンスが作成されます。特定のブロックにインスタンスを作成するには:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
スポット
リージョン インスタンス テンプレートを作成するには、
gcloud compute instance-templates createコマンドを使用します。gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \ --machine-type=MACHINE_TYPE \ --image-family=IMAGE_FAMILY \ --image-project=IMAGE_PROJECT \ --instance-template-region=REGION \ --boot-disk-type=hyperdisk-balanced \ --boot-disk-size=DISK_SIZE \ --scopes=cloud-platform \ --network-interface=nic-type=GVNIC, \ network=GVNIC_NAME_PREFIX-net-0, \ subnet=GVNIC_NAME_PREFIX-sub-0, \ stack-type=STACK_TYPE, \ address=EXTERNAL_IPV4_ADDRESS \ --network-interface=nic-type=GVNIC, \ network=GVNIC_NAME_PREFIX-net-1, \ subnet=GVNIC_NAME_PREFIX-sub-1,no-address \ --network-interface=nic-type=IRDMA, \ network=RDMA_NAME_PREFIX-irdma, \ subnet=RDMA_NAME_PREFIX-irdma-sub, \ stack-type=IPV4_ONLY,no-address \ --provisioning-model=SPOT \ --instance-termination-action=TERMINATION_ACTION次のように置き換えます。
INSTANCE_TEMPLATE_NAME: インスタンス テンプレートの名前。MACHINE_TYPE: インスタンスに使用する H4D マシンタイプ。IMAGE_FAMILY: 使用する OS イメージのイメージ ファミリー。サポート対象のオペレーティング システムの一覧については、サポートされているオペレーティング システムをご覧ください。IMAGE_PROJECT: OS イメージのプロジェクト ID。REGION: インスタンス テンプレートを作成するリージョン。使用するマシンタイプが利用可能なリージョンを指定します。DISK_SIZE: ブートディスクのサイズ(GiB)。GVNIC_NAME_PREFIX: gVNIC インターフェースの標準 VPC ネットワークとサブネットの作成時に使用した名前の接頭辞。デフォルト ネットワークを使用している場合は、
nic-typeフィールドがGVNICに設定された 1 つの--network-interfaceフィールドのみを含めます。また、このネットワーク インターフェースのnetworkとsubnetworkの設定は省略します。STACK_TYPE: 省略可。gVNIC インターフェースに使用するスタックタイプ。IPV4_ONLYまたはIPV4_IPV6を指定します。値を指定しない場合は、デフォルトでIPV4_ONLYが使用されます。EXTERNAL_IPV4_ADDRESS: 省略可。gVNIC ネットワーク インターフェースで使用する静的外部 IPv4 アドレス。外部 IPv4 アドレスは予約済みである必要があります。次のいずれかを行います。- サブネットの有効な IPv4 アドレスを指定します。
- ネットワーク インターフェースで外部 IP アドレスを使用しない場合は、
no-addressフラグを使用します。 - ネットワーク インターフェースでエフェメラル外部 IP アドレスを受信する場合は、
address=''を指定します。
GVNIC ネットワーク インターフェースの外部 IPv6 アドレスを指定するには、代わりに
--external-ipv6-addressフラグを使用します。RDMA_NAME_PREFIX: IRDMA ネットワーク インターフェースの VPC ネットワークとサブネットの作成時に使用した名前の接頭辞。H4D インスタンスで Cloud RDMA を使用していない場合は、IRDMA インターフェースの
--network-interfaceフィールドを省略します。TERMINATION_ACTION: プリエンプション時に Compute Engine が Spot VM を停止(STOP)するか削除(DELETE)するか。
REST
指定する必要があるパラメータは、このデプロイで使用している消費オプションによって異なります。消費オプションとプロビジョニング モデルに対応するタブを選択します。
Flex Start
リージョン インスタンス テンプレートを作成するには、
regionInstanceTemplates.insertメソッドにPOSTリクエストを送信します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates { "name":"INSTANCE_TEMPLATE_NAME", "properties":{ "disks":[ { "boot":true, "initializeParams":{ "diskSizeGb":"DISK_SIZE", "diskType":"hyperdisk-balanced", "sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" }, "mode":"READ_WRITE", "type":"PERSISTENT" } ], "machineType":"MACHINE_TYPE", "networkInterfaces": [ { "network": "GVNIC_NAME_PREFIX-net-0", "subnetwork": "GVNIC_NAME_PREFIX-sub-0", "accessConfigs": [ { "type": "ONE_TO_ONE_NAT", "name": "External IP", "natIP": "EXTERNAL_IPV4_ADDRESS" } ], "stackType": "IPV4_ONLY", "nicType": "GVNIC", }, { "network": "GVNIC_NAME_PREFIX-net-1", "subnetwork": "GVNIC_NAME_PREFIX-sub-1", "stackType": "IPV4_ONLY", "nicType": "GVNIC", }, { "network": "RDMA_NAME_PREFIX-irdma", "subnetwork": "RDMA_NAME_PREFIX-irdma-sub", "stackType": "IPV4_ONLY", "nicType": "IRDMA", } ], , "reservationAffinity": { "consumeReservationType": "NO_RESERVATION" }, "scheduling": { "instanceTerminationAction": "DELETE", "maxRunDuration": { "seconds": RUN_DURATION }, "onHostMaintenance": "TERMINATE", "provisioningModel": "FLEX_START" } } }次のように置き換えます。
INSTANCE_TEMPLATE_NAME: インスタンス テンプレートの名前。MACHINE_TYPE: インスタンスに使用するマシンタイプ。H4D マシンタイプを指定します。詳細については、H4D マシンタイプをご覧ください。IMAGE_FAMILY: 使用する OS イメージのイメージ ファミリー。サポート対象のオペレーティング システムの一覧については、サポートされているオペレーティング システムをご覧ください。IMAGE_PROJECT: OS イメージのプロジェクト ID。REGION: インスタンス テンプレートを作成するリージョン。使用するマシンタイプが利用可能なリージョンを指定します。リージョンについて詳しくは、リージョンとゾーンをご覧ください。DISK_SIZE: ブートディスクのサイズ(GiB)。GVNIC_NAME_PREFIX: gVNIC インターフェースの標準 VPC ネットワークとサブネットの作成時に使用した名前の接頭辞。デフォルト ネットワークを使用している場合は、
nic-typeフィールドがGVNICに設定された 1 つの--network-interfaceフィールドのみを含めます。また、このネットワーク インターフェースのnetworkとsubnetworkの設定は省略します。EXTERNAL_IPV4_ADDRESS: 省略可。gVNIC ネットワーク インターフェースで使用する静的外部 IPv4 アドレス。外部 IPv4 アドレスは予約済みである必要があります。GVNIC ネットワーク インターフェースの外部 IPv6 アドレスを指定するには、代わりに
--external-ipv6-addressフラグを使用します。RDMA_NAME_PREFIX: IRDMA ネットワーク インターフェースの VPC ネットワークとサブネットの作成時に使用した名前の接頭辞。H4D インスタンスで Cloud RDMA を使用していない場合は、IRDMA インターフェースの
--network-interfaceフィールドを省略します。RUN_DURATION: リクエストされたインスタンスの実行時間(秒単位)。値は600(600 秒、10 分)から604800(604,800 秒、7 日間)の範囲で指定する必要があります。
予約で制限
リージョン インスタンス テンプレートを作成するには、
regionInstanceTemplates.insertメソッドにPOSTリクエストを送信します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates { "name":"INSTANCE_TEMPLATE_NAME", "properties":{ "disks":[ { "boot":true, "initializeParams":{ "diskSizeGb":"DISK_SIZE", "diskType":"hyperdisk-balanced", "sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" }, "mode":"READ_WRITE", "type":"PERSISTENT" } ], "machineType":"MACHINE_TYPE", "networkInterfaces": [ { "network": "GVNIC_NAME_PREFIX-net-0", "subnetwork": "GVNIC_NAME_PREFIX-sub-0", "accessConfigs": [ { "type": "ONE_TO_ONE_NAT", "name": "External IP", "natIP": "EXTERNAL_IPV4_ADDRESS" } ], "stackType": "IPV4_ONLY", "nicType": "GVNIC", }, { "network": "GVNIC_NAME_PREFIX-net-1", "subnetwork": "GVNIC_NAME_PREFIX-sub-1", "stackType": "IPV4_ONLY", "nicType": "GVNIC", }, { "network": "RDMA_NAME_PREFIX-irdma", "subnetwork": "RDMA_NAME_PREFIX-irdma-sub", "stackType": "IPV4_ONLY", "nicType": "IRDMA", } ], , "reservationAffinity":{ "consumeReservationType":"SPECIFIC_RESERVATION", "key":"compute.googleapis.com/reservation-name", "values":[ "RESERVATION" ] }, "scheduling":{ "provisioningModel":"RESERVATION_BOUND", "instanceTerminationAction":"DELETE", "onHostMaintenance": "TERMINATE", "automaticRestart":true } } }次のように置き換えます。
INSTANCE_TEMPLATE_NAME: インスタンス テンプレートの名前。MACHINE_TYPE: インスタンスに使用するマシンタイプ。H4D マシンタイプを指定します。詳細については、H4D マシンタイプをご覧ください。IMAGE_FAMILY: 使用する OS イメージのイメージ ファミリー。サポート対象のオペレーティング システムの一覧については、サポートされているオペレーティング システムをご覧ください。IMAGE_PROJECT: OS イメージのプロジェクト ID。REGION: インスタンス テンプレートを作成するリージョン。使用するマシンタイプが利用可能なリージョンを指定します。リージョンについて詳しくは、リージョンとゾーンをご覧ください。DISK_SIZE: ブートディスクのサイズ(GiB)。GVNIC_NAME_PREFIX: gVNIC インターフェースの標準 VPC ネットワークとサブネットの作成時に使用した名前の接頭辞。デフォルト ネットワークを使用している場合は、
nic-typeフィールドがGVNICに設定された 1 つの--network-interfaceフィールドのみを含めます。また、このネットワーク インターフェースのnetworkとsubnetworkの設定は省略します。EXTERNAL_IPV4_ADDRESS: 省略可。gVNIC ネットワーク インターフェースで使用する静的外部 IPv4 アドレス。外部 IPv4 アドレスは予約済みである必要があります。GVNIC ネットワーク インターフェースの外部 IPv6 アドレスを指定するには、代わりに
--external-ipv6-addressフラグを使用します。RDMA_NAME_PREFIX: IRDMA ネットワーク インターフェースの VPC ネットワークとサブネットの作成時に使用した名前の接頭辞。H4D インスタンスで Cloud RDMA を使用していない場合は、IRDMA インターフェースの
--network-interfaceフィールドを省略します。-
RESERVATION: 使用する予約の名前。RESERVATION: 予約名または予約内の特定のブロック。予約名または使用可能なブロックを取得するには、予約容量を表示するをご覧ください。インスタンスの配置の要件に基づいて、次のいずれかを選択します。複数のブロックにまたがってインスタンスを作成する場合、または単一のブロックにインスタンスを作成する場合:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
また、単一のブロックの場合は、ブロック コロケーション(
maxTopologyDistance=BLOCK)を指定するワークロード ポリシーを適用して MIG を作成します。これにより、ポリシーが予約に適用され、Compute Engine によって同じブロックにインスタンスが作成されます。特定のブロックにインスタンスを作成するには:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
スポット
リージョン インスタンス テンプレートを作成するには、
regionInstanceTemplates.insertメソッドにPOSTリクエストを送信します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates { "name":"INSTANCE_TEMPLATE_NAME", "properties":{ "disks":[ { "boot":true, "initializeParams":{ "diskSizeGb":"DISK_SIZE", "diskType":"hyperdisk-balanced", "sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" }, "mode":"READ_WRITE", "type":"PERSISTENT" } ], "machineType":"MACHINE_TYPE", "networkInterfaces": [ { "network": "GVNIC_NAME_PREFIX-net-0", "subnetwork": "GVNIC_NAME_PREFIX-sub-0", "accessConfigs": [ { "type": "ONE_TO_ONE_NAT", "name": "External IP", "natIP": "EXTERNAL_IPV4_ADDRESS" } ], "stackType": "IPV4_ONLY", "nicType": "GVNIC", }, { "network": "GVNIC_NAME_PREFIX-net-1", "subnetwork": "GVNIC_NAME_PREFIX-sub-1", "stackType": "IPV4_ONLY", "nicType": "GVNIC", }, { "network": "RDMA_NAME_PREFIX-irdma", "subnetwork": "RDMA_NAME_PREFIX-irdma-sub", "stackType": "IPV4_ONLY", "nicType": "IRDMA", } ], , "scheduling": { "provisioningModel": "SPOT", "instanceTerminationAction": "TERMINATION_ACTION" } } }次のように置き換えます。
INSTANCE_TEMPLATE_NAME: インスタンス テンプレートの名前。MACHINE_TYPE: インスタンスに使用するマシンタイプ。H4D マシンタイプを指定します。詳細については、H4D マシンタイプをご覧ください。IMAGE_FAMILY: 使用する OS イメージのイメージ ファミリー。サポート対象のオペレーティング システムの一覧については、サポートされているオペレーティング システムをご覧ください。IMAGE_PROJECT: OS イメージのプロジェクト ID。REGION: インスタンス テンプレートを作成するリージョン。使用するマシンタイプが利用可能なリージョンを指定します。リージョンについて詳しくは、リージョンとゾーンをご覧ください。DISK_SIZE: ブートディスクのサイズ(GiB)。GVNIC_NAME_PREFIX: gVNIC インターフェースの標準 VPC ネットワークとサブネットの作成時に使用した名前の接頭辞。デフォルト ネットワークを使用している場合は、
nic-typeフィールドがGVNICに設定された 1 つの--network-interfaceフィールドのみを含めます。また、このネットワーク インターフェースのnetworkとsubnetworkの設定は省略します。EXTERNAL_IPV4_ADDRESS: 省略可。gVNIC ネットワーク インターフェースで使用する静的外部 IPv4 アドレス。外部 IPv4 アドレスは予約済みである必要があります。GVNIC ネットワーク インターフェースの外部 IPv6 アドレスを指定するには、代わりに
--external-ipv6-addressフラグを使用します。RDMA_NAME_PREFIX: IRDMA ネットワーク インターフェースの VPC ネットワークとサブネットの作成時に使用した名前の接頭辞。H4D インスタンスで Cloud RDMA を使用していない場合は、IRDMA インターフェースの
--network-interfaceフィールドを省略します。TERMINATION_ACTION: プリエンプション時に Compute Engine が Spot VM を停止(STOP)するか削除(DELETE)するか。
インスタンス テンプレートを作成したら、テンプレートを表示して ID を確認し、インスタンス プロパティをレビューできます。
MIG を作成する
上記の手順をすべて完了したら、シナリオに基づいて次のように MIG を作成します。
シナリオ MIG とその VM を作成する方法 例 任意の数の VM で開始できる複数のジョブまたは並列ジョブがある。 MIG を作成し、ターゲット サイズを使用してグループに含める VM の数を指定します。
ターゲット サイズを指定して MIG を作成するをご覧ください。
ML 推論ジョブ 正確な数の VM に分散する必要があるジョブがある。 VM を含まない MIG を作成し、MIG でサイズ変更リクエストを作成します。サイズ変更リクエストを使用すると、VM を一度に取得できます。
MIG とサイズ変更リクエストを作成するをご覧ください。
分散 ML トレーニング ジョブとファインチューニング ジョブ ターゲット サイズを指定して MIG を作成する
すべての VM を一度に作成せずにジョブを開始できる場合は、ターゲット サイズを指定して MIG を作成します。ターゲット サイズによって、MIG 内の VM の数が決まります。MIG は、現在のリソースの可用性に基づいて VM の作成を開始します。リソースが一時的に利用できない場合、MIG はターゲット サイズを満たす VM の作成を継続的に試行します。
ターゲット サイズを指定して MIG を作成するには、次のいずれかのオプションを選択します。
gcloud
指定したターゲット サイズで MIG を作成するには、
instance-groups managed createコマンドを使用します。MIG を作成するコマンドでワークロード ポリシーを使用して VM の配置を指定します。ワークロード ポリシーを使用しない場合は、
--workload-policyフラグを削除します。ゾーン MIG またはリージョン MIG を次のように作成します。
- ゾーン MIG を作成するには、次のコマンドを使用します。
gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=TARGET_SIZE \ --workload-policy=WORKLOAD_POLICY_URL \ --zone=ZONE
- リージョン MIG を作成するには、次のコマンドを使用します。
gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=TARGET_SIZE \ --workload-policy=WORKLOAD_POLICY_URL \ --region=REGION
MIG_NAME: MIG の名前。INSTANCE_TEMPLATE_URL: MIG で VM の作成に使用するインスタンス テンプレートの URL。この URL には、インスタンス テンプレートの ID または名前を含めることができます。次のいずれかの値を指定します。- リージョン インスタンス テンプレートの場合:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - グローバル インスタンス テンプレートの場合:
INSTANCE_TEMPLATE_ID
- リージョン インスタンス テンプレートの場合:
TARGET_SIZE: MIG に含める VM の数。WORKLOAD_POLICY_URL: 省略可。ワークロード ポリシーの URL。例:projects/example-project/regions/us-central1/resourcePolicies/example-workload-policy。ワークロード ポリシーを使用しない場合は、--workload-policyフラグを削除できます。ZONE: MIG を作成するゾーン。ワークロード ポリシーを使用する場合は、ポリシーのリージョン内のゾーンを指定します。REGION: MIG を作成するリージョン。ワークロード ポリシーを使用する場合は、ポリシーと同じリージョンを指定します。リージョン MIG の場合は、リージョンの代わりに、--zonesフラグを使用してそのリージョンのゾーンを指定できます。
REST
指定したターゲット サイズで MIG を作成するには、
POSTリクエストを送信します。MIG を作成するリクエストでワークロード ポリシーを使用して VM の配置を指定します。ワークロード ポリシーを使用しない場合は、
resourcePolicies.workloadPolicyフィールドを削除します。ゾーン MIG またはリージョン MIG を次のように作成します。
- ゾーン MIG を作成するには、
instanceGroupManagers.insertメソッドにPOSTリクエストを送信します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "instanceTemplate": "INSTANCE_TEMPLATE_URL", "targetSize": "TARGET_SIZE", "resourcePolicies": { "workloadPolicy": WORKLOAD_POLICY_URL } } - リージョン MIG を作成するには、
regionInstanceGroupManagers.insertメソッドにPOSTリクエストを送信します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "instanceTemplate": "INSTANCE_TEMPLATE_URL", "targetSize": "TARGET_SIZE", "resourcePolicies": { "workloadPolicy": WORKLOAD_POLICY_URL } }
PROJECT_ID: プロジェクト ID。ZONE: MIG を作成するゾーン。ワークロード ポリシーを使用する場合は、ポリシーのリージョン内のゾーンを指定します。REGION: MIG を作成するリージョン。ワークロード ポリシーを使用する場合は、ポリシーと同じリージョンを指定します。INSTANCE_TEMPLATE_URL: MIG で VM の作成に使用するインスタンス テンプレートの URL。この URL には、インスタンス テンプレートの ID または名前を含めることができます。次のいずれかの値を指定します。- リージョン インスタンス テンプレートの場合:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - グローバル インスタンス テンプレートの場合:
INSTANCE_TEMPLATE_ID
- リージョン インスタンス テンプレートの場合:
MIG_NAME: MIG の名前。TARGET_SIZE: MIG に含める VM の数。WORKLOAD_POLICY_URL: 省略可。ワークロード ポリシーの URL。例:projects/example-project/regions/us-central1/resourcePolicies/example-workload-policy。ワークロード ポリシーを使用しない場合は、resourcePolicies.workloadPolicyフィールドを削除できます。
MIG とサイズ変更リクエストを作成する
ジョブの開始に複数の VM が一度に必要な場合は、MIG を作成し、このセクションで説明するように MIG でサイズ変更リクエストを作成します。
MIG でサイズ変更リクエストを作成するには、次のいずれかのオプションを選択します。
gcloud
指定する必要があるパラメータは、このデプロイで使用している消費オプションによって異なります。消費オプションのプロビジョニング モデルに対応するタブを選択します。
次のように置き換えます。Flex Start
次のように、ゾーン MIG またはリージョン MIG とサイズ変更リクエストを作成します。
-
ゾーン MIG とそのサイズ変更リクエストを作成するには、次の操作を行います。
-
次のように、
instance-groups managed createコマンドを使用してゾーン MIG を作成します。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --default-action-on-vm-failure=do-nothing \ --zone=ZONE -
次のように、
instance-groups managed resize-requests createコマンドを使用して、ゾーン MIG にサイズ変更リクエストを作成します。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
リージョン MIG とそのサイズ変更リクエストを作成するには、次の操作を行います。
-
次のように、
instance-groups managed createコマンドを使用してリージョン MIG を作成します。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --default-action-on-vm-failure=do-nothing \ --zones=ZONE \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none -
次のように、ベータ版の
instance-groups managed resize-requests createコマンドを使用して、リージョン MIG にサイズ変更リクエストを作成します。gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
予約で制限
MIG を作成するコマンドでワークロード ポリシーを使用して VM の配置を指定します。ワークロード ポリシーを使用しない場合は、
--workload-policyフラグを削除します。次のように、ゾーン MIG またはリージョン MIG とサイズ変更リクエストを作成します。
-
ゾーン MIG とそのサイズ変更リクエストを作成するには、次の操作を行います。
-
次のように、
instance-groups managed createコマンドを使用してゾーン MIG を作成します。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --workload-policy=WORKLOAD_POLICY_URL \ --zone=ZONE -
次のように、
instance-groups managed resize-requests createコマンドを使用して、ゾーン MIG にサイズ変更リクエストを作成します。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
リージョン MIG とそのサイズ変更リクエストを作成するには、次の操作を行います。
-
次のように、
instance-groups managed createコマンドを使用してリージョン MIG を作成します。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --workload-policy=WORKLOAD_POLICY_URL \ --zones=ZONE \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none -
次のように、ベータ版の
instance-groups managed resize-requests createコマンドを使用して、リージョン MIG にサイズ変更リクエストを作成します。gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
スポット
MIG を作成するコマンドでワークロード ポリシーを使用して VM の配置を指定します。ワークロード ポリシーを使用しない場合は、
--workload-policyフラグを削除します。次のように、ゾーン MIG またはリージョン MIG とサイズ変更リクエストを作成します。
-
ゾーン MIG とそのサイズ変更リクエストを作成するには、次の操作を行います。
-
次のように、
instance-groups managed createコマンドを使用してゾーン MIG を作成します。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --workload-policy=WORKLOAD_POLICY_URL \ --zone=ZONE -
次のように、
instance-groups managed resize-requests createコマンドを使用して、ゾーン MIG にサイズ変更リクエストを作成します。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
リージョン MIG とそのサイズ変更リクエストを作成するには、次の操作を行います。
-
次のように、
instance-groups managed createコマンドを使用してリージョン MIG を作成します。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --workload-policy=WORKLOAD_POLICY_URL \ --zones=ZONE \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none -
次のように、ベータ版の
instance-groups managed resize-requests createコマンドを使用して、リージョン MIG にサイズ変更リクエストを作成します。gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
MIG_NAME: MIG の名前。INSTANCE_TEMPLATE_URL: MIG で VM の作成に使用するインスタンス テンプレートの URL。この URL には、インスタンス テンプレートの ID または名前を含めることができます。次のいずれかの値を指定します。- リージョン インスタンス テンプレートの場合:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - グローバル インスタンス テンプレートの場合:
INSTANCE_TEMPLATE_ID
- リージョン インスタンス テンプレートの場合:
WORKLOAD_POLICY_URL: 省略可。ワークロード ポリシーの URL。例:projects/example-project/regions/us-central1/resourcePolicies/example-workload-policy。ワークロード ポリシーを使用しない場合は、--workload-policyフラグを削除できます。ZONE: MIG を作成するゾーン。リージョン MIG の場合も、ゾーンを指定する必要があります。このゾーンは、VPC ネットワークのプロファイルを含むゾーンであり、マシンタイプを使用できるゾーンである必要があります。詳細については、制限事項をご覧ください。RESIZE_REQUEST_NAME: サイズ変更リクエストの名前。指定された MIG 内で一意である必要があります。それ以外の場合、サイズ変更リクエストは作成されません。COUNT: MIG に一度に追加する VM の数。REGION: MIG が配置されているリージョン。
ワークロードで特定の VM 名が必要な場合は、
beta instance-groups managed resize-requests createコマンドを使用して、作成する VM の名前のリストを指定できます。コマンドの--resize-requestフラグを--instancesフラグに置き換えます。REST
指定する必要があるパラメータは、このデプロイで使用している消費オプションによって異なります。消費オプションのプロビジョニング モデルに対応するタブを選択します。
次のように置き換えます。Flex Start
次のように、ゾーン MIG またはリージョン MIG とサイズ変更リクエストを作成します。
- ゾーン MIG とそのサイズ変更リクエストを作成するには、次の操作を行います。
- 次のように、
instanceGroupManagers.insertメソッドにPOSTリクエストを送信して、ゾーン MIG を作成します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" } } - 次のように、
instanceGroupManagerResizeRequests.insertメソッドにPOSTリクエストを送信して、ゾーン MIG でサイズ変更リクエストを作成します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 次のように、
- リージョン MIG とそのサイズ変更リクエストを作成するには、次の操作を行います。
- 次のように、
regionInstanceGroupManagers.insertメソッドにPOSTリクエストを送信して、リージョン MIG を作成します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE", "zones": [ { "zone": "projects/PROJECT_ID/zones/ZONE" } ] }, "updatePolicy": { "instanceRedistributionType": "NONE" }, "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" } } - 次のように、
beta.regionInstanceGroupManagerResizeRequests.insertメソッドにPOSTリクエストを送信して、リージョン MIG にサイズ変更リクエストを作成します。POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 次のように、
予約で制限
MIG を作成するリクエストでワークロード ポリシーを使用して VM の配置を指定します。ワークロード ポリシーを使用しない場合は、
resourcePolicies.workloadPolicyフィールドを削除します。次のように、ゾーン MIG またはリージョン MIG とサイズ変更リクエストを作成します。
- ゾーン MIG とそのサイズ変更リクエストを作成するには、次の操作を行います。
- 次のように、
instanceGroupManagers.insertメソッドにPOSTリクエストを送信して、ゾーン MIG を作成します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "resourcePolicies": { "workloadPolicy": WORKLOAD_POLICY_URL } } - 次のように、
instanceGroupManagerResizeRequests.insertメソッドにPOSTリクエストを送信して、ゾーン MIG でサイズ変更リクエストを作成します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 次のように、
- リージョン MIG とそのサイズ変更リクエストを作成するには、次の操作を行います。
- 次のように、
regionInstanceGroupManagers.insertメソッドにPOSTリクエストを送信して、リージョン MIG を作成します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE", "zones": [ { "zone": "projects/PROJECT_ID/zones/ZONE" } ] }, "updatePolicy": { "instanceRedistributionType": "NONE" }, "resourcePolicies": { "workloadPolicy": WORKLOAD_POLICY_URL } } - 次のように、
beta.regionInstanceGroupManagerResizeRequests.insertメソッドにPOSTリクエストを送信して、リージョン MIG にサイズ変更リクエストを作成します。POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 次のように、
スポット
MIG を作成するリクエストでワークロード ポリシーを使用して VM の配置を指定します。ワークロード ポリシーを使用しない場合は、
resourcePolicies.workloadPolicyフィールドを削除します。次のように、ゾーン MIG またはリージョン MIG とサイズ変更リクエストを作成します。
- ゾーン MIG とそのサイズ変更リクエストを作成するには、次の操作を行います。
- 次のように、
instanceGroupManagers.insertメソッドにPOSTリクエストを送信して、ゾーン MIG を作成します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "resourcePolicies": { "workloadPolicy": WORKLOAD_POLICY_URL } } - 次のように、
instanceGroupManagerResizeRequests.insertメソッドにPOSTリクエストを送信して、ゾーン MIG でサイズ変更リクエストを作成します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 次のように、
- リージョン MIG とそのサイズ変更リクエストを作成するには、次の操作を行います。
- 次のように、
regionInstanceGroupManagers.insertメソッドにPOSTリクエストを送信して、リージョン MIG を作成します。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE", "zones": [ { "zone": "projects/PROJECT_ID/zones/ZONE" } ] }, "updatePolicy": { "instanceRedistributionType": "NONE" }, "resourcePolicies": { "workloadPolicy": WORKLOAD_POLICY_URL } } - 次のように、
beta.regionInstanceGroupManagerResizeRequests.insertメソッドにPOSTリクエストを送信して、リージョン MIG にサイズ変更リクエストを作成します。POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 次のように、
PROJECT_ID: プロジェクト ID。ZONE: MIG を作成するゾーン。リージョン MIG の場合も、ゾーンを指定する必要があります。このゾーンは、VPC ネットワークのプロファイルを含むゾーンであり、マシンタイプを使用できるゾーンである必要があります。詳細については、制限事項をご覧ください。REGION: MIG を作成するリージョン。INSTANCE_TEMPLATE_URL: MIG で VM の作成に使用するインスタンス テンプレートの URL。この URL には、インスタンス テンプレートの ID または名前を含めることができます。次のいずれかの値を指定します。- リージョン インスタンス テンプレートの場合:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - グローバル インスタンス テンプレートの場合:
INSTANCE_TEMPLATE_ID
- リージョン インスタンス テンプレートの場合:
MIG_NAME: MIG の名前。WORKLOAD_POLICY_URL: 省略可。ワークロード ポリシーの URL。例:projects/example-project/regions/us-central1/resourcePolicies/example-workload-policy。ワークロード ポリシーを使用しない場合は、resourcePolicies.workloadPolicyフィールドを削除できます。RESIZE_REQUEST_NAME: サイズ変更リクエストの名前。指定された MIG 内で一意である必要があります。それ以外の場合、サイズ変更リクエストは作成されません。COUNT: MIG に一度に追加する VM の数
ワークロードに特定の VM 名が必要な場合は、作成する VM の名前のリストを指定できます。これを行うには、リージョン MIG の場合は
beta.regionInstanceGroupManagerResizeRequests.insertメソッド、ゾーン MIG の場合はbeta.instanceGroupManagerResizeRequests.insertメソッドにPOSTリクエストを送信します。リクエスト本文で、resizeByフィールドをinstanceNamesフィールドに置き換えます。次のステップ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-12-04 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["わかりにくい","hardToUnderstand","thumb-down"],["情報またはサンプルコードが不正確","incorrectInformationOrSampleCode","thumb-down"],["必要な情報 / サンプルがない","missingTheInformationSamplesINeed","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-12-04 UTC。"],[],[]] -