予約間でホストイベントを管理する

このドキュメントでは、AI Hypercomputer で使用可能なホスト メンテナンス機能の使用方法について説明します。予約された容量ブロックのモニタリング、計画、定期メンテナンスの実行方法について説明します。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

In the Google Cloud console, activate Cloud Shell.

Activate Cloud Shell

At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

REST

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

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

    gcloud init

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

詳細については、 Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。

必要なロール

予約全体でホスト メンテナンス イベントを管理するために必要な権限を取得するには、次の IAM ロールを付与するよう管理者に依頼してください。

  • プロジェクトに対する Compute 管理者roles/compute.admin
  • システム イベントの監査ログに対する読み取り専用権限: プロジェクトに対するログ閲覧者 roles/logging.viewer

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

これらの事前定義ロールには、予約全体でホスト メンテナンス イベントを管理するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

予約全体でホスト メンテナンス イベントを管理するには、次の権限が必要です。

  • 予約のホスト メンテナンスを開始する: プロジェクトに対する compute.reservations.performMaintenance
  • 予約ブロックのホスト メンテナンスを開始する: プロジェクトに対する compute.reservationBlocks.performMaintenance
  • 予約サブブロックのホスト メンテナンスを開始する: プロジェクトに対する compute.reservationSubBlocks.performMaintenance
  • 予約のリストを表示する: プロジェクトに対する compute.reservations.list
  • 予約の詳細を表示する: プロジェクトに対する compute.reservations.get
  • 予約内のブロックのリストを表示する: プロジェクトに対する compute.reservationBlocks.list
  • 予約ブロック内のサブブロックのリストを表示するには: プロジェクトに対する compute.reservationSubBlocks.list

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

概要

まだ確認していない場合は、ホスト メンテナンスについて理解し、対応するをご覧ください。

予約済みの容量ブロックのメンテナンスを最適化する手順は次のとおりです。

  1. 通知アラートを設定します。ログベースのアラートを作成して、予約、予約ブロック、予約サブブロックのスケジュールされたメンテナンス イベント、開始されたメンテナンス イベント、完了したメンテナンス イベントに関する通知を受け取ります。このアプローチにより、アクティビティを事前に計画し、予期しないダウンタイムを回避できます。

  2. 容量ブロック全体でメンテナンスを管理する。予約、予約ブロック、予約サブブロック全体でメンテナンスを表示し、必要に応じて手動で開始します。このプロセスにより、ワークロードのホストエラーに対する復元力を高め、ダウンタイムを防ぎ、アプリケーションの可用性を維持できます。

予約の通知アラートを設定する

予約、予約ブロック、予約サブブロックのスケジュールされたメンテナンス イベント、開始されたメンテナンス イベント、完了したメンテナンス イベントの通知を受け取るには、ログベースのアラート ポリシーを作成します。

予約、予約ブロック、予約サブブロックのメンテナンス イベントのアラートを作成する手順は次のとおりです。作成するアラートごとにこの手順を繰り返します。

  1. Google Cloud コンソールで、 [ログ エクスプローラ] ページに移動します。

    [ログ エクスプローラ] に移動

    検索バーを使用してこのページを検索する場合は、小見出しが [Logging] の結果を選択します。

  2. [クエリを表示] 切り替えボタンをクリックしてオンにします。

  3. クエリペインで、次のいずれかのクエリを作成します。これらのクエリは、ログエントリをフィルタして特定のメンテナンス イベントを識別します。作成するクエリごとにこの手順を繰り返します。

    • 予約のメンテナンス アラートを受け取る:

      • メンテナンスがスケジュールされたときにアラートを受け取るには:

        protoPayload.methodName="compute.reservations.upcomingGroupMaintenance" severity>=DEFAULT
        protoPayload.status.message =~ "scheduled"
        
      • メンテナンスが完了したときにアラートを受け取るには:

        protoPayload.methodName="compute.reservations.completedGroupMaintenance" severity>=DEFAULT
        protoPayload.status.message =~ "completed"
        
    • 予約ブロックのメンテナンス アラートを受信する:

      • メンテナンスがスケジュールされたときにアラートを受け取るには:

        protoPayload.methodName="compute.reservations.block.upcomingGroupMaintenance" severity>=DEFAULT
        protoPayload.status.message =~ "scheduled"
        
      • メンテナンスが開始されたときにアラートを受け取るには:

        protoPayload.methodName="compute.reservations.block.startGroupMaintenance" severity>=DEFAULT
        protoPayload.status.message =~ "started"
        
      • メンテナンスが完了したときにアラートを受け取るには:

        protoPayload.methodName="compute.reservations.block.completedGroupMaintenance" severity>=DEFAULT
        protoPayload.status.message =~ "completed"
        
    • A4X Max インスタンスまたは A4X インスタンスの予約サブブロックのメンテナンス アラートを受け取る:

      • メンテナンスがスケジュールされたときにアラートを受け取るには:

        protoPayload.methodName="compute.reservations.subBlock.upcomingGroupMaintenance" severity>=DEFAULT
        protoPayload.status.message =~ "scheduled"
        
      • メンテナンスが開始されたときにアラートを受け取るには:

        protoPayload.methodName="compute.reservations.subBlock.startGroupMaintenance" severity>=DEFAULT
        protoPayload.status.message =~ "started"
        
      • メンテナンスが完了したときにアラートを受け取るには:

        protoPayload.methodName="compute.reservations.subBlock.completedGroupMaintenance" severity>=DEFAULT
        protoPayload.status.message =~ "completed"
        
      • A4X Max マシンまたは A4X マシンでエラーが発生し、Compute Engine がメンテナンスを開始したときにアラートを受け取るには:

        protoPayload.methodName="compute.reservations.subblock.unusedmachinerepair" severity>=DEFAULT
        protoPayload.status.message =~ "maintenance"
        
      • エラーが発生した A4X Max または A4X マシンのメンテナンスが完了したときにアラートを受け取るには:

        protoPayload.methodName="compute.reservations.subblock.unusedmachinerepaircomplete" severity>=DEFAULT
        protoPayload.status.message =~ "repaired"
        
  4. クエリを検証するため、[クエリを実行] をクリックします。クエリが有効な場合、[クエリ結果] ペインにクエリに一致するログエントリが表示されます。

  5. [クエリ] 結果ツールバーで、[アクション] リストをクリックし、[ ログアラートの作成] を選択します。[ログベースのアラート ポリシーを作成] ペインが表示されます。

  6. [アラートの詳細] セクションで、次の操作を行います。

    1. [アラート ポリシー名] フィールドに、ポリシーの名前を入力します。

    2. [ポリシーの重大度] リストで、[警告](またはそれ以上の重大度)を選択します。

    3. [次へ] をクリックします。

  7. [アラートに含めるログを選択] セクションで、[次へ] をクリックします。

  8. [通知頻度と自動クローズ期間の設定] セクションで、次の項目を指定します。

    1. [通知の間隔] リストで、通知を受け取る頻度を選択します。

    2. [インシデントの自動クローズ期間] リストで、Cloud Logging が通知の送信を停止し、インシデントを自動的にクローズするまでの期間を選択します。

    3. [次へ] をクリックします。

  9. [通知を受信するユーザー] セクションで、Logging が通知を送信する通知チャネルを指定します。

  10. [保存] をクリックします。

予約全体でメンテナンスを管理する

予約、予約ブロック、予約サブブロックのメンテナンスは、次の方法で表示して制御できます。

  • 予約、予約ブロック、予約サブブロックの今後のメンテナンスの状態とスケジュールされた時間を確認するには、メンテナンス状態を表示します。

  • スケジュールされたメンテナンスの日時を待つのではなく、予約、予約ブロック、予約サブブロックのメンテナンスを手動で開始するには、メンテナンスを手動で開始します。

  • ホストエラーまたは障害のあるホストの報告後に、コンピューティング インスタンスのホストで緊急の計画外メンテナンスが必要になった場合に、通知を受け取るタイミングを管理するには、ハードウェア緊急メンテナンス通知を管理します。

メンテナンス状態を表示する

予約、予約ブロック、予約サブブロックの今後のメンテナンスの状態は、メタデータの upcomingGroupMaintenance フィールドの値を確認することで表示できます。予約に upcomingGroupMaintenance フィールドがない場合、予約、予約ブロック、予約サブブロックのメンテナンスはスケジュールされません。upcomingGroupMaintenance のフィールドの詳細については、Compute Engine のドキュメントのメンテナンス ステータスの定義をご覧ください。

また、予約ブロックまたはサブブロックのメンテナンスがスケジュールされている場合、upcomingGroupMaintenance フィールドには maintenanceReasons フィールドが含まれます。このフィールドには、次の表に示すように、予約ブロックまたはサブブロックのメンテナンスがスケジュールされた理由が記述されます。

メンテナンスの種類 メンテナンスの理由 コンピューティング インスタンスの状態
障害のあるホストの報告後の計画メンテナンス FAILURE_GPU_CUSTOMER_REPORTED 障害のあるホストとして報告したホストで実行されているインスタンスにのみ適用されます。
定期的なメンテナンスの計画的なメンテナンス
  • PLANNED_UPDATE: インフラストラクチャの計画的なメンテナンス
  • PLANNED_NETWORK_UPDATE: ネットワークの計画的なメンテナンス
実行中、停止中、一時停止中のインスタンスに適用されます。
計画外の緊急メンテナンス
  • FAILURE_DISK: インスタンスにアタッチされたディスクのエラーによりスケジュールされた計画外のメンテナンス。
  • FAILURE_GPU: GPU 関連のエラーによりスケジュールされた計画外のメンテナンス。
  • FAILURE_GPU_TEMPERATURE: GPU の温度が上昇した後に GPU 関連のエラーが発生したため、スケジュールされた計画外のメンテナンス。
  • FAILURE_GPU_XID: GPU 関連のエラーにより Xid メッセージを受信した後の計画外のメンテナンス。
  • FAILURE_INFRA: インフラストラクチャのエラーによりスケジュールされた計画外のメンテナンス。
  • FAILURE_INTERFACE: NIC のエラーによりスケジュールされた計画外のメンテナンス。
  • FAILURE_MEMORY: インスタンスのメモリのエラーによりスケジュールされた計画外のメンテナンス。
  • FAILURE_NETWORK: ネットワークのエラーによりスケジュールされた計画外のメンテナンス。
  • FAILURE_NVLINK: NVLink のエラーによりスケジュールされた計画外のメンテナンス。
実行中のインスタンスにのみ適用されます。

予約ブロックまたはサブブロックの maintenanceReasons フィールドを表示するか、サブブロックのメンテナンス状態を表示するには、gcloud CLI または REST API を使用する必要があります。それ以外の場合は、次のいずれかのオプションを選択します。

コンソール

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

    [予約] に移動

  2. Compute Engine の [メンテナンス ステータス] 列に、予約のメンテナンス状態が表示されます。[オンデマンド予約] テーブルにこの列が表示されていない場合は、 [列表示オプション] をクリックし、[メンテナンス ステータス] チェックボックスをオンにして、[OK] をクリックします。

  3. 予約ブロックのメンテナンス状態を表示する手順は次のとおりです。

    1. [名前] 列で、予約の名前をクリックします。予約の詳細を示すページが表示されます。

    2. [ブロック] テーブルの [メンテナンス] 列に、予約内のブロックのメンテナンス状態が表示されます。

gcloud

  1. 予約のメンテナンス状態を表示するには、--flatten フラグを resourceStatus.reservationMaintenance に設定して gcloud compute reservations describe コマンドを使用します。

    gcloud compute reservations describe RESERVATION_NAME \
        --flatten=resourceStatus.reservationMaintenance \
        --zone=ZONE
    

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

    • RESERVATION_NAME: 予約の名前。

    • ZONE: 予約が存在するゾーン。

    出力は次のいずれかのようになります。

    • 予約にメンテナンスがスケジュールされている場合、出力は次のようになります。

      ---
      maintenanceOngoingCount: 0
      maintenancePendingCount: 6
      schedulingType: GROUPED
      upcomingGroupMaintenance:
        canReschedule: true
        maintenanceStatus: PENDING
        type: UNSCHEDULED
        windowEndTime: '2025-11-13T14:00:00.000-08:00'
        windowStartTime: '2025-11-13T12:00:00.000-08:00'
      

      schedulingType フィールドが INDEPENDENT に設定されている場合、upcomingGroupMaintenance フィールドには windowStartTime フィールドと windowEndTime フィールドは含まれません。予約済みホストで実行されているインスタンスのメンテナンスがスケジュールされている日時を確認するには、インスタンスのメンテナンス状態を表示します

    • 予約のメンテナンスがスケジュールされていない場合、出力は次のようになります。

      ---
      schedulingType: GROUPED
      
  2. 予約にメンテナンスがスケジュールされている場合は、予約内のブロックのメンテナンス状態を表示するために、gcloud compute reservations blocks list コマンドを使用します。

    gcloud compute reservations blocks list RESERVATION_NAME \
        --zone=ZONE
    

    予約ブロックのメンテナンスがスケジュールされているか進行中の場合、出力は次のようになります。

    ---
    ...
    name: example-fr-a3u-dense-1-block-0001
    ...
    reservationBlockMaintenance:
      maintenanceOngoingCount: 0
      maintenancePendingCount: 6
      schedulingType: GROUPED
      upcomingGroupMaintenance:
        canReschedule: true
        maintenanceReasons:
        - PLANNED_UPDATE
        - PLANNED_NETWORK_UPDATE
        maintenanceStatus: PENDING
        type: UNSCHEDULED
        windowEndTime: '2025-11-13T14:00:00.000-08:00'
        windowStartTime: '2025-11-13T12:00:00.000-08:00'
    ...
    ---
    ...
    name: example-fr-a3u-dense-1-block-0002
    ...
    schedulingType: GROUPED
    ...
    
  3. 予約ブロックでメンテナンスがスケジュールされている場合、予約ブロック内のサブブロックのメンテナンス状態を表示するには、gcloud compute reservations sub-blocks list コマンドを使用します。

    gcloud compute reservations sub-blocks list RESERVATION_NAME \
        --block-name=BLOCK_NAME \
        --zone=ZONE
    

    BLOCK_NAME は、予約内に存在するブロックの名前に置き換えます。

    予約サブブロックでメンテナンスがスケジュールされているか進行中の場合、出力は次のようになります。

    ...
    reservationSubBlockMaintenance:
      instanceMaintenanceOngoingCount: 0
      instanceMaintenancePendingCount: 3
      maintenanceOngoingCount: 0
      maintenancePendingCount: 32
      schedulingType: GROUPED
      subblockInfraMaintenanceOngoingCount: 0
      subblockInfraMaintenancePendingCount: 0
      upcomingGroupMaintenance:
        canReschedule: true
        maintenanceReasons:
        - PLANNED_UPDATE
        - PLANNED_NETWORK_UPDATE
        maintenanceStatus: PENDING
        type: SCHEDULED
        windowEndTime: '2025-11-13T14:00:00.000-08:00'
        windowStartTime: '2025-11-13T12:00:00.000-08:00'
    ...
    

REST

  1. 予約のメンテナンス状態を表示するには、次のいずれかのメソッドに GET リクエストを送信します。

    リクエスト URL に次のクエリ パラメータを含めます。

    • 予約の名前、予約済みマシンタイプ、メンテナンス ステータスのみを表示するには、items.name,items.specificReservation.instanceProperties.machineType,items.resourceStatus.reservationMaintenance に設定された fields クエリ パラメータを含めます。

    • 特定のマシンタイプを指定する予約でフィルタリングするだけの場合は、URL エンコードされた値を使用して specificReservation.instanceProperties.machineType:MACHINE_TYPE に設定された filter クエリ パラメータを指定します。

    たとえば、すべてのゾーンの予約を表示するには、次のように GET リクエストを送信します。

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/reservations?fields=items.name,items.specificReservation.instanceProperties.machineType,items.resourceStatus.reservationMaintenance&filter=specificReservation.instanceProperties.machineType%3AMACHINE_TYPE
    

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

    • PROJECT_ID: 予約が存在するプロジェクトの ID。

    • MACHINE_TYPE: 予約のフィルタリングに使用する予約済みマシンタイプ。

    予約のメンテナンスがスケジュールされているか進行中の場合、出力は次のようになります。

    {
      "items": [
        {
          "specificReservation": {
            "instanceProperties": {
              "machineType": "MACHINE_TYPE"
            }
          },
          "name": "example-reservation",
          "resourceStatus": {
            "reservationMaintenance": {
              maintenanceOngoingCount: 0,
              maintenancePendingCount: 6,
              "schedulingType": "GROUPED",
              "upcomingGroupMaintenance": {
                "type": "SCHEDULED",
                "canReschedule": true,
                "windowStartTime": "2025-11-13T12:00:00.000-08:00",
                "windowEndTime": "2025-11-13T14:00:00.000-08:00",
                "maintenanceStatus": "PENDING"
              }
            }
          }
        },
        ...
      ]
    }
    

    必要に応じて、コンピューティング インスタンスのリストをさらに絞り込むには、filter クエリ パラメータを別のフィルタ式に設定します。

  2. 予約のメンテナンスがスケジュールされている場合、予約内のブロックのメンテナンス状態を表示するには、reservationBlocks.list メソッドGET リクエストを送信します。リクエスト URL に、items.name,items.reservationMaintenance に設定された fields クエリ パラメータを含めます。

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME/reservationBlocks?fields=items.name,items.reservationMaintenance
    

    RESERVATION_NAME は、予約の名前に置き換えます。

    予約ブロックのメンテナンスがスケジュールされているか進行中の場合、出力は次のようになります。

    {
      "items": [
        {
          "name": "example-fr-a3u-dense-1-block-0001",
          "reservationBlockMaintenance": {
            "maintenanceOngoingCount": 0,
            "maintenancePendingCount": 6,
            "schedulingType": "GROUPED",
            "upcomingGroupMaintenance": {
              "type": "SCHEDULED",
              "canReschedule": true,
              "windowStartTime": "2025-11-13T12:00:00.000-08:00",
              "windowEndTime": "2025-11-13T14:00:00.000-08:00",
              "maintenanceStatus": "PENDING",
              "maintenanceReasons": [
                "PLANNED_UPDATE",
                "PLANNED_NETWORK_UPDATE"
              ]
            }
          }
        },
        ...
      ]
    }
    

    ブロックの schedulingType フィールドが INDEPENDENT に設定されている場合、upcomingGroupMaintenance フィールドには windowStartTime フィールドと windowEndTime フィールドは含まれません。予約済みブロックで実行されているインスタンスのメンテナンスがスケジュールされている日時を確認するには、インスタンスのメンテナンス状態を表示します

  3. 予約ブロックでメンテナンスがスケジュールされている場合、予約ブロック内のサブブロックのメンテナンス状態を表示するには、reservationSubBlocks.list メソッドGET リクエストを送信します。

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME/reservationBlocks/BLOCK_NAME/reservationSubBlocks
    

    BLOCK_NAME は、予約内に存在するブロックの名前に置き換えます。

    予約サブブロックでメンテナンスがスケジュールされているか進行中の場合、出力は次のようになります。

    {
      "items": [
        {
          "name": "example-fr-a3u-dense-1-block-0001",
          "reservationSubBlockMaintenance": {
            "instanceMaintenanceOngoingCount": 0,
            "instanceMaintenancePendingCount": 3,
            "maintenanceOngoingCount": 0,
            "maintenancePendingCount": 6,
            "schedulingType": "GROUPED",
            "subblockInfraMaintenanceOngoingCount": 0,
            "subblockInfraMaintenancePendingCount": 0,
            "upcomingGroupMaintenance": {
              "type": "SCHEDULED",
              "canReschedule": true,
              "windowStartTime": "2025-11-13T12:00:00.000-08:00",
              "windowEndTime": "2025-11-13T14:00:00.000-08:00",
              "maintenanceStatus": "PENDING",
              "maintenanceReasons": [
                "PLANNED_UPDATE",
                "PLANNED_NETWORK_UPDATE"
              ]
            }
          }
        },
        ...
      ]
    }
    

メンテナンスを手動で開始する

スケジュールされた時間を待つのではなく、予約、予約ブロック、予約サブブロックのメンテナンスを手動で開始できます。このアクションにより、ワークロードの中断をより積極的に制御できます。

予約、予約ブロック、予約サブブロックのメンテナンス状態に応じて、次の処理が行われます。

メンテナンス状態 説明 表示される内容
スケジュール設定済み Compute Engine で、予約の定期メンテナンスがスケジュールされています。スケジュールされた時間より前に、メンテナンスを手動で開始できます。
  • Google Cloud コンソールでは、メンテナンス状態が [実行準備完了 - DATE に実行されます] と表示されます。
  • gcloud CLI または REST API では、Compute Engine は maintenanceStatus フィールドを PENDING に設定します。
進行中 メンテナンスが進行中です。スケジュールを変更することはできません。
  • Google Cloud コンソールでは、メンテナンス状態が [実行中] と表示されます。
  • gcloud CLI または REST API では、Compute Engine は maintenanceStatus フィールドを ONGOING に設定します。
完了 メンテナンスが完了しました。Compute Engine は、インスタンスからすべてのメンテナンス通知を削除しました。
  • Google Cloud コンソールでは、メンテナンス状態が [] と表示されます。
  • gcloud CLI または REST API には、maintenanceStatus フィールドはありません。

予約ブロック内の特定のホストでメンテナンスを手動で開始する、または予約サブブロックでメンテナンスを手動で開始するには、gcloud CLI または REST API を使用します。それ以外の場合は、次のいずれかのオプションを選択します。

コンソール

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

    [予約] に移動

  2. [名前] 列で、予約の名前をクリックします。予約の詳細を示すページが表示されます。

  3. [メンテナンスを実行] をクリックし、次のいずれかのオプションを選択します。

    • すべてのブロックでメンテナンスを開始するには、[すべての容量] を選択します。

    • 実行中のインスタンスがあるブロックでのみメンテナンスを開始するには、[使用中の容量] を選択します。

    • 未使用のブロックと、停止または一時停止したインスタンスを含むブロックでのみメンテナンスを開始するには、[未使用の容量] を選択します。

  4. [OK] をクリックして確定します。

gcloud

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

  • RESERVATION_NAME: 予約の名前。

  • RESERVATION_MAINTENANCE_SCOPE: 予約のメンテナンス スコープ。次のいずれかの値を指定します。

    • すべてのブロックでメンテナンスを開始するには: all

    • 実行中のインスタンスがあるブロックでのみメンテナンスを開始するには: running

    • 未使用のブロックと、停止または一時停止したインスタンスを含むブロックでのみメンテナンスを開始するには: unused

  • BLOCK_NAME: 予約内に存在するブロックの名前。

  • SUB_BLOCK_NAME: 予約ブロック内に存在するサブブロックの名前。

  • BLOCK_MAINTENANCE_SCOPE: 予約ブロックのメンテナンス スコープ。次のいずれかの値を指定します。

    • すべてのホストでメンテナンスを開始するには: all

    • 実行中のインスタンスがあるホストでのみメンテナンスを開始するには: running

    • 未使用のホストと、停止または一時停止されたインスタンスがあるホストでのみメンテナンスを開始するには: unused

  • ZONE: 予約が存在するゾーン。

REST

  • 予約のメンテナンスを開始するには、reservations.performMaintenance メソッドPOST リクエストを送信します。

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME/performMaintenance
    
    {
      "maintenanceScope": "RESERVATION_MAINTENANCE_SCOPE"
    }
    
  • 予約ブロックのメンテナンスを開始するには、reservationBlocks.performMaintenance メソッドPOST リクエストを送信します。

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME/reservationBlocks/BLOCK_NAME/performMaintenance
    
    {
      "maintenanceScope": "BLOCK_MAINTENANCE_SCOPE"
    }
    
  • 予約サブブロックのメンテナンスを開始するには、reservationSubBlocks.performMaintenance メソッドPOST リクエストを送信します。

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME/reservationBlocks/BLOCK_NAME/reservationSubBlocks/SUB_BLOCK_NAME/performMaintenance
    
    {
      "maintenanceScope": "BLOCK_MAINTENANCE_SCOPE"
    }
    

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

  • PROJECT_ID: Compute Engine が予約を自動的に作成したプロジェクトの ID。

  • ZONE: 予約が存在するゾーン。

  • RESERVATION_NAME: 予約の名前。

  • RESERVATION_MAINTENANCE_SCOPE: 予約のメンテナンス スコープ。次のいずれかの値を指定します。

    • すべてのブロックでメンテナンスを開始するには: ALL

    • 実行中のインスタンスがあるブロックでのみメンテナンスを開始するには: RUNNING

    • 未使用のブロックと、停止または一時停止したインスタンスを含むブロックでのみメンテナンスを開始するには: UNUSED

  • BLOCK_NAME: 予約内に存在するブロックの名前。

  • SUB_BLOCK_NAME: 予約ブロック内に存在するサブブロックの名前。

  • BLOCK_MAINTENANCE_SCOPE: 予約ブロックのメンテナンス スコープ。次のいずれかの値を指定します。

    • すべてのホストでメンテナンスを開始するには: ALL

    • 実行中のインスタンスがあるホストでのみメンテナンスを開始するには: RUNNING

    • 未使用のホストと、停止または一時停止されたインスタンスがあるホストでのみメンテナンスを開始するには: UNUSED

ハードウェアの緊急メンテナンス通知を管理する

インスタンスでホストエラーが発生した場合や、ホストの障害を報告した場合、インスタンスのホストで緊急の計画外メンテナンスが必要になります。デフォルトでは、Compute Engine はこのタイプのメンテナンスをスケジュールするときに、数時間前に通知します。予約済みホストの場合は、緊急メンテナンス通知を有効にして、この通知期間を少なくとも 7 日間に延長できます。このアプローチにより、ワークロードの中断をより積極的に制御できます。

予約のハードウェア緊急メンテナンス通知を有効または無効にするには、次のいずれかのオプションを選択します。

gcloud

  • 予約のハードウェア緊急メンテナンス通知を有効にするには、--enable-emergent-maintenance フラグを指定して gcloud compute reservations update コマンドを使用します。

    gcloud compute reservations update RESERVATION_NAME \
        --enable-emergent-maintenance \
        --zone=ZONE
    
  • 予約のハードウェア緊急メンテナンス通知を無効にするには、--no-enable-emergent-maintenance フラグを指定して gcloud compute reservations update コマンドを使用します。

    gcloud compute reservations update RESERVATION_NAME \
        --no-enable-emergent-maintenance \
        --zone=ZONE
    

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

  • RESERVATION_NAME: 予約の名前。

  • ZONE: 予約が存在するゾーン。

REST

予約のハードウェア緊急メンテナンス通知を有効または無効にするには、reservations.update メソッドPATCH リクエストを送信します。リクエスト URL に、enableEmergentMaintenance に設定された paths クエリ パラメータを含めます。

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=enableEmergentMaintenance

{
  "name": "RESERVATION_NAME",
  "enableEmergentMaintenance": EMERGENCY_MAINTENANCE_NOTIFICATIONS
}

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

  • PROJECT_ID: 予約が存在するプロジェクトの ID。

  • ZONE: 予約が存在するゾーン。

  • RESERVATION_NAME: 予約の名前。

  • EMERGENCY_MAINTENANCE_NOTIFICATIONS: 次のいずれかの値を指定します。

    • 通知を有効にするには: true

    • 通知を無効にするには: false

次のステップ