維護事件和政策

為確保 Google Cloud Managed Lustre 執行個體維持在最新狀態, Google Cloud會定期進行維護。維護事件可能包括更新基礎軟體或基礎架構。這些事件可能會導致暫時停機,期間對執行個體的 I/O 作業可能會停止回應。維護作業完成後,受影響的 I/O 作業就會繼續執行。停機時間通常介於 2 到 25 分鐘。

維護作業進行期間,執行個體的狀態為 UPGRADING。維護作業完成後,執行個體會恢復為 ACTIVE 狀態。

維護政策可讓您控管這些維護事件的發生時間。您可以為每個執行個體設定維護政策,指定維護期間和應排除維護作業的時段。如果執行個體未設定維護政策,系統隨時可能執行維護作業。

您也可以重新安排維護事件,讓維護作業立即開始、在下一個可用時間範圍內開始,或在最多 28 天後於特定時間開始。

極大規模執行個體

某些提供極致效能和規模的 Managed Lustre 設定,可能需要定期進行主機維護,因此會排定最多 4 小時的停機時間。Google 會事先與您協調這些維護作業。

關於維護政策

您可以在每個 Managed Lustre 執行個體上設定維護政策。維護政策包括:

  • 每週維護期間:每週固定一小時,可讓 Managed Lustre 啟動維護事件。
  • 維護作業排除期間:在此期間,Managed Lustre 不得啟動維護事件。每個執行個體可定義一個排除時段,最長為兩週。如果開始和結束日期未指定年份,排除期每年都會重複。

排除期間的優先順序高於一般維護期間。如果排定的事件落在這個期間內,Managed Lustre 會將事件延後到下一個可用期間,或完全略過。更新會在下一個維護週期套用。

維護作業通知

您可以訂閱即將進行維護作業的電子郵件通知,以便規劃如何因應可能發生的中斷情形。如要管理維護通知訂閱項目,請前往 Google Cloud 控制台的「通訊」頁面:

前往「Communication」(通訊) 頁面

訂閱後,系統會傳送下列通知:

  • 提前通知:在預定維護事件發生前 7 到 14 天,或在客戶重新安排維護事件後傳送。
  • 已取消:如果 Google 取消排定的維護事件,或客戶重新安排維護事件,系統就會傳送這類通知。
  • 執行中:維護事件開始時傳送。
  • 已完成:維護事件完成時傳送。

您也可以在 Google Cloud 控制台的執行個體詳細資料頁面中,查看即將進行的維護作業時間表,或使用 Cloud Logging 查看維護記錄

設定維護期間

維護期間必須指定星期幾,以及一小時維護期間的世界標準時間開始時間。

Google Cloud 控制台

如要在建立執行個體時設定維護期間,請參閱「建立執行個體」。

gcloud

如要建立包含維護期間的執行個體,請指定 --maintenance-policy-weekly-windows 旗標:

gcloud lustre instances create INSTANCE_ID \
  --location=LOCATION \
  --network=NETWORK_NAME \
  --filesystem=FS_NAME \
  --capacity-gib=CAPACITY \
  --maintenance-policy-weekly-windows='dayOfWeek=DAY,startTime={START_TIME}'

更改下列內容:

  • INSTANCE_ID:Managed Lustre 執行個體的 ID。
  • LOCATION:Managed Lustre 執行個體的位置。
  • NETWORK_NAME:執行個體的網路名稱。
  • FS_NAME:檔案系統的名稱。
  • CAPACITY:執行個體的容量 (以 GiB 為單位)。
  • DAY:維護期間的星期幾 (例如 TUESDAY)。
  • START_TIME:維護期間的世界標準時間開始時間,格式為字典 (例如 {hours=1,minutes=0})。

REST API

如要為執行個體指定維護期間,請在建立執行個體時加入 maintenancePolicy 物件。

以下是 maintenancePolicy 物件的範例:

"maintenancePolicy": {
  "weeklyMaintenanceWindows": [
    {
      "dayOfWeek": "DAY",
      "startTime": {
        "hours": HOURS,
        "minutes": MINUTES
      }
    }
  ]
}

更改下列內容:

  • DAY:維護期間的星期幾 (例如 TUESDAY)。
  • HOURS:維護期間開始時間的小時 (例如 1)。
  • MINUTES:維護期間開始時間的小時分鐘 (例如 0)。

設定排除期

如要避免在特定期間 (例如節日或商務活動) 進行維護作業,可以在維護政策中定義一個維護排除時段。排除期間最長可達兩週。如要建立每年重複的排除時間範圍,請勿在開始和結束日期中指定年份。

您可以在同一項政策中,同時設定每週維護期間和排除時段。

Google Cloud 控制台

如要在建立執行個體時設定排除時間範圍,請參閱「建立執行個體」一文。

gcloud

如要建立排除期間的執行個體,請指定 --maintenance-policy-exclusion-window 旗標:

gcloud lustre instances create INSTANCE_ID \
  --location=LOCATION \
  --network=NETWORK_NAME \
  --filesystem=FS_NAME \
  --capacity-gib=CAPACITY \
  --maintenance-policy-exclusion-window='startDate=START_DATE,endDate=END_DATE,time={TIME}'

更改下列內容:

  • INSTANCE_ID:Managed Lustre 執行個體的 ID。
  • LOCATION:Managed Lustre 執行個體的位置。
  • NETWORK_NAME:執行個體的網路名稱。
  • FS_NAME:檔案系統的名稱。
  • CAPACITY:執行個體的容量 (以 GiB 為單位)。
  • START_DATE:維護排除期的開始日期,格式為 YYYY-MM-DD。如要每年重複,請使用 MM-DD 格式。
  • END_DATE:維護排除期間的結束日期,格式為 YYYY-MM-DD。如要每年重複,請使用 MM-DD 格式。
  • TIME:排除時間範圍的開始和結束時間 (世界標準時間),格式為字典 (例如 {hours=1,minutes=0})。

REST API

以下是含有排除視窗的 maintenancePolicy 物件範例:

"maintenancePolicy": {
  "maintenanceExclusionWindow": [
    {
      "startDate": {
        "year": START_YEAR,
        "month": START_MONTH,
        "day": START_DAY
      },
      "endDate": {
        "year": END_YEAR,
        "month": END_MONTH,
        "day": END_DAY
      },
      "time": {
        "hours": HOURS,
        "minutes": MINUTES
      }
    }
  ]
}

更改下列內容:

  • START_YEAR:排除期開始日期的年份 (例如 2026)。如要建立每年重複出現的排除期,請省略這個欄位和 END_YEAR
  • START_MONTH:排除期間開始日期的月份 (例如 12)。
  • START_DAY:排除期間開始日期的星期 (例如 24)。
  • END_YEAR:排除期間結束日期的年份 (例如 2027)。如要建立每年重複出現的排除期間,請省略這個欄位和 START_YEAR
  • END_MONTH:排除期間結束日期的月份,例如 1
  • END_DAY:排除期間結束日期當天 (例如 7)。
  • HOURS:排除時段的小時 (例如 0)。
  • MINUTES:排除時段的小時分鐘數 (例如 0)。

更新維護政策

如要為現有執行個體新增或修改維護政策:

Google Cloud 控制台

如要更新執行個體的維護政策,請參閱「管理執行個體」。

gcloud

以下 gcloud 範例會更新執行個體的維護政策:

gcloud lustre instances update INSTANCE_ID \
--location=LOCATION \
--maintenance-policy-weekly-windows='dayOfWeek=DAY,startTime={START_TIME}'

更改下列內容:

  • INSTANCE_ID:Managed Lustre 執行個體的 ID。
  • LOCATION:Managed Lustre 執行個體的位置。
  • DAY:維護期間的星期幾 (例如 TUESDAY)。
  • START_TIME:維護期間的世界標準時間開始時間,格式為字典 (例如 {hours=1,minutes=0})。

REST API

如要為執行個體指定維護期間,請在更新執行個體時加入 maintenancePolicy 物件。您也必須在 updateMask 查詢參數中指定 maintenancePolicy

以下 curl 範例會更新執行個體的維護政策:

curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d '{
  "maintenancePolicy": {
    "weeklyMaintenanceWindows": [
      {
        "dayOfWeek": "DAY",
        "startTime": {
          "hours": HOURS,
          "minutes": MINUTES
        }
      }
    ]
  }
}' "https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID?updateMask=maintenancePolicy"

更改下列內容:

  • PROJECT_ID:專案的 ID。 Google Cloud
  • LOCATION Managed Lustre 執行個體的位置。
  • INSTANCE_ID Managed Lustre 執行個體的 ID。
  • DAY:維護期間的星期幾 (例如 TUESDAY)。
  • HOURS 維護期間開始時間的小時 (例如 3)。
  • MINUTES 維護期間開始時間的小時 (例如 45)。

移除維護政策

如要從執行個體移除維護政策,請清除政策中的所有每週維護期間和排除期間。

Google Cloud 控制台

如要從執行個體移除維護政策,請編輯執行個體並清除維護政策欄位。請參閱「管理執行個體」。

gcloud

使用 gcloud lustre instances update 指令並加上 --clear-maintenance-policy-weekly-windows--clear-maintenance-policy-exclusion-window 旗標:

gcloud lustre instances update INSTANCE_ID \
--location=LOCATION \
--clear-maintenance-policy-weekly-windows \
--clear-maintenance-policy-exclusion-window

更改下列內容:

  • INSTANCE_ID:Managed Lustre 執行個體的 ID。
  • LOCATION:Managed Lustre 執行個體的位置。

REST API

如要使用 REST API 移除維護政策,請使用 instances.patch 方法,並將 maintenancePolicy 物件留空,且將 updateMask 查詢參數設為 maintenancePolicy

curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d '{
  "maintenancePolicy": {}
}' "https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID?updateMask=maintenancePolicy"

更改下列內容:

  • PROJECT_ID:專案的 ID。 Google Cloud
  • LOCATION:Managed Lustre 執行個體的位置。
  • INSTANCE_ID:Managed Lustre 執行個體的 ID。

查看維護記錄

Managed Lustre 會使用 Cloud Logging 記錄維護事件,包括下列活動類型:

  • LustreAdvancedNotification:系統已排定執行個體的維護作業。
  • LustreOngoingNotification:執行個體已開始維護作業。完成後,系統會記錄另一個 LustreOngoingNotification 事件,這次會附上 is_completed=true
  • LustreCancelledNotification:維護作業已取消。

您可以使用 Logs Explorer 或 Google Cloud CLI 查看維護記錄。

Logs Explorer

如要使用 Logs Explorer 查看 Managed Lustre 維護記錄,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「Cloud Logging」>「Logs Explorer」頁面:

    前往 Logs Explorer

  2. 在查詢編輯器中輸入下列篩選條件,然後按一下「執行查詢」

    resource.type="lustre.googleapis.com/Instance"
    resource.labels.instance_id="INSTANCE_ID"
    resource.labels.location="LOCATION"
    logName="projects/PROJECT_ID/logs/lustre.googleapis.com%2Fmaintenance"
    

gcloud CLI

如要使用 Google Cloud CLI 查看維護記錄,請執行 gcloud logging read 指令:

gcloud logging read 'resource.type="lustre.googleapis.com/Instance" resource.labels.instance_id="INSTANCE_ID" resource.labels.location="LOCATION" logName="projects/PROJECT_ID/logs/lustre.googleapis.com%2Fmaintenance"' --project=PROJECT_ID

更改下列內容:

  • INSTANCE_ID:Managed Lustre 執行個體的 ID。
  • LOCATION:執行個體所在的區域。
  • PROJECT_ID:執行個體所在專案的專案 ID。

重新排定維護時間

如果排定的維護活動與您的需求衝突,可以重新排定時間。重新排定時,您有下列選項:

  • 立即:重新安排維護事件,盡快開始維護。這個選項會忽略執行個體上設定的任何維護期間和排除期間。
  • 下一個可用維護期間:將維護事件重新排定至下一個可用的維護期間。這通常會將更新作業延後一週。
  • 依日期:將維護事件重新排定至特定日期和時間。您最多可將維護作業延後 28 天 (從原先排定的時間算起)。這個選項會忽略執行個體上設定的任何維護期間和排除期間。

如要重新排定維護時間,請按照下列步驟操作:

gcloud

如要盡快開始維護事件,請按照下列步驟操作:

gcloud lustre instances reschedule-maintenance INSTANCE_ID \
--location=LOCATION \
--reschedule-type=immediately

如要將維護作業重新排定至下一個可用期間,請按照下列步驟操作:

gcloud lustre instances reschedule-maintenance INSTANCE_ID \
--location=LOCATION \
--reschedule-type=next-available-window

如要將維護作業重新排定在特定時間,請按照下列步驟操作:

gcloud lustre instances reschedule-maintenance INSTANCE_ID \
--location=LOCATION \
--reschedule-type=by-time \
--reschedule-schedule-time=TIMESTAMP

更改下列內容:

  • INSTANCE_ID:Managed Lustre 執行個體的 ID。
  • LOCATION:Managed Lustre 執行個體的位置。
  • TIMESTAMP:開始時間,採用 RFC 3339 格式 (例如 2026-04-30T10:00:00Z)。這個時間不得晚於原定時間的 28 天後。

REST API

請使用 instances.rescheduleMaintenance 方法。

下列 curl 範例會盡快啟動維護事件:

curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d '{
  "reschedule": {
    "rescheduleType": "IMMEDIATELY"
  }
}' "https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:rescheduleMaintenance"

以下 curl 範例會將維護作業重新排定至下一個可用時段:

curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d '{
  "reschedule": {
    "rescheduleType": "NEXT_AVAILABLE_WINDOW"
  }
}' "https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:rescheduleMaintenance"

下列 curl 範例會將維護作業重新安排到特定時間:

curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d '{
  "reschedule": {
    "rescheduleType": "BY_TIME",
    "scheduleTime": "TIMESTAMP"
  }
}' "https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:rescheduleMaintenance"

更改下列內容:

  • PROJECT_ID:專案的 ID。 Google Cloud
  • INSTANCE_ID:Managed Lustre 執行個體的 ID。
  • LOCATION:Managed Lustre 執行個體的位置。
  • TIMESTAMP:開始時間,採用 RFC 3339 格式 (例如 2026-04-30T10:00:00Z)。這個時間不得晚於原定時間的 28 天後。