予約にバインドされたモデルを使用する VM を作成する

このドキュメントでは、予約バインド プロビジョニング モデルを使用してスタンドアロン仮想マシン(VM)インスタンスを作成する方法について説明します。このプロビジョニング モデルでは、事前に予約された容量を使用して A4X、A4、A3 Ultra VM を作成できます。

予約にバインドされたプロビジョニング モデルを使用して VM を作成するその他の方法については、AI Hypercomputer のドキュメントのデプロイ オプションの概要をご覧ください。

始める前に

  • まだ設定していない場合は、認証を設定します。認証では、 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

    1. Google Cloud CLI をインストールします。 インストール後、次のコマンドを実行して Google Cloud CLI を初期化します。

      gcloud init

      外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。

    2. 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 を使用して認証するをご覧ください。

必要なロール

予約バインド プロビジョニング モデルを使用して VM を作成するために必要な権限を取得するには、プロジェクトに対する Compute インスタンス管理者(v1) roles/compute.instanceAdmin.v1)の IAM ロールを付与するよう管理者に依頼します。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

この事前定義ロールには、予約バインド プロビジョニング モデルを使用して VM を作成するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

予約バインド プロビジョニング モデルを使用して VM を作成するには、次の権限が必要です。

  • プロジェクトに対する compute.instances.create
  • カスタム イメージを使用して VM を作成する: イメージに対する compute.images.useReadOnly
  • スナップショットを使用して VM を作成する: スナップショットに対する compute.snapshots.useReadOnly
  • インスタンス テンプレートを使用して VM を作成する: インスタンス テンプレートに対する compute.instanceTemplates.useReadOnly
  • VM のサブネットを指定する: プロジェクトまたは選択したサブネットに対する compute.subnetworks.use
  • VM の静的 IP アドレスを指定する: プロジェクトに対する compute.addresses.use
  • VPC ネットワークの使用時に VM に外部 IP アドレスを割り当てる: プロジェクトまたは選択したサブネットに対する compute.subnetworks.useExternalIp
  • VM にレガシー ネットワークを割り当てる: プロジェクトに対する compute.networks.use
  • レガシー ネットワークを使用する際に VM に外部 IP アドレスを割り当てる: プロジェクトに対する compute.networks.useExternalIp
  • VM の VM インスタンス メタデータを設定する: プロジェクトに対する compute.instances.setMetadata
  • VM にタグを設定する: VM に対する compute.instances.setTags
  • VM にラベルを設定する: VM に対する compute.instances.setLabels
  • VM が使用するサービス アカウントを設定する: VM に対する compute.instances.setServiceAccount
  • VM 用の新しいディスクを作成する: プロジェクトに対する compute.disks.create
  • 既存のディスクを読み取り専用モードまたは読み取り / 書き込みモードでアタッチする: ディスクに対する compute.disks.use
  • 既存のディスクを読み取り専用モードでアタッチする: ディスクに対する compute.disks.useReadOnly

カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。

予約にバインドされたプロビジョニング モデルを使用する VM を作成する

予約バインド プロビジョニング モデルを使用して A4X、A4、A3 Ultra VM を作成するには、使用する自動予約が開始時間に達するまで待つ必要があります。また、作成する VM は次の要件をすべて満たしている必要があります。

次の例では、5 つの A3 Ultra VM のカレンダー モードで将来の予約リクエストを作成し、リクエストの自動作成された予約を使用して A3 Ultra VM を作成します。

予約バインド プロビジョニング モデルを使用して VM の例を作成するには、次のいずれかのオプションを選択します。

コンソール

  1. 5 つの A3 Ultra VM のサンプル リクエストを作成し、審査用に送信します。

    1. Google Cloud コンソールで、[予約] ページに移動します。

      [予約] に移動

    2. [将来の予約] タブをクリックします。

    3. [将来の予約を作成] をクリックします。[将来の予約を作成] ページが開きます。

    4. [ハードウェア構成] セクションで [マシンタイプを指定] を選択してから、A3 Ultra インスタンスを指定します。

    5. [取得可能性のメソッド] セクションで次の操作を行います。

      1. [容量を検索: 最長 90 日間] を選択します。

      2. [リージョン] リストと [ゾーン] リストで、リソースを予約するリージョンとゾーンを指定します。この例では、それぞれ [us-central1] と [us-central1-a] を選択しています。

      3. [必要な総容量] フィールドに「5」と入力します。

      4. [予約期間] セクションで予約期間を指定します。

    6. 残りのフィールドで適切な値を指定して [送信] をクリックします。

  2. リクエストの開始日時に、サンプルの自動作成された予約を消費する A3 Ultra VM を作成するには、次の操作を行います。

    1. Google Cloud コンソールで [インスタンスの作成] ページに移動します。

      [インスタンスの作成] に移動

    2. [名前] フィールドに、VM の名前を入力します。この例では、「example-vm」と入力します。

    3. リソースを予約する [リージョン] と [ゾーン] を指定します。この例では、それぞれ [us-central1] と [us-central1-a] を選択しています。

    4. [GPU] タブをクリックしてから、[GPU のタイプ] リストで [NVIDIA H200 141 GB] を選択します。このアクションは、A3 Ultra VM を指定し、プロビジョニング モデルを [予約で制限] に設定します。

    5. ナビゲーション メニューで、[詳細設定] をクリックします。

    6. [予約] セクションで [予約を選択] を選択し、[予約を選択] をクリックします。

    7. [予約を選択] ペインで、次のように操作します。

      1. 特定の予約を選択します。別のプロジェクトに存在する共有予約を消費する場合は、[プロジェクト] リストで、その予約が存在するプロジェクトを選択します。

      2. [選択] をクリックします。

    8. [プロビジョニング モデル] セクションで、[VM プロビジョニング モデルの詳細設定] セクションを開きます。

    9. [VM の終了時] リストで、[停止](デフォルト)または [削除] を選択します。

    10. [作成] をクリックします。

gcloud

  1. 5 つの A3 Ultra VM のサンプル リクエストを作成して審査用に送信するには gcloud beta compute future-reservations create コマンドを使用します。

    gcloud beta compute future-reservations create example-fr \
        --auto-delete-auto-created-reservations \
        --deployment-type=DENSE \
        --planning-status=SUBMITTED \
        --require-specific-reservation \
        --reservation-mode=CALENDAR \
        --reservation-name=example-reservation \
        --share-type=local \
        --start-time=2025-10-05T00:00:00Z \
        --end-time=2025-10-19T00:00:00Z \
        --machine-type=a3-ultragpu-8g \
        --total-count=5 \
        --zone=us-central1-a
    

    Google Cloud がリクエストを承認し、Compute Engine によって空の予約が自動的に作成されるとします。リクエスト開始日時の 2025 年 10 月 5 日に、Compute Engine は予約にある予約済み GPU VM の数を増やします。これで、この予約を消費できるようになります。

  2. リクエストの開始日時に、サンプルの自動作成された予約を消費する A3 Ultra VM を作成するには、gcloud compute instances create コマンドで次のフラグを指定します。

    • --instance-termination-action フラグ。

    • --provisioning-model フラグ。RESERVATION_BOUND に設定します。

    • --reservation フラグ。

    • --reservation-affinity フラグ。specific に設定します。

    このコマンドは次のようになります。A3 Ultra VM を作成するための要件の詳細については、A3 Ultra インスタンスまたは A4 インスタンスを作成するをご覧ください。

    gcloud compute instance create example-vm  \
        --machine-type=a3-ultragpu-8g \
        --instance-termination-action=TERMINATION_ACTION \
        --provisioning-model=RESERVATION_BOUND \
        --reservation-affinity=specific \
        --reservation=RESERVATION_URL \
        --zone=us-central1-a \
        ...
    

    このコマンドでは次の値が指定されています。

    • TERMINATION_ACTION: 予約期間の終了時に Compute Engine によって VM を停止(STOP)するか削除(DELETE)するか。

    • RESERVATION_URL: 予約の URL。次の形式で指定します。

      • 自動作成された予約がこのプロジェクトに存在する場合: example-reservation

      • 自動作成された予約が別のプロジェクトに存在する場合: projects/PROJECT_ID/reservations/example-reservation

REST

  1. 5 つの A3 Ultra VM のサンプル リクエストを作成して審査用に送信するには、ベータ版の futureReservations.insert メソッドPOST リクエストを送信します。

    POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations
    
    {
      "name": "example-request-calendar-mode",
      "autoDeleteAutoCreatedReservations": true,
      "deploymentType": "DENSE",
      "planningStatus": "SUBMITTED",
      "reservationMode": "CALENDAR",
      "reservationName": "example-reservation",
      "shareSettings": {
        "shareType": "LOCAL"
      },
      "specificReservationRequired": true,
      "specificSkuProperties": {
        "machineType": "a3-ultragpu-8g",
        "totalCount": 5
      },
      "timeWindow": {
        "startTime": "2025-10-05T00:00:00Z",
        "endTime": "2025-10-19T00:00:00Z"
      }
    }
    

    Google Cloud がリクエストを承認し、Compute Engine によって空の予約が自動的に作成されるとします。リクエスト開始日時の 2025 年 10 月 5 日に、Compute Engine は予約にある予約済み GPU VM の数を増やします。これで、この予約を消費できるようになります。

  2. リクエストの開始日時に、サンプルの自動作成された予約を消費する A3 Ultra VM を作成するには、instances.insert メソッドPOST リクエストを送信します。リクエスト本文で、次のフィールドを指定します。

    • SPECIFIC_RESERVATION に設定した reservationAffinity.consumeReservationType フィールド。

    • reservationAffinity.key フィールド。compute.googleapis.com/reservation-name に設定します。

    • reservationAffinity.values フィールド。予約の URL に設定します。

    • scheduling.instanceTerminationAction フィールド。

    • scheduling.provisioningModel フィールド。RESERVATION_BOUND に設定します。

    このリクエストは次のようになります。A3 Ultra VM を作成するための要件の詳細については、A3 Ultra インスタンスまたは A4 インスタンスを作成するをご覧ください。

    POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/instances
    
    {
      {
        "machineType": "projects/example-project/zones/us-central1-a/machineTypes/a3-ultragpu-8g",
        "name": "example-vm",
        "reservationAffinity": {
          "consumeReservationType": "SPECIFIC_RESERVATION",
          "key": "compute.googleapis.com/reservation-name",
          "values":[
            "RESERVATION_URL"
          ],
        },
        "scheduling": {
          "instanceTerminationAction": "TERMINATION_ACTION",
          "provisioningModel": "RESERVATION_BOUND"
        },
        ...
      }
    }
    

    リクエスト本文では次の値が指定されています。

    • RESERVATION_URL: 予約の URL。次の形式で指定します。

      • 自動作成された予約がこのプロジェクトに存在する場合: example-reservation

      • 自動作成された予約が別のプロジェクトに存在する場合: projects/PROJECT_ID/reservations/example-reservation

    • TERMINATION_ACTION: 予約期間の終了時に Compute Engine によって VM を停止(STOP)するか削除(DELETE)するか。

次のステップ

使ってみる

Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオで Compute Engine のパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。

Compute Engine の無料トライアル