瞭解叢集升級作業


本頁說明如何取得 Google Kubernetes Engine (GKE) 叢集的升級資訊。GKE 會陸續自動升級所有叢集。GKE 升級叢集時,會分別更新 Kubernetes 控制層和工作站節點的版本。

GKE 會彙整叢集升級相關資訊,協助您進一步瞭解叢集狀態。您可以取得叢集的下列資訊:

  • 自動升級目標:找出 GKE 針對叢集的新版本,這可能是修補程式或新的次要版本,具體取決於叢集的現有版本和限制。如果沒有自動升級目標、叢集已採用最新的升級目標,或是基於技術或業務原因,GKE 尚未指派自動升級目標,您也可以根據 GKE 發布說明 版本更新中的叢集次要版本,擷取一般自動升級目標,例如 2024-R33 說明
  • 自動升級狀態:GKE 叢集有叢集升級狀態。您可以透過這個狀態進一步瞭解目前的升級作業,以及 GKE 在選擇自動升級叢集時考量的限制,包括維護排除項目或阻止升級的原因等因素。詳情請參閱「叢集自動升級狀態」。
  • 升級記錄:GKE 會提供叢集最近的控制層和節點升級快照,包括自動和手動升級。如果是最近的控制層和節點升級作業,您可以查看下列詳細資料:

    • 版本:初始版本和目標版本。
    • 狀態:升級作業是否仍在執行,或是否成功、失敗或已取消。
    • 時間:開始和結束時間。
    • 啟動類型:升級是自動還是手動觸發。
  • 支援終止日期:GKE 最多支援子版本 24 個月。詳情請參閱 GKE 次要版本生命週期。如要查看所有目前次要版本的支援終止日期,請參閱「預估發布管道時間表」。

  • 叢集事件:GKE 會在發生特定事件時,將叢集通知傳送至 Cloud Logging,例如升級開始或完成、有新版本可用、安全性公告,以及支援終止日期。除了 GKE 會透過 Cloud Logging 自動顯示這些事件,您也可以將這些通知傳送至 Pub/Sub。詳情請參閱「叢集通知」。

事前準備

開始之前,請確認你已完成下列工作:

  • 啟用 Google Kubernetes Engine API。
  • 啟用 Google Kubernetes Engine API
  • 如要使用 Google Cloud CLI 執行這項工作,請安裝初始化 gcloud CLI。如果您先前已安裝 gcloud CLI,請執行 gcloud components update,取得最新版本。

取得叢集升級資訊

您可以使用Google Cloud 控制台或 gcloud CLI,取得叢集升級相關資訊。

取得專案層級的升級資訊

如要取得專案中叢集升級的匯總資訊,可以使用「升級」資訊主頁。

前往 Google Cloud 控制台的「Upgrades」(升級) 資訊主頁:

前往「升級」頁面

這個資訊主頁中的分頁會匯總升級的相關資訊,例如:

  • 最近控制層和節點升級的狀態
  • 升級叢集的叢集通知記錄
  • 升級相關建議
  • 特定子版本的支援終止時間表
  • 每個發布管道中的叢集數量

在叢集層級取得升級資訊

控制台

  1. 在 Google Cloud 控制台中,前往「Kubernetes clusters」(Kubernetes 叢集) 頁面。

    前往 Kubernetes 叢集

  2. 選取叢集名稱,即可查看「叢集詳細資料」頁面。

  3. 在「叢集詳細資料」頁面中,查看「叢集升級」部分。

gcloud

執行下列指令:

gcloud container clusters get-upgrade-info CLUSTER_NAME

CLUSTER_NAME 替換為叢集名稱。

取得 Standard 叢集節點集區的升級資訊

您可以查看標準叢集中個別節點集區的狀態。本節不適用於 Autopilot 叢集,因為 GKE 會管理節點,因此您無法管理節點集區。

控制台

  1. 在 Google Cloud 控制台中,前往「Kubernetes clusters」(Kubernetes 叢集) 頁面。

    前往 Kubernetes 叢集

  2. 按一下叢集名稱即可查看詳細資料。

  3. 按一下「Nodes」(節點) 分頁標籤。

  4. 在「Node Pools」(節點集區) 區段中,按一下要取得升級資訊的節點集區名稱。

  5. 在「Node pool details」(節點集區詳細資料) 頁面中,查看「Upgrades」(升級) 區段。

gcloud

執行下列指令:

gcloud container node-pools get-upgrade-info POOL_NAME
    --cluster=CLUSTER_NAME

POOL_NAME 替換為節點集區的名稱。

叢集自動升級狀態

叢集的自動升級功能可能處於下列狀態:

  • ACTIVE:升級狀態為有效。
  • UNKNOWN:升級狀態不明。
  • MINOR_UPGRADE_PAUSED:已暫停子版本升級作業。
  • UPGRADE_PAUSED:所有自動升級作業都會暫停。

GKE 可能會因為下列原因暫停叢集的自動升級:

  • MAINTENANCE_WINDOW:維護期間會阻止叢集升級。
  • MAINTENANCE_EXCLUSION_:如果暫停原因有這個前置字元,表示維護排除作業會阻止叢集升級。後置字串表示維護作業排除範圍,例如 MAINTENANCE_EXCLUSION_NO_UPGRADES
  • CLUSTER_DISRUPTION_BUDGET:在叢集建立或升級等作業後,需要經過一段等待期,確保叢集及其應用程式的穩定性和可用性。
  • CLUSTER_DISRUPTION_BUDGET_MINOR_UPGRADE:叢集超出子版本升級作業的叢集 disruption budget。
  • SYSTEM_CONFIG:基於技術或業務原因,自動升級作業已暫時暫停。如果狀態為「已停用」,除非必要,否則不建議手動升級。
  • AUTO_UPGRADE_PAUSED_REASON_UNSPECIFIED:原因不明。

瞭解叢集升級的常見情況

瞭解管理叢集升級時可能遇到的常見情況。

瞭解叢集下次升級的預計時間

如要瞭解叢集下次升級的預計時間,以便規劃及完成升級至新版本的資格,請參閱下列資源:

  • 發布時間表:在「發布版本預估時間表」中,找出與叢集次要版本和發布版本對應的預估自動升級日期。
  • 在叢集層級取得升級資訊:找出叢集的自動升級目標。
  • 叢集通知:當管道中推出新版本時,GKE 會傳送通知。新版本推出後 (時間取決於管道),GKE 會將該版本指定為管道中的自動升級目標。如要查看這些通知,請在 Cloud Logging 中查看叢集通知時,篩選 UpgradeAvailableEvent
  • 版本資訊:請參閱版本資訊,瞭解 GKE 何時會將新子版本設為管道中的自動升級目標。

找出阻礙叢集下次升級的原因

如要瞭解升級遭封鎖的原因並解除封鎖,請查看叢集的自動升級狀態。如果自動升級作業已暫停,請查看原因。請使用下列其中一種方法:

查看叢集升級完成時間

如要瞭解叢集的控制層和節點升級何時完成,以便確認工作負載是否正常運作,請使用下列資源:

瞭解預計升級時間

如要瞭解預計升級時間,請在叢集層級取得升級資訊,即可查看過去的升級時間。如需近期範例,請參閱升級記錄。

升級時間長度取決於升級的是控制層還是節點、升級策略、Pod 中斷預算 (PDB)、有效維護政策和其他因素。

找出叢集子版本終止支援的時間

如果叢集仍執行支援期限已過的子版本,GKE 會自動升級叢集。詳情請參閱「支援期限結束時自動升級」。

如要瞭解叢集子版本何時會終止支援,例如設定維護作業排除項目,或瞭解已淘汰的 API 何時會無法使用,請參閱下列資源:

後續步驟