将来の共有予約リクエストを作成する


このドキュメントでは、共有の将来の予約リクエストを作成する方法について説明します。

Google Cloud が共有の将来の予約リクエストを承認すると、リクエストで指定された開始時間に Compute Engine が複数のプロジェクトで共有される予約を自動的に作成します。これらの自動作成された共有予約は、将来の予約をホストするプロジェクト(オーナー プロジェクト)と将来の予約を共有するプロジェクト(コンシューマ プロジェクト)で VM と既存の予約を照合するために使用されます。自動作成共有予約の仕組みと使用方法の詳細については、共有予約の作成をご覧ください。

準備

  • まだインストールしていない場合は、次の作業を行ってください。
  • まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のように Compute Engine に対する認証を行います。

    このページのサンプルをどのように使うかに応じて、タブを選択してください。

    コンソール

    Google Cloud コンソールを使用して Google Cloud サービスと API にアクセスする場合、認証を設定する必要はありません。

    gcloud

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

      gcloud init
    2. デフォルトのリージョンとゾーンを設定します

    REST

    このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。

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

      gcloud init

必要なロール

将来の共有予約リクエストを作成するのに必要な権限を取得するには、プロジェクトに対する Compute の将来の予約ユーザーroles/compute.futureReservationUser)IAM ロールを付与するよう管理者に依頼してください。ロールの付与の詳細については、アクセス権の管理をご覧ください。

この事前定義ロールには、共有の将来の予約リクエストを作成するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

共有の将来の予約リクエストを作成するには、次の権限が必要です。

  • 将来の予約リクエストを作成するには: プロジェクトに対する compute.futureReservations.create 権限
  • Compute Engine で予約を自動作成できるようにするには: プロジェクトに対する compute.reservations.create 権限
  • インスタンス テンプレートを指定するには: インスタンス テンプレートに対する compute.instanceTemplates.useReadOnly 権限

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

制限事項

将来の予約に関する一般的な制限に加えて、共有の将来の予約リクエストを作成する場合、次の制限があります。

  • 共有予約リクエストを作成するために使用するプロジェクト(オーナー プロジェクト)は、共有予約オーナー プロジェクトcompute.sharedReservationsOwnerProjects)組織のポリシー管理者によるポリシーの制約の組織の許可リストに追加する必要があります。詳細については、Compute Engine 予約のドキュメントのプロジェクトに対して共有予約の作成と変更を許可または制限するをご覧ください。

  • 共有の将来の予約リクエストを作成したプロジェクトを別の組織に移動すると、共有の将来の予約は削除されます。プロジェクトは、共有予約オーナー プロジェクトcompute.sharedReservationsOwnerProjects)組織のポリシー制約から自動的には削除されませんが、必要であればこの制約をプロジェクトから削除できます。

  • 共有の将来の予約リクエストはそれぞれ、最大 100 個のコンシューマ プロジェクトと共有できます。

  • 組織ごとに、VM プロパティの一意の組み合わせごとに最大 100 個の共有の将来の予約リクエストを作成できます。

将来の共有予約リクエストを作成する。

このセクションでは、将来の共有予約リクエストを作成する方法について説明します。

将来の共有予約リクエストを作成した後、キャンセル、削除、変更できるのはオーナー プロジェクトのみです。ただし、自動作成された予約は、オーナー プロジェクトと、共有の将来の予約リクエストを共有するコンシューマ プロジェクトで使用できます。

自動作成された予約を将来の予約に使用するには、VM と予約のプロパティが正確に一致している必要があります。将来の予約リクエストを作成して予約をリクエストする VM のプロパティを指定するには、次のいずれかの方法を選択します。

  • 推奨: インスタンス テンプレートを指定する

    このセクションでは、既存のインスタンス テンプレートを使用して、共有の将来の予約リクエストのプロパティを定義する方法について説明します。インスタンス テンプレートを使用すると、将来の予約リクエストのプロパティと、同じ場所で自動作成された予約を使用できる VM のプロパティを定義できます。ただし、テンプレートはプロジェクト固有であるため、同じテンプレートを使用して、将来の予約リクエストを作成したプロジェクトの外部で自動作成された予約を使用できる VM を作成することはできません。将来の予約が共有されているプロジェクトでは、それらのプロジェクトに同じテンプレートを作成するか、プロパティを直接指定して VM を作成する必要があります。

  • プロパティを直接指定する

    このセクションでは、将来の共有予約リクエストのプロパティを直接定義する方法について説明します。この方法では、VM のプロパティと自動作成された予約のプロパティが正確に一致することを手動で確認する必要があります。一致しないプロパティは使用できません

将来の予約用に自動作成された予約は、プロパティが一致する VM で自動的に使用されます。VM が自動生成された予約を使用しないようにするには、予約を使用せずに VM を作成する方法をご覧ください。

インスタンス テンプレートを指定する

Google Cloud コンソール、gcloud CLI、REST を使用して既存のインスタンス テンプレートを指定することで、共有タイプの将来の予約を作成できます。

コンソール

インスタンス テンプレートを指定して共有の将来の予約リクエストを作成するには、次の操作を行います。

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

    [予約] に移動

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

  3. [将来の予約を作成] をクリックします。

    [将来の予約を作成] ページが開きます。

  4. [名前] フィールドに、将来の予約リクエストの名前を入力します。

  5. [接頭辞] フィールドに、名前の接頭辞を入力します。将来の予約リクエストから自動作成された各予約の名前は、この接頭辞で始まります。

    この将来の予約リクエスト用に自動作成された予約を特定しやすくするために、一意の名前の接頭辞を指定することをおすすめします。

  6. オプション: [説明] フィールドに、将来の予約リクエストの説明を入力します。

  7. [リージョン] フィールドで、リソースを予約するリージョンを選択します。

  8. [ゾーン] フィールドで、リソースを予約するゾーンを選択します。

  9. [開始時間] フィールドに、予約期間の開始時間を入力します。開始時間は、審査を受けるために将来の予約リクエストを送信した日時から 1 年以内にしてください。

    必ず開始時間の推奨値を指定して、将来の予約がロック時間になるまでに十分な時間を確保できるようにしてください。

  10. [終了時間] フィールドに、予約期間の終了時間を入力します。予約期間は 24 時間以上にする必要があります。

    [Duration summary] セクションで、予約期間の長さを確認できます。審査を受けるために送信した将来の予約リクエストが Google Cloud で承認される可能性を高めるために、必ず予約期間の推奨値を指定します。

  11. [共有タイプ] セクションで、次の操作を行います。

    1. 将来の共有予約リクエストを指定するには、[共有] をクリックします。

    2. [プロジェクトを追加] をクリックし、予約を共有する現在のプロジェクトの組織からプロジェクトを選択します。

      最大 100 個のプロジェクトを選択できます。現在のプロジェクトは選択しないでください。デフォルトでは、この将来の予約リクエストに自動作成された予約の使用が許可されています。

  12. [VM インスタンスの数] フィールドに、将来の予約リクエストで指定された期間、VM 構成、プロジェクトに予約する VM の合計数を入力します。

    開始時間の直前に、承認された将来の予約リクエストに対して作成する新しい予約の数を計算すると、Compute Engine はこの合計からリクエストに一致する既存の予約を差し引きます。詳細については、Compute Engine での予約済みリソースのカウントとプロビジョニングの方法をご覧ください。

  13. [マシンの構成] セクションで、次の手順を実施します。

    1. 既存のインスタンス テンプレートを使用して VM のプロパティを指定するには、[インスタンス テンプレートを使用] を選択します。

    2. [インスタンス テンプレート] フィールドで、任意のインスタンス テンプレートを選択します。リージョン インスタンス テンプレートを選択した場合は、インスタンス テンプレートが配置されているリージョン内のリソースのみを予約できます。

  14. [自動生成された予約の自動削除日時] セクションで、次のいずれかを行います。

    • 将来の予約リクエスト用に自動作成された予約を Compute Engine が自動的に削除できるようにするには、次の手順を実施します。

      1. [自動削除を有効にする] をクリックしてオン(デフォルト)にします。

      2. オプション: [自動削除日時] フィールドに、自動作成された予約を削除する新しい日時を入力します。日時は予約期間の終了日より後にする必要があります。このフィールドを空のままにすると、自動作成された予約は予約期間の終了時間から 2 時間以内に削除されます。

    • 自動削除しない場合は、[自動削除を有効にする] をクリックしてオフにします。

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

    • 将来の予約リクエストを作成して審査を受けるために Google Cloud に送信するには、[送信] をクリックします。

    • 将来の予約リクエストの下書きを作成するには、[下書きを保存] をクリックします。

    • 保存せずに終了する場合は、[キャンセル] をクリックします。

[予約] ページが開きます。将来の予約リクエストの作成が完了するまでに 1 分ほどかかることがあります。

gcloud

インスタンス テンプレートを指定して共有の将来の予約リクエストを作成するには、次のパラメータを指定して gcloud beta compute future-reservations create コマンド--source-instance-template フラグを使用します。

gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
    --auto-delete-auto-created-reservations \
    --description="DESCRIPTION" \
    --name-prefix=NAME_PREFIX \
    --planning-status=PLANNING_STATUS \
    --project=PROJECT_ID \
    --share-setting=projects \
    --share-with=CONSUMER_PROJECT_IDS \
    --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
    --start-time=START_TIME \
    --end-time=END_TIME \
    --total-count=TOTAL_COUNT \
    --zone=ZONE

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

  • FUTURE_RESERVATION_NAME: 作成する将来の予約リクエストの名前。
  • DESCRIPTION: 省略可。将来の予約リクエストの説明。
  • NAME_PREFIX: 将来の予約リクエストの名前の接頭辞。将来の予約リクエスト用に自動作成される各予約の名前は、名前の接頭辞で始まります。将来の予約リクエスト用に自動的に作成された予約を特定しやすくするために、一意の名前の接頭辞を指定することをおすすめします。

  • PLANNING_STATUS: 省略可。将来の予約リクエストの計画ステータスは次のいずれかにする必要があります。

    • 将来の予約リクエストの下書きを作成するには、DRAFT を指定します。

    • 将来の予約リクエストを作成して承認のために Google Cloud に送信するには、SUBMITTED を指定します。

    --planning-status フラグを省略すると、値は DRAFT に設定されます。

  • PROJECT_ID: リソースを予約するプロジェクトとインスタンス テンプレートが配置されているプロジェクトの ID。

  • CONSUMER_PROJECT_IDS: この将来の予約リクエストを共有できるプロジェクトのプロジェクト ID のカンマ区切りリスト。たとえば、project-1,project-2 を指定します。最大 100 個のプロジェクトを指定できます。これらのプロジェクトは、この将来の予約リクエストが作成されるプロジェクト(オーナー プロジェクト)と同じ組織に存在する必要があります。オーナー プロジェクトを指定しないでください。デフォルトでは、この将来の予約リクエストに自動作成された予約の使用が許可されています。
  • LOCATION: インスタンス テンプレートのロケーション。次のいずれかの値を指定します。

    • グローバル インスタンス テンプレートの場合: global

    • リージョン インスタンス テンプレートの場合: regions/REGIONREGION は、インスタンス テンプレートが配置されているリージョンに置き換えます。リージョン インスタンス テンプレートを指定した場合、インスタンス テンプレートが配置されているリージョン内でのみ VM を予約できます。

  • INSTANCE_TEMPLATE_NAME: 既存のインスタンス テンプレートの名前。インスタンス テンプレートを指定した場合、将来の予約リクエストの作成時にプロパティをオーバーライドすることはできません。そうでない場合は、エラーが発生します。

  • START_TIME: RFC 3339 タイムスタンプとしてフォーマットされた予約期間の開始時間。次のようにする必要があります。

    YYYY-MM-DDTHH:MM:SSOFFSET
    

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

    • YYYY-MM-DD: 4 桁の年、2 桁の月、その月の 2 桁の日をハイフン(-)で区切った日付。

    • HH:MM:SS: 24 時間制の 2 桁の時間、2 桁の分、2 桁の秒をコロン(:)で区切った時刻。

    • OFFSET: 協定世界時(UTC)のオフセット形式で示されるタイムゾーン。たとえば、太平洋標準時(PST)を使用する場合は -08:00 を指定します。オフセットを使用しない場合は、Z を指定します。

    開始時間は、審査を受けるために将来の予約リクエストを送信した日時から 1 年以内にしてください。将来の予約リクエストが承認された後またはロック時間になるまでに、キャンセル、削除、変更するために十分な時間を確保するには、開始時間の推奨値を指定してください。

  • END_TIME: 予約期間の終了日時(RFC 3339 タイムスタンプの形式)。予約期間は 24 時間以上にする必要があります。または、--end-time フラグを --duration=END_DURATION フラグに置き換えることもできます。ここで、END_DURATION は予約期間(秒単位)です。たとえば、1,209,600 秒(14 日)の場合は 1209600 を指定します。

    審査を受けるために送信した将来の予約リクエストが Google Cloud で承認される可能性を高めるために、必ず予約期間の推奨値のいずれかを指定します。

  • TOTAL_COUNT: この将来の予約リクエストで指定された期間、VM 構成、プロジェクトに対して予約する VM の合計数。

    承認された将来の予約のために作成する予約の数を計算するとき、Compute Engine はまず既存の予約を確認します。承認された将来の予約に一致する既存の予約がある場合は、リクエストで要求された予約の合計数から既存の予約数が差し引かれ、Compute Engine が作成する新しい予約の数が決定されます。詳細については、Compute Engine での予約済みリソースのカウントとプロビジョニングの方法をご覧ください。

  • ZONE: リソースを予約するゾーン。

--auto-delete-auto-created-reservations フラグを指定すると、Compute Engine は将来の予約リクエスト用に自動作成された予約を自動的に削除します。デフォルトでは、削除時間は予約期間の終了時間から 2 時間以内です。必要に応じて、次のいずれかの方法でこの時間を変更できます。

  • 自動作成された予約を予約期間の終了時間後に削除するには、次のいずれかの方法を選択します。

    • 自動作成された予約を予約期間の終了時間後の特定の時間に削除するには、--auto-delete-auto-created-reservations フラグと --auto-created-reservations-delete-time フラグを指定します。

      gcloud beta compute future-reservations create example-future-reservation \
          --auto-delete-auto-created-reservations \
          --auto-created-reservations-delete-time=AUTO_CREATED_RESERVATIONS_DELETE_TIME \
          ...
      

      AUTO_CREATED_RESERVATIONS_DELETE_TIME は、RFC 3339 タイムスタンプ形式の日時に置き換えます。

    • 自動作成された予約を予約期間の終了時間から特定の時間が経過した後に削除するには、--auto-delete-auto-created-reservations フラグと --auto-created-reservations-duration フラグを指定します。

      gcloud beta compute future-reservations create example-future-reservation \
          --auto-delete-auto-created-reservations \
          --auto-created-reservations-duration=DURATION_BEFORE_DELETE \
          ...
      

      DURATION_BEFORE_DELETE は、期間(日、時間、分、秒)に置き換えます。たとえば、30 分の場合は 30m を指定し、1 日、2 時間、3 分、4 秒の場合は 1d2h3m4s を指定します。

  • Compute Engine で自動作成された予約が自動的に削除されないようにするには、--no-auto-delete-auto-created-reservations フラグを指定します。自動作成された予約をコミットメントに関連付ける場合は、自動削除オプションを無効にする必要があります。

    gcloud beta compute future-reservations create example-future-reservation \
        --no-auto-delete-auto-created-reservations \
        ...
    

たとえば、次のコマンドでは 80 台の VM の example-template グローバル インスタンス テンプレートを使用して、将来の予約リクエストの下書きを作成します。将来の予約リクエストは project-1 および project-2 と共有されます。予約期間は 2023 年 11 月 10 日(UTC)の深夜 0 時から 2023 年 12 月 10 日(UTC)の深夜 0 時までです。将来の予約用に自動作成される予約はゾーン us-central1-a で作成され、名前は fr-02-reservation で始まります。自動作成される予約は 2023 年 12 月 13 日(UTC)の深夜 0 時に自動的に削除されます。

gcloud beta compute future-reservations create fr-02 \
    --auto-delete-auto-created-reservations \
    --auto-created-reservations-delete-time=2023-12-13T00:00:00Z \
    --name-prefix=fr-02-reservation \
    --planning-status=DRAFT \
    --project=example-project \
    --share-setting=projects \
    --share-with=project-1,project-2 \
    --source-instance-template=projects/example-project/global/instanceTemplates/example-template \
    --start-time=2023-11-10T00:00:00Z \
    --end-time=2023-12-10T00:00:00Z \
    --total-count=80 \
    --zone=us-central1-a

REST

インスタンス テンプレートを指定して共有の将来の予約リクエストを作成するには、beta.futureReservations.insert メソッドPOST リクエストを送信します。

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations

{
  "autoDeleteAutoCreatedReservations": "AUTO_DELETE_AUTO_CREATED_RESERVATIONS",
  "description": "DESCRIPTION",
  "name": "FUTURE_RESERVATION_NAME",
  "namePrefix": "NAME_PREFIX",
  "planningStatus": "PLANNING_STATUS",
  "shareSettings": {
    "projects": [
      "CONSUMER_PROJECT_ID_1",
      "CONSUMER_PROJECT_ID_2"
    ],
    "shareType": "SPECIFIC_PROJECTS"
  },
  "specificSkuProperties": { 
    "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME",
    "totalCount": "TOTAL_COUNT"
  },
  "timeWindow": {
    "startTime": "START_TIME",
    "endTime": "END_TIME"
  }
}

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

  • PROJECT_ID: リソースを予約するプロジェクトとインスタンス テンプレートが配置されているプロジェクトの ID。

  • ZONE: リソースを予約するゾーン。

  • AUTO_DELETE_AUTO_CREATED_RESERVATIONS: このフィールドを true に設定すると、将来の予約リクエスト用に自動作成された予約は、完全に使用されたかどうかに関係なく Compute Engine によって自動的に削除されます。自動作成された予約をコミットメントに関連付ける場合は、このフィールドを false に設定します。

    デフォルトでは、削除時間は予約期間の終了時間から 2 時間以内です。これを変更するには、次のいずれかの操作を行います。

    • 自動作成された予約を予約期間の終了後の特定の時間に削除するには、autoDeleteAutoCreatedReservationstrue に設定し、autoCreatedReservationsDeleteTime フィールドを指定します。

      POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations
      
      {
        "autoDeleteAutoCreatedReservations": "true",
        "autoCreatedReservationsDeleteTime": "DELETE_TIME",
        ...
      }
      

      DELETE_TIME を、自動作成された予約が Compute Engine によって削除される日時に置き換えます。日時は、RFC 3339 タイムスタンプの形式で指定する必要があります。次のように指定します。

      YYYY-MM-DDTHH:MM:SSOFFSET
      

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

      • YYYY-MM-DD: 4 桁の年、2 桁の月、その月の 2 桁の日をハイフン(-)で区切った日付。

      • HH:MM:SS: 24 時間制の 2 桁の時間、2 桁の分、2 桁の秒をコロン(:)で区切った時間。

      • OFFSET: 協定世界時(UTC)タイムゾーンのオフセット形式で示されるタイムゾーン。たとえば、太平洋標準時(PST)のタイムゾーンを使用する場合は -08:00 を指定します。オフセットを使用しない場合は、Z を指定します。

    • 自動作成された予約を予約期間の開始時間から特定の時間が経過した後に削除するには、autoDeleteAutoCreatedReservationstrue に設定し、autoCreatedReservationsDuration フィールドを指定します。

      POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations
      
      {
        "autoDeleteAutoCreatedReservations": "true",
        "autoCreatedReservationsDuration": {
          "seconds": "DURATION_BEFORE_DELETE"
        },
        ...
      }
      

      DURATION_BEFORE_DELETE は期間(秒単位)に置き換えます。たとえば、604,800 秒(7 日)の場合は 604800 を指定します。

  • DESCRIPTION: 省略可。将来の予約リクエストの説明。

  • FUTURE_RESERVATION_NAME: 作成する将来の予約リクエストの名前。

  • NAME_PREFIX: 将来の予約リクエストの名前の接頭辞。将来の予約リクエスト用に自動作成される各予約の名前は、名前の接頭辞で始まります。将来の予約リクエスト用に自動的に作成された予約を特定しやすくするために、一意の名前の接頭辞を指定することをおすすめします。

  • CONSUMER_PROJECT_ID_1CONSUMER_PROJECT_ID_2: この将来の予約リクエストを共有できるプロジェクトのプロジェクト ID。最大 100 個のプロジェクトを指定できます。これらのプロジェクトは、この将来の予約リクエストが作成されるプロジェクト(オーナー プロジェクト)と同じ組織に存在する必要があります。オーナー プロジェクトを指定しないでください。デフォルトでは、この将来の予約リクエストに自動作成された予約の使用が許可されています。
  • PLANNING_STATUS: 省略可。将来の予約リクエストの計画ステータスは次のいずれかにする必要があります。

    • 将来の予約リクエストの下書きを作成するには、DRAFT を指定します。

    • 将来の予約リクエストを作成して承認のために Google Cloud に送信するには、SUBMITTED を指定します。

    planningStatus フィールドを省略すると、値は DRAFT に設定されます。

  • LOCATION: インスタンス テンプレートのロケーション。次のいずれかの値を指定します。

    • グローバル インスタンス テンプレートの場合: global

    • リージョン インスタンス テンプレートの場合: regions/REGIONREGION は、インスタンス テンプレートが配置されているリージョンに置き換えます。リージョン インスタンス テンプレートを指定した場合、インスタンス テンプレートが配置されているリージョン内でのみ VM を予約できます。

  • INSTANCE_TEMPLATE_NAME: 既存のインスタンス テンプレートの名前。インスタンス テンプレートを指定した場合、将来の予約リクエストの作成時にプロパティをオーバーライドすることはできません。そうでない場合は、エラーが発生します。

  • TOTAL_COUNT: この将来の予約リクエストで指定された期間、VM 構成、プロジェクトに対して予約する VM の合計数。

    承認された将来の予約のために作成する予約の数を計算するとき、Compute Engine はまず既存の予約を確認します。承認された将来の予約に一致する既存の予約がある場合は、リクエストで要求された予約の合計数から既存の予約数が差し引かれ、Compute Engine が作成する新しい予約の数が決定されます。詳細については、Compute Engine での予約済みリソースのカウントとプロビジョニングの方法をご覧ください。

  • START_TIME: 予約期間の開始時間(RFC 3339 タイムスタンプの形式)。開始時間は、審査を受けるために将来の予約リクエストを送信した日時から 1 年以内にしてください。または、必ず開始時間の推奨値を指定して、将来の予約がロック時間になるまでに十分な時間を確保できるようにしてください。

  • END_TIME: 予約期間の終了日時(RFC 3339 タイムスタンプの形式)。予約期間は 24 時間以上にする必要があります。または、endTime フィールドを duration フィールドに置き換えて、予約期間の開始時間から特定の期間を指定することもできます。

    "duration": {
      "seconds": "END_DURATION"
    }
    

    END_DURATION を期間(秒単位)に置き換えます。たとえば、1,209,600 秒(14 日)の場合は 1209600 を指定します。

    審査を受けるために送信した将来の予約リクエストが Google Cloud で承認される可能性を高めるために、必ず予約期間の推奨値のいずれかを指定します。

たとえば、次のコマンドでは 80 台の VM の example-template グローバル インスタンス テンプレートを使用して、将来の予約リクエストの下書きを作成します。将来の予約リクエストは project-1 および project-2 と共有されます。予約期間は 2023 年 11 月 10 日(UTC)の深夜 0 時から 2023 年 12 月 10 日(UTC)の深夜 0 時までです。将来の予約用に自動作成される予約はゾーン us-central1-a で作成され、名前は fr-02-reservation で始まります。自動作成される予約は 2023 年 12 月 13 日(UTC)の深夜 0 時に自動的に削除されます。

POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations

{
  "autoDeleteAutoCreatedReservations": "true",
  "autoCreatedReservationsDeleteTime": "2023-12-13T00:00:00Z",
  "name": "fr-02",
  "namePrefix": "fr-02-reservation",
  "specificSkuProperties": { 
    "sourceInstanceTemplate": "projects/example-project/global/instanceTemplates/example-template",
    "totalCount": "80"
  },
  "planningStatus": "DRAFT",
  "shareSettings": {
    "projects": [
      "project-1",
      "project-2"
    ],
    "shareType": "SPECIFIC_PROJECTS"
  },
  "timeWindow": {
    "startTime": "2023-11-10T00:00:00Z",
    "endTime": "2023-12-10T00:00:00Z"
  }
}

VM のプロパティを直接指定する

Google Cloud コンソール、gcloud CLI、REST を使用してプロパティを直接指定することで、将来の共有予約リクエストを作成できます。

コンソール

プロパティを直接指定して将来の共有予約リクエストを作成するには、次の操作を行います。

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

    [予約] に移動

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

  3. [将来の予約を作成] をクリックします。

    [将来の予約を作成] ページが開きます。

  4. [名前] フィールドに、将来の予約リクエストの名前を入力します。

  5. [接頭辞] フィールドに、名前の接頭辞を入力します。将来の予約リクエストから自動作成された各予約の名前は、この接頭辞で始まります。

    この将来の予約リクエスト用に自動作成された予約を特定しやすくするために、一意の名前の接頭辞を指定することをおすすめします。

  6. オプション: [説明] フィールドに、将来の予約リクエストの説明を入力します。

  7. [リージョン] フィールドで、リソースを予約するリージョンを選択します。

  8. [ゾーン] フィールドで、リソースを予約するゾーンを選択します。

  9. [開始時間] フィールドに、予約期間の開始時間を入力します。開始時間は、審査を受けるために将来の予約リクエストを送信した日時から 1 年以内にしてください。

    必ず開始時間の推奨値を指定して、将来の予約がロック時間になるまでに十分な時間を確保できるようにしてください。

  10. [終了時間] フィールドに、予約期間の終了時間を入力します。予約期間は 24 時間以上にする必要があります。

    [Duration summary] セクションで、予約期間の長さを確認できます。審査を受けるために送信した将来の予約リクエストが Google Cloud で承認される可能性を高めるために、必ず予約期間の推奨値を指定します。

  11. [共有タイプ] セクションで、次の操作を行います。

    1. 将来の共有予約リクエストを指定するには、[共有] をクリックします。

    2. [プロジェクトを追加] をクリックし、予約を共有する現在のプロジェクトの組織からプロジェクトを選択します。

      最大 100 個のプロジェクトを選択できます。現在のプロジェクトは選択しないでください。デフォルトでは、この将来の予約リクエストに自動作成された予約の使用が許可されています。

  12. [VM インスタンスの数] フィールドに、将来の予約リクエストで指定された期間、VM 構成、プロジェクトに予約する VM の合計数を入力します。

    開始時間の直前に、承認された将来の予約リクエストに対して作成する新しい予約の数を計算すると、Compute Engine はこの合計からリクエストに一致する既存の予約を差し引きます。詳細については、Compute Engine での予約済みリソースのカウントとプロビジョニングの方法をご覧ください。

  13. [マシンの構成] セクションで、次の手順を実施します。

    1. [マシンタイプを指定] を選択します(デフォルト)。

    2. 次のオプションのいずれかを選択します。

      • 一般的なワークロードの場合は、[汎用] タブをクリックします(デフォルト)。

      • 高いパフォーマンスが要求されるワークロードの場合は、[コンピューティング最適化] タブをクリックします。

      • メモリ対 vCPU 比が高いワークロードの場合は、[メモリ最適化] タブをクリックします。

      • 画像処理装置(GPU)を使用するワークロードの場合は、[GPU] タブをクリックします。

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

      • 前の手順で [汎用]、[コンピューティング最適化]、または [メモリ最適化] を指定した場合、次の手順を実施します。

        1. [シリーズ] リストで、[マシンシリーズ] を選択します。

        2. [マシンタイプ] リストで、マシンタイプを選択します。

        3. オプション: 予約をリクエストする VM のマシンをさらにカスタマイズするには、[高度な構成] を開き、画面上の手順に沿って操作します。

      • 前の手順で [GPU] を指定した場合は、次の手順を実施します。

        1. [GPU のタイプ] メニューで、GPU のタイプを選択します。

        2. [GPU の数] メニューで、GPU の数を選択します。

        3. オプション: GPU のタイプで許可されていて、予約済みのリソースを使用してグラフィックを多用するワークロードを実行する場合は、[仮想ワークステーション(NVIDIA GRID)を有効にする] チェックボックスをオンにします。

        4. [マシンタイプ] リストで、マシンタイプを選択します。

        5. [CPU プラットフォーム] リストで、予約する VM の CPU プラットフォームを選択します。

    4. オプション: マシンタイプで許可されていて、ローカル SSD を追加する場合は、次の手順を実施します。

      1. [ディスク数] フィールドで、ローカル SSD のディスク数を選択します。

      2. [インターフェース タイプ] セクションで、次のいずれかのインターフェースを選択します。

        • SCSI(デフォルト)

        • NVMe

  14. [自動生成された予約の自動削除日時] セクションで、次のいずれかを行います。

    • 将来の予約リクエスト用に自動作成された予約を Compute Engine が自動的に削除できるようにするには、次の手順を実施します。

      1. [自動削除を有効にする] をクリックしてオン(デフォルト)にします。

      2. オプション: [自動削除日時] フィールドに、自動作成された予約を削除する新しい日時を入力します。日時は予約期間の終了日より後にする必要があります。このフィールドを空のままにすると、自動作成された予約は予約期間の終了時間から 2 時間以内に削除されます。

    • 自動削除しない場合は、[自動削除を有効にする] をクリックしてオフにします。

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

    • 将来の予約リクエストを作成して審査を受けるために Google Cloud に送信するには、[送信] をクリックします。

    • 将来の予約リクエストの下書きを作成するには、[下書きを保存] をクリックします。

    • 保存せずに終了する場合は、[キャンセル] をクリックします。

[予約] ページが開きます。将来の予約リクエストの作成が完了するまでに 1 分ほどかかることがあります。

gcloud

プロパティを直接指定して将来の共有予約リクエストを作成するには、gcloud beta compute future-reservations create コマンドを使用します。

gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
    --accelerator=count=NUMBER_OF_ACCELERATORS,type=ACCELERATOR_TYPE \
    --auto-delete-auto-created-reservations \
    --description="DESCRIPTION" \
    --local-ssd=size=375,interface=INTERFACE_1 \
    --local-ssd=size=375,interface=INTERFACE_2 \
    --machine-type=MACHINE_TYPE \
    --min-cpu-platform=MIN_CPU_PLATFORM \
    --name-prefix=NAME_PREFIX \
    --planning-status=PLANNING_STATUS \
    --project=PROJECT_ID \
    --share-setting=projects \
    --share-with=CONSUMER_PROJECT_IDS \
    --start-time=START_TIME \
    --end-time=END_TIME \
    --total-count=TOTAL_COUNT \
    --zone=ZONE

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

  • FUTURE_RESERVATION_NAME: 作成する将来の予約リクエストの名前。
  • オプション: 予約された各 VM に画像処理装置(GPU)を追加するには、以下を指定します。

    • NUMBER_OF_ACCELERATORS: 予約済みの VM 1 台あたりに追加する GPU の数。

    • ACCELERATOR_TYPE: 予約済みの VM に追加する GPU のタイプ。

    将来の予約リクエストで指定したマシンタイプが、指定する GPU のタイプをサポートしていることと、リソースを予約するゾーンで GPU を使用できることを確認します。そうでない場合は、エラーが発生します。

  • DESCRIPTION: 省略可。将来の予約リクエストの説明。
  • INTERFACE_1INTERFACE_2: 省略可。各 VM のローカル SSD が使用するインターフェースのタイプ。値は次のいずれかにする必要があります。

    各ローカル SSD は 375 GB です。追加するローカル SSD ごとに --local-ssd フラグを繰り返します。最大 24 個のローカル SSD を指定できます。

  • MACHINE_TYPE: 各 VM に使用するマシンタイプ。次のいずれかの値を指定します。

    • 事前定義されたマシンタイプの場合: MACHINE_FAMILY-standard-CPUS

    • カスタム マシンタイプの場合: MACHINE_FAMILY-custom-CPUS-MEMORYカスタム マシンタイプを指定する前に、カスタム マシンタイプの VM の制限事項を確認してください。

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

    • MACHINE_FAMILY: マシン ファミリー。

    • CPUS: vCPU の数。

    • MEMORY: 予約済み VM の合計メモリ。メモリは 256 MB の倍数で、MB 単位で指定する必要があります。

    たとえば、4 つの vCPU と 5 GB(5,120 MB)のメモリで N2 カスタム マシンタイプを指定するには、n2-custom-4-5120 を指定します。

  • MINIMUM_CPU_PLATFORM: 省略可。各 VM に使用する最小 CPU プラットフォーム--min-cpu-platform フラグを省略すると、その値はゾーンのデフォルトの CPU プラットフォームに設定されます。

  • NAME_PREFIX: 将来の予約リクエストの名前の接頭辞。将来の予約リクエスト用に自動作成される各予約の名前は、名前の接頭辞で始まります。将来の予約リクエスト用に自動的に作成された予約を特定しやすくするために、一意の名前の接頭辞を指定することをおすすめします。

  • PLANNING_STATUS: 省略可。将来の予約リクエストの計画ステータスは次のいずれかにする必要があります。

    • 将来の予約リクエストの下書きを作成するには、DRAFT を指定します。

    • 将来の予約リクエストを作成して承認のために Google Cloud に送信するには、SUBMITTED を指定します。

    --planning-status フラグを省略すると、値は DRAFT に設定されます。

  • PROJECT_ID: リソースを予約するプロジェクトの ID。

  • CONSUMER_PROJECT_IDS: この将来の予約リクエストを共有できるプロジェクトのプロジェクト ID のカンマ区切りリスト。たとえば、project-1,project-2 を指定します。最大 100 個のプロジェクトを指定できます。これらのプロジェクトは、この将来の予約リクエストが作成されるプロジェクト(オーナー プロジェクト)と同じ組織に存在する必要があります。オーナー プロジェクトを指定しないでください。デフォルトでは、この将来の予約リクエストに自動作成された予約の使用が許可されています。
  • START_TIME: RFC 3339 タイムスタンプとしてフォーマットされた予約期間の開始時間。次のようにする必要があります。

    YYYY-MM-DDTHH:MM:SSOFFSET
    

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

    • YYYY-MM-DD: 4 桁の年、2 桁の月、その月の 2 桁の日をハイフン(-)で区切った日付。

    • HH:MM:SS: 24 時間制の 2 桁の時間、2 桁の分、2 桁の秒をコロン(:)で区切った時刻。

    • OFFSET: 協定世界時(UTC)のオフセット形式で示されるタイムゾーン。たとえば、太平洋標準時(PST)を使用する場合は -08:00 を指定します。オフセットを使用しない場合は、Z を指定します。

    開始時間は、審査を受けるために将来の予約リクエストを送信した日時から 1 年以内にしてください。将来の予約リクエストが承認された後またはロック時間になるまでに、キャンセル、削除、変更するために十分な時間を確保するには、開始時間の推奨値を指定してください。

  • END_TIME: 予約期間の終了日時(RFC 3339 タイムスタンプの形式)。予約期間は 24 時間以上にする必要があります。または、--end-time フラグを --duration=END_DURATION フラグに置き換えることもできます。ここで、END_DURATION は予約期間(秒単位)です。たとえば、1,209,600 秒(14 日)の場合は 1209600 を指定します。

    審査を受けるために送信した将来の予約リクエストが Google Cloud で承認される可能性を高めるために、必ず予約期間の推奨値のいずれかを指定します。

  • TOTAL_COUNT: この将来の予約リクエストで指定された期間、VM 構成、プロジェクトに対して予約する VM の合計数。

    承認された将来の予約のために作成する予約の数を計算するとき、Compute Engine はまず既存の予約を確認します。承認された将来の予約に一致する既存の予約がある場合は、リクエストで要求された予約の合計数から既存の予約数が差し引かれ、Compute Engine が作成する新しい予約の数が決定されます。詳細については、Compute Engine での予約済みリソースのカウントとプロビジョニングの方法をご覧ください。

  • ZONE: リソースを予約するゾーン。

--auto-delete-auto-created-reservations フラグを指定すると、Compute Engine は将来の予約リクエスト用に自動作成された予約を自動的に削除します。デフォルトでは、削除時間は予約期間の終了時間から 2 時間以内です。必要に応じて、次のいずれかの方法でこの時間を変更できます。

  • 自動作成された予約を予約期間の終了時間後に削除するには、次のいずれかの方法を選択します。

    • 自動作成された予約を予約期間の終了時間後の特定の時間に削除するには、--auto-delete-auto-created-reservations フラグと --auto-created-reservations-delete-time フラグを指定します。

      gcloud beta compute future-reservations create example-future-reservation \
          --auto-delete-auto-created-reservations \
          --auto-created-reservations-delete-time=AUTO_CREATED_RESERVATIONS_DELETE_TIME \
          ...
      

      AUTO_CREATED_RESERVATIONS_DELETE_TIME は、RFC 3339 タイムスタンプ形式の日時に置き換えます。

    • 自動作成された予約を予約期間の終了時間から特定の時間が経過した後に削除するには、--auto-delete-auto-created-reservations フラグと --auto-created-reservations-duration フラグを指定します。

      gcloud beta compute future-reservations create example-future-reservation \
          --auto-delete-auto-created-reservations \
          --auto-created-reservations-duration=DURATION_BEFORE_DELETE \
          ...
      

      DURATION_BEFORE_DELETE は、期間(日、時間、分、秒)に置き換えます。たとえば、30 分の場合は 30m を指定し、1 日、2 時間、3 分、4 秒の場合は 1d2h3m4s を指定します。

  • Compute Engine で自動作成された予約が自動的に削除されないようにするには、--no-auto-delete-auto-created-reservations フラグを指定します。自動作成された予約をコミットメントに関連付ける場合は、自動削除オプションを無効にする必要があります。

    gcloud beta compute future-reservations create example-future-reservation \
        --no-auto-delete-auto-created-reservations \
        ...
    

たとえば、次のコマンドでは 80 台の VM に対する将来の予約リクエストの下書きが作成されます。将来の予約リクエストは project-1 および project-2 と共有されます。予約期間は 2023 年 11 月 10 日(UTC)の深夜 0 時から 2023 年 12 月 10 日(UTC)の深夜 0 時までです。予約済みの VM は、マシンタイプ n2-standard-4、最小 CPU プラットフォーム skylakescsi インターフェースを備えた 1 つのローカル SSD(それぞれ 375 GB)を指定します。将来の予約用に自動作成される予約はゾーン us-central1-a で作成され、名前は fr-02-reservation で始まります。自動作成される予約は 2023 年 12 月 13 日(UTC)の深夜 0 時に自動的に削除されます。

gcloud beta compute future-reservations create fr-02 \
    --auto-delete-auto-created-reservations \
    --auto-created-reservations-delete-time=2023-12-13T00:00:00Z \
    --local-ssd=size=375,interface=scsi \
    --machine-type=n2-standard-4 \
    --min-cpu-platform=skylake \
    --name-prefix=fr-02-reservation \
    --planning-status=DRAFT \
    --project=example-project \
    --share-setting=projects \
    --share-with=project-1,project-2 \
    --start-time=2023-11-10T00:00:00Z \
    --end-time=2023-12-10T00:00:00Z \
    --total-count=80 \
    --zone=us-central1-a

REST

プロパティを直接指定して将来の共有予約リクエストを作成するには、beta.futureReservations.insert メソッドPOST リクエストを送信します。

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations

{
  "autoDeleteAutoCreatedReservations": "AUTO_DELETE_AUTO_CREATED_RESERVATIONS",
  "description": "DESCRIPTION",
  "name": "FUTURE_RESERVATION_NAME",
  "namePrefix": "NAME_PREFIX",
  "planningStatus": "PLANNING_STATUS",
  "shareSettings": {
    "projects": [
      "CONSUMER_PROJECT_ID_1",
      "CONSUMER_PROJECT_ID_2"
    ],
    "shareType": "SPECIFIC_PROJECTS"
  },
  "specificSkuProperties": { 
    "instanceProperties": {
      "guestAccelerators": [
        {
          "acceleratorCount": NUMBER_OF_ACCELERATORS,
          "acceleratorType": "ACCELERATOR_TYPE"
        }
      ],
      "localSsds": [
        {
          "diskSizeGb": "375",
          "interface": "INTERFACE_1"
        },
        {
          "diskSizeGb": "375",
          "interface": "INTERFACE_2"
        }
      ],
      "machineType": "MACHINE_TYPE",
      "minCpuPlatform": "MINIMUM_CPU_PLATFORM"
    },
    "totalCount": "TOTAL_COUNT"
  },
  "timeWindow": {
    "startTime": "START_TIME",
    "endTime": "END_TIME"
  }
}

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

  • PROJECT_ID: リソースを予約するプロジェクトの ID。

  • ZONE: リソースを予約するゾーン。

  • AUTO_DELETE_AUTO_CREATED_RESERVATIONS: このフィールドを true に設定すると、将来の予約リクエスト用に自動作成された予約は、完全に使用されたかどうかに関係なく Compute Engine によって自動的に削除されます。自動作成された予約をコミットメントに関連付ける場合は、このフィールドを false に設定します。

    デフォルトでは、削除時間は予約期間の終了時間から 2 時間以内です。これを変更するには、次のいずれかの操作を行います。

    • 自動作成された予約を予約期間の終了後の特定の時間に削除するには、autoDeleteAutoCreatedReservationstrue に設定し、autoCreatedReservationsDeleteTime フィールドを指定します。

      POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations
      
      {
        "autoDeleteAutoCreatedReservations": "true",
        "autoCreatedReservationsDeleteTime": "DELETE_TIME",
        ...
      }
      

      DELETE_TIME を、自動作成された予約が Compute Engine によって削除される日時に置き換えます。日時は、RFC 3339 タイムスタンプの形式で指定する必要があります。次のように指定します。

      YYYY-MM-DDTHH:MM:SSOFFSET
      

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

      • YYYY-MM-DD: 4 桁の年、2 桁の月、その月の 2 桁の日をハイフン(-)で区切った日付。

      • HH:MM:SS: 24 時間制の 2 桁の時間、2 桁の分、2 桁の秒をコロン(:)で区切った時間。

      • OFFSET: 協定世界時(UTC)タイムゾーンのオフセット形式で示されるタイムゾーン。たとえば、太平洋標準時(PST)のタイムゾーンを使用する場合は -08:00 を指定します。オフセットを使用しない場合は、Z を指定します。

    • 自動作成された予約を予約期間の開始時間から特定の時間が経過した後に削除するには、autoDeleteAutoCreatedReservationstrue に設定し、autoCreatedReservationsDuration フィールドを指定します。

      POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations
      
      {
        "autoDeleteAutoCreatedReservations": "true",
        "autoCreatedReservationsDuration": {
          "seconds": "DURATION_BEFORE_DELETE"
        },
        ...
      }
      

      DURATION_BEFORE_DELETE は期間(秒単位)に置き換えます。たとえば、604,800 秒(7 日)の場合は 604800 を指定します。

  • DESCRIPTION: 省略可。将来の予約リクエストの説明。

  • FUTURE_RESERVATION_NAME: 作成する将来の予約リクエストの名前。

  • NAME_PREFIX: 将来の予約リクエストの名前の接頭辞。将来の予約リクエスト用に自動作成される各予約の名前は、名前の接頭辞で始まります。将来の予約リクエスト用に自動的に作成された予約を特定しやすくするために、一意の名前の接頭辞を指定することをおすすめします。

  • CONSUMER_PROJECT_ID_1CONSUMER_PROJECT_ID_2: この将来の予約リクエストを共有できるプロジェクトのプロジェクト ID。最大 100 個のプロジェクトを指定できます。これらのプロジェクトは、この将来の予約リクエストが作成されるプロジェクト(オーナー プロジェクト)と同じ組織に存在する必要があります。オーナー プロジェクトを指定しないでください。デフォルトでは、この将来の予約リクエストに自動作成された予約の使用が許可されています。
  • PLANNING_STATUS: 省略可。将来の予約リクエストの計画ステータスは次のいずれかにする必要があります。

    • 将来の予約リクエストの下書きを作成するには、DRAFT を指定します。

    • 将来の予約リクエストを作成して承認のために Google Cloud に送信するには、SUBMITTED を指定します。

    planningStatus フィールドを省略すると、値は DRAFT に設定されます。

  • オプション: 予約された各 VM に画像処理装置(GPU)を追加するには、以下を指定します。

    • NUMBER_OF_ACCELERATORS: 予約済みの VM 1 台あたりに追加する GPU の数。

    • ACCELERATOR_TYPE: 予約済みの VM に追加する GPU のタイプ。

    将来の予約リクエストで指定したマシンタイプが、指定する GPU のタイプをサポートしていることと、リソースを予約するゾーンで GPU を使用できることを確認します。そうでない場合は、エラーが発生します。

  • INTERFACE_1INTERFACE_2: 省略可。各 VM のローカル SSD が使用するインターフェースのタイプ。値は次のいずれかにする必要があります。

    各ローカル SSD は 375 GB です。追加するローカル SSD ごとに --local-ssd フラグを繰り返します。最大 24 個のローカル SSD を指定できます。

  • MACHINE_TYPE: 各 VM に使用するマシンタイプ。次のいずれかの値を指定します。

    • 事前定義されたマシンタイプの場合: MACHINE_FAMILY-standard-CPUS

    • カスタム マシンタイプの場合: MACHINE_FAMILY-custom-CPUS-MEMORYカスタム マシンタイプを指定する前に、カスタム マシンタイプの VM の制限事項を確認してください。

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

    • MACHINE_FAMILY: マシン ファミリー。

    • CPUS: vCPU の数。

    • MEMORY: 予約済み VM の合計メモリ。メモリは 256 MB の倍数で、MB 単位で指定する必要があります。

    たとえば、4 つの vCPU と 5 GB(5,120 MB)のメモリで N2 カスタム マシンタイプを指定するには、n2-custom-4-5120 を指定します。

  • MINIMUM_CPU_PLATFORM: 省略可。各 VM に使用する最小 CPU プラットフォーム--min-cpu-platform フラグを省略すると、その値はゾーンのデフォルトの CPU プラットフォームに設定されます。

  • TOTAL_COUNT: この将来の予約リクエストで指定された期間、VM 構成、プロジェクトに対して予約する VM の合計数。

    承認された将来の予約のために作成する予約の数を計算するとき、Compute Engine はまず既存の予約を確認します。承認された将来の予約に一致する既存の予約がある場合は、リクエストで要求された予約の合計数から既存の予約数が差し引かれ、Compute Engine が作成する新しい予約の数が決定されます。詳細については、Compute Engine での予約済みリソースのカウントとプロビジョニングの方法をご覧ください。

  • START_TIME: 予約期間の開始時間(RFC 3339 タイムスタンプの形式)。開始時間は、審査を受けるために将来の予約リクエストを送信した日時から 1 年以内にしてください。または、必ず開始時間の推奨値を指定して、将来の予約がロック時間になるまでに十分な時間を確保できるようにしてください。

  • END_TIME: 予約期間の終了日時(RFC 3339 タイムスタンプの形式)。予約期間は 24 時間以上にする必要があります。または、endTime フィールドを duration フィールドに置き換えて、予約期間の開始時間から特定の期間を指定することもできます。

    "duration": {
      "seconds": "END_DURATION"
    }
    

    END_DURATION を期間(秒単位)に置き換えます。たとえば、1,209,600 秒(14 日)の場合は 1209600 を指定します。

    審査を受けるために送信した将来の予約リクエストが Google Cloud で承認される可能性を高めるために、必ず予約期間の推奨値のいずれかを指定します。

たとえば、次のコマンドでは 80 台の VM に対する将来の予約リクエストの下書きが作成されます。 将来の予約リクエストは project-1 および project-2 と共有されます。予約期間は 2023 年 11 月 10 日(UTC)の深夜 0 時から 2023 年 12 月 10 日(UTC)の深夜 0 時までです。予約済みの VM は、マシンタイプ n2-standard-4、最小 CPU プラットフォーム skylakeSCSI インターフェースを備えた 1 つのローカル SSD(それぞれ 375 GB)を指定します。将来の予約用に自動作成される予約はゾーン us-central1-a で作成され、名前は fr-02-reservation で始まります。自動作成される予約は 2023 年 12 月 13 日(UTC)の深夜 0 時に自動的に削除されます。

POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations

{
  "autoDeleteAutoCreatedReservations": "true",
  "autoCreatedReservationsDeleteTime": "2023-12-13T00:00:00Z",
  "name": "fr-02",
  "namePrefix": "fr-02-reservation",
  "specificSkuProperties": { 
    "instanceProperties": {
      "localSsds": [
        {
          "diskSizeGb": "375",
          "interface": "SCSI"
        }
      ],
      "machineType": "n2-standard-4",
      "minCpuPlatform": "Skylake"
    },
    "totalCount": "80"
  },
  "planningStatus": "DRAFT",
  "shareSettings": {
    "projects": [
      "project-1",
      "project-2"
    ],
    "shareType": "SPECIFIC_PROJECTS"
  },
  "timeWindow": {
    "startTime": "2023-11-10T00:00:00Z",
    "endTime": "2023-12-10T00:00:00Z"
  }
}

審査を受けるために将来の予約リクエストの下書きを送信する

Google Cloud コンソール、gcloud CLI、REST を使用して、Google Cloud に将来の予約リクエストの下書きを送信できます。審査を受けるために将来の予約リクエストの下書きを送信するときに 1 つ以上のプロパティを変更する場合は、下書きまたは承認されなかった将来の予約リクエストを変更するをご覧ください。

コンソール

審査を受けるために将来の予約リクエストの下書きを送信するには、次の手順を実施します。

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

    [予約] に移動

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

  3. [名前] 列で、調達ステータスが [​ドラフト作成中] になっている将来の予約リクエストの名前をクリックします。

    [将来の予約] ページが開き、将来の予約リクエストの詳細が表示されます。

  4. [下書きを編集] をクリックします。

    将来の予約リクエストの下書きの詳細ページが開きます。

  5. 審査を受けるために将来の予約リクエストの下書きを Google Cloud に送信するには、[送信] をクリックします。

[予約] ページが開きます。先ほど送信した将来の予約リクエストの [ステータス] 列で、調達ステータスが [承認待ち] に設定されます。

gcloud

審査を受けるために将来の予約リクエストの下書きを送信するには、--planning-status フラグを SUBMITTED に設定して gcloud beta compute future-reservations update コマンドを使用します。

gcloud beta compute future-reservations update FUTURE_RESERVATION_NAME  \
    --planning-status=SUBMITTED \
    --project=PROJECT_ID \
    --zone=ZONE

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

  • FUTURE_RESERVATION_NAME: 既存の将来の予約リクエストの下書きの名前。

  • PROJECT_ID: 将来の予約リクエストが存在するプロジェクトの ID。

  • ZONE: 将来の予約リクエストが存在するゾーン。

REST

審査を受けるために将来の予約リクエストの下書きを送信するには、planningStatusフィールドをSUBMITTED に設定して beta.futureReservations.updateメソッドPATCH リクエストを送信します。

PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations/FUTURE_RESERVATION_NAME?updateMask=planningStatus

{
  "name": "FUTURE_RESERVATION_NAME",
  "planningStatus": "SUBMITTED"
}

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

  • PROJECT_ID: 将来の予約リクエストが存在するプロジェクトの ID。

  • ZONE: 将来の予約リクエストが存在するゾーン。

  • FUTURE_RESERVATION_NAME: 既存の将来の予約リクエストの下書きの名前。

審査を受けるために将来の予約リクエストの下書きを送信した後、次の操作を行うことができます。

トラブルシューティング

将来の予約リクエストの作成時にエラーが発生した場合は、将来の予約リクエストのトラブルシューティングをご覧ください。

トラブルシューティングを行っても問題が解決しない場合は、テクニカル アカウント マネージャーまたはセールスチームにお問い合わせください。

次のステップ