為單一用戶群節點啟用進階維護控制項

單一租戶的進階維護控制項可讓您控制單一租戶節點群組的預定維護事件,並盡量減少維護作業造成的服務中斷。這項功能僅適用於單一租戶節點群組。如要搭配現有虛擬機器使用這項功能,請先將 VM 移至已啟用進階維護控制項的單一租戶節點群組。

單一用戶群的進階維護控制項功能可讓您:

  • 提前 28 天查看排定在單一租戶節點執行的維護作業。
  • 立即觸發維護作業,或安排稍後執行。請注意,如果立即觸發維護作業,維護作業會在觸發要求後的 6 小時內進行。

以下是建立單一租戶節點群組的程序,可進行進階維護控制:

  1. 在相容的單一用戶群節點群組中,選擇啟用進階維護控制項。這項功能僅適用於單一租戶節點群組。如要搭配現有 VM 或單一租戶工作負載使用這項功能,您必須先將 VM 遷移至已啟用進階維護控制項的單一租戶節點群組。

  2. 檢查單一租戶節點的近期維護作業。單一租戶節點的維護作業最多每 28 天執行一次。您可以在節點預定維護時間的 6 小時維護期間開始前 28 天,查看節點的維護事件。

  3. 如果單一租戶節點已排定維護作業,您可以在排定的維護期間開始前執行下列操作:

    • 立即觸發維護作業,或安排日後執行。 如果您選擇立即觸發維護作業,系統會在您觸發要求後的 6 小時內執行維護作業。請注意,您選擇的排定日期和時間必須早於初始維護期間的開始時間。

    • 如果您未立即觸發維護作業或安排稍後執行,系統會在初始維護時段內執行維護作業。

您可以選擇啟用進階維護控制項,自動調度單一租戶節點群組的資源。系統一律會產生稽核記錄。

支援的機器家族

單一租戶節點的進階維護控制項支援正式發布的 C2、C3、C3D、C4、G2、H3、M1、M2、M3 和 M4 機器系列。

限制

單一租戶功能進階維護控制項的限制如下:

  • 本機 SSD 和 GPU:這項功能不支援本機 SSD 和 GPU。
  • 維護政策:這項功能支援預設維護政策 (即時遷移)。系統不支援其他維護政策,例如就地重新啟動和在節點群組內遷移。
  • 節點:這項功能在每個專案的每個區域中,最多可支援 20 個節點。
  • 現有單一租戶節點群組的進階維護控制項: 您無法為現有單一租戶節點群組選擇啟用進階維護控制項。如要在啟用進階維護控制項的單一租戶節點群組上執行現有工作負載,請先建立啟用進階維護控制項的新節點群組,然後將工作負載遷移至這個群組。同樣地,如要選擇不採用進階維護控制項,您必須將單一租戶節點遷移至未啟用進階維護控制項的單一租戶節點群組。
  • 對目前維護政策的影響:選擇啟用這項功能後,系統會覆寫與單一租戶節點相關聯的現有維護時段。

費用

在單一租戶節點上使用進階維護控制項不會產生額外費用。

事前準備

  • 在單一租戶節點上佈建 VM 前,請先檢查配額。視您預留的節點數量和大小而定,您可能需要申請額外配額
  • 如果尚未設定驗證,請先完成設定。 驗證可確認您的身分,以便存取 Google Cloud 服務和 API。如要從本機開發環境執行程式碼或範例,請選取下列其中一個選項,向 Compute Engine 進行驗證:

    選取這個頁面上的分頁,瞭解如何使用範例:

    控制台

    使用 Google Cloud 控制台存取 Google Cloud 服務和 API 時,無須設定驗證。

    gcloud

    1. 安裝 Google Cloud CLI。 完成後,執行下列指令來初始化 Google Cloud CLI:

      gcloud init

      若您採用的是外部識別資訊提供者 (IdP),請先使用聯合身分登入 gcloud CLI

  • 設定預設地區和區域
  • REST

    如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。

      安裝 Google Cloud CLI。

      若您採用的是外部識別資訊提供者 (IdP),請先使用聯合身分登入 gcloud CLI

    詳情請參閱 Google Cloud 驗證說明文件中的「使用 REST 進行驗證」。

在單一租戶節點上啟用進階維護控制項

單一租戶的進階維護控制項是選擇加入功能,僅適用於單一租戶節點群組。如要搭配現有 VM 或單一租戶工作負載使用這項功能,請先將 VM 移至已啟用進階維護控制項的單一租戶節點群組。

控制台

建立節點群組時,您可以選擇啟用進階維護控制項,方法是在「設定維護設定」部分選取「選擇啟用單一用戶群的進階維護」選項。詳情請參閱「建立單一租戶節點群組」。

gcloud

如要建立具有進階維護控制項的單一租戶節點群組,請使用 gcloud compute sole-tenancy node-groups create 指令

下列指令中的 --maintenance-interval=RECURRENT 旗標指定單一租戶節點已選擇啟用進階維護控制項。

gcloud compute sole-tenancy node-groups create NODE_GROUP_NAME \
--node-template=NODE_TEMPLATE_NAME \
--zone=NODE_GROUP_ZONE \
--target-size=NODE_GROUP_SIZE \
--maintenance-interval=RECURRENT

更改下列內容:

  • NODE_GROUP_NAME:節點群組的名稱。

  • NODE_TEMPLATE_NAME:用於建立此群組的節點範本名稱。

  • NODE_GROUP_SIZE:要在群組中建立的節點數量。

  • NODE_GROUP_ZONE:要在其中建立節點群組的可用區。這個地區必須與節點群組所依據的節點範本位於同一個地區。

REST

如要根據先前建立的節點範本,建立具有進階維護控制項的單一租戶節點群組,請使用 nodeGroups.insert 方法

如要根據先前為所有其他節點建立的節點範本,建立單一租戶節點群組,請使用 nodeGroups.insert 方法

下列指令中的 maintenanceInterval 參數指定單一租戶節點已選擇啟用進階維護控制項。

POST https://compute.googleapis.com/compute/projects/PROJECT_ID/zones/NODE_GROUP_ZONE/nodeGroups
{
"name": "NODE_GROUP_NAME",
"nodeTemplate": "NODE_TEMPLATE_URL",
"zone": "NODE_GROUP_ZONE",
"size": "NODE_GROUP_SIZE",
"maintenanceInterval": "RECURRENT"
}

更改下列內容:

  • PROJECT_ID:節點群組所在的專案名稱。

  • NODE_GROUP_ZONE:節點群組的可用區。

  • NODE_GROUP_NAME:節點群組的名稱。

  • NODE_TEMPLATE_URL:用於建立此群組的節點範本網址。

  • NODE_GROUP_SIZE:要在群組中建立的節點數量。

節點層級的標記會覆寫先前指派的所有 VM 標記。因此,選擇啟用進階維護控制項會覆寫任何先前的維護標記。

查看即將執行的維護作業

單一租戶節點的維護作業最多每 28 天執行一次。您可以在 6 小時維護期間開始前 28 天,查看節點的維護事件。維護作業預定會在該期間內進行。

控制台

為單一租戶節點群組選擇啟用進階維護控制項後,您會看到即將執行的維護事件,如下所示:

  1. 前往 Google Cloud 控制台的「單一租戶節點」頁面。

    前往單一用戶群節點

  2. 按一下「節點群組」,查看單一租戶節點群組清單。

  3. 對於任何單一租戶節點群組,您可以在表格中查看「維護狀態」和「維護時間」欄,瞭解即將進行的維護作業。由於維護作業是在節點層級設定,因此您在此看到的維護資訊,是節點群組中任何節點的下一次預定維護作業。

  4. 如要查看單一租戶節點群組中每個節點的維護資訊,請按一下節點群組的「名稱」,開啟詳細資料頁面。在節點群組中,表格的「維護狀態」和「維護時間」欄會顯示即將進行的維護作業資訊。

gcloud

如要列出具有進階維護控制項的單一租戶節點群組節點,以及這些節點的維護資訊,請使用 gcloud compute sole-tenancy node-groups list-nodes 指令

gcloud compute sole-tenancy node-groups list-nodes NODE_GROUP_NAME \
--format "table(name, status, node_type, instances, server_id, upcoming_maintenance)"

NODE_GROUP_NAME 替換為節點群組名稱。

REST

如要列出具有進階維護控制項的單一租戶節點群組節點,以及維護資訊,請使用 nodeGroups.listNodes 方法

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/NODE_GROUP_ZONE/nodeGroups/NODE_GROUP_ID/listNodes

更改下列內容:

  • PROJECT_ID:節點群組所在的專案名稱。

  • NODE_GROUP_ZONE:節點群組的可用區。

  • NODE_GROUP_ID:節點群組的 ID。

以下是 nodeGroups.listNodes 方法的回應

{
  …
  "items": [
    …
    {
      "name": string,
      "status": string,
      …
      "upcomingMaintenance": {
        "canReschedule": boolean,
        "maintenanceType": enum, // SCHEDULED | UNSCHEDULED
        "windowStartTime": string, // RFC 3339 timestamp string
        "windowEndTime": string, // RFC 3339 timestamp string
        "latestWindowStartTime": string, // RFC 3339 timestamp string
        "maintenanceStatus": enum // PENDING | ONGOING
      },
      …
    },
    …
  ],
  …
}

以下是節點群組的維護事件詳細資料:

參數名稱 說明
windowStartTime 維護期間的開始時間。
windowEndTime 維護期間的結束時間。
latestWindowStartTime 初始維護期間的開始時間。您可以選擇立即觸發維護作業,或排定在 latestWindowStartTime 前的日期和時間執行。
maintenanceType 將執行的維護作業類型:
- 已排定:已排定此節點的維護作業。
- 未排定時間:維護作業代表重大更新,因此通知時間會短得多。
canReschedule 是否能重新安排維護時間。
maintenanceStatus 目前維護作業的狀態:
- 待處理:維護作業尚未開始,但已排定時間。
- 進行中:維護期間已開始。

如果沒有看到任何維護事件,表示節點群組中沒有任何節點即將進行維護。

立即觸發維護作業或為節點安排維護作業

瞭解單一租戶節點群組中排定維護作業的節點後,您可以執行下列任一操作:

  • 立即觸發維護作業。如果您選擇立即觸發維護作業,系統會在您觸發要求後的 6 小時內執行維護作業。

  • 根據需求安排稍後進行維護作業。

如果您未立即觸發維護作業,或排定日後的時間,系統會在初始維護期間執行維護作業。節點維護作業開始後,就無法暫停或重新安排。

控制台

如要立即觸發節點維護作業,請執行下列操作:

  1. 前往 Google Cloud 控制台的「單一租戶節點」頁面。

    前往單一用戶群節點

  2. 按一下「節點群組」

  3. 按一下節點群組的名稱,開啟詳細資料頁面。

  4. 選取要立即觸發維護作業的節點,然後按一下「立即開始」

你會看到確認訊息,維護作業會在觸發要求後的 6 小時內進行。

如要安排節點維護時間,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「單一租戶節點」頁面。

    前往單一用戶群節點

  2. 按一下「節點群組」,查看單一租戶節點群組清單。

  3. 按一下節點群組的「名稱」,開啟詳細資料頁面。

  4. 選取要排定維護作業的節點,然後按一下「Schedule Maintenance」(排定維護作業)

  5. 在隨即顯示的「Schedule Maintenance」(排定維護作業) 窗格中,選取維護作業的日期和時間。請注意,您可以在初始維護期間開始前,隨時排定節點維護作業。

您會看到確認訊息,系統會在觸發要求後的 6 小時內進行維護。

gcloud

如要使用進階維護控制項,啟動或排定單一租戶節點的維護作業,請使用 gcloud compute sole-tenancy node-groups perform-maintenance 指令

gcloud compute sole-tenancy node-groups perform-maintenance NODE_GROUP_NAME \
--zone=NODE_GROUP_ZONE \
--nodes=NODE_NAMES \
--window-start-time=WINDOW_START_TIME

更改下列內容:

  • NODE_GROUP_NAME:節點群組的名稱。

  • NODE_GROUP_ZONE:節點群組的可用區。

  • NODE_NAMES:要執行維護作業的節點名稱。

  • WINDOW_START_TIME:維護作業的開始日期和時間。如要盡快開始維護作業,請省略這個標記。

REST

使用 nodeGroups.performMaintenance 方法,啟動或排定單一租戶節點的維護作業,並使用進階維護控制項。

POST
https://compute.googleapis.com/compute/projects/PROJECT_ID/zones/NODE_GROUP_ZONE/nodeGroups/NODE_GROUP_ID/performMaintenance
{
"nodes": "NODE_NAMES" // [Required] The user needs to list at least 1 node
"windowStartTime":  "WINDOW_START_TIME" // [Optional] RFC 3339 timestamp string
}

更改下列內容:

  • PROJECT_ID:節點群組所在的專案名稱。

  • NODE_GROUP_ZONE:節點群組的可用區。

  • NODE_GROUP_ID:節點群組的 ID。

  • NODE_NAMES:要執行維護作業的節點名稱。

  • WINDOW_START_TIME:維護作業的開始日期和時間。如要盡快開始維護作業,請省略這個欄位。

節點的「維護狀態」欄位會在維護程序期間顯示下列狀態:

  • 待處理:維護作業尚未開始,但已排定時間。
  • 進行中:維護期間已開始。節點維護作業成功完成前,維護事件會維持「進行中」狀態。

確認維護作業是否已完成

如要查詢具有進階維護控制項的節點維護狀態,請使用 gcloud compute sole-tenancy node-groups list-nodes 指令nodeGroups.listNodes 方法

詳情請參閱「查看維護狀態」。

  • 維護作業成功:如果單一租戶節點的維護作業成功,系統會移除維護通知。查詢節點群組名稱時,節點不會再顯示 upcomingMaintenance 區段。
  • 維護作業失敗:如果維護作業無法在 6 小時內完成,維護事件會維持「進行中」狀態,直到節點維護作業順利完成為止。完成後,系統會移除維護通知。

有時,如果您選擇的日期和時間已超過單一用戶群節點的進階維護控制項內部限制,系統可能會拒絕維護觸發要求。 Google Cloud 在這種情況下,您必須為節點維護作業選取其他日期和時間。這個節點的「維護狀態」為「進行中」,且會維持這個狀態,直到維護作業順利完成為止。

變更排定的維護日期和時間

如要修改單一租戶節點的排定維護日期和時間,請使用與觸發或排定節點維護作業相同的程序。