安排叢集升級作業的推出時程


本頁說明如何使用推出作業排序功能管理 GKE 叢集升級作業。詳情請參閱「簡介:運用推出作業排序功能升級叢集」。

事前準備

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

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

必要的角色

設定推出作業序列

本文說明如何使用按機群團隊範圍排序的叢集群組,建立推出作業序列。本文使用「群組」一詞,同時指稱機群和團隊範圍,因為您可以建立以任一分組方法整理的推出順序。

您可以建立最多五個叢集群組的序列 (團隊序列最多三個),並選擇在群組完成叢集升級後,要進行多少浸泡測試 (最多 30 天)。您可以同時加入 Autopilot 和 Standard 叢集。

如要建立推出順序,叢集必須整理成機群或團隊範圍群組。如要瞭解如何整理叢集,請參閱社群銀行範例。將裝置分組後,您可以定義上游群組關係和各群組的過渡時間,藉此建立推出順序。在推出作業序列中,「上游」是指前一個群組,「下游」是指下一個群組。

將叢集整理成群組

在推出順序中,所有群組中的所有叢集都必須註冊相同的發布管道,並使用相同的子版本。如果未符合這些規定,且叢集之間有版本差異,可能會導致版本推出時發生問題。詳情請參閱「推出資格」。

您可以在機群之間建立推出作業序列,也可以在團隊的團隊範圍 (預覽版) 之間建立推出作業序列。

如「簡介:運用推出作業排序功能升級叢集」一文所述,團隊範圍是企業機群層級的建構,可將部分機群叢集與特定應用程式團隊建立關聯。您必須啟用 GKE Enterprise,才能使用團隊範圍。使用或建立團隊範圍進行推出順序時,請注意下列限制:

  • 以團隊為準的序列需要單一租戶叢集,也就是說,每個叢集只會與單一團隊建立關聯。推出順序不支援共用叢集 (一般車隊團隊管理功能支援)。

  • 每個團隊範圍都必須位於不同的車隊,才能在兩者之間建立推出順序。系統不支援在同一機群內的不同團隊範圍之間建立推出順序。

如果您已將叢集歸入群組,可以略過下列步驟,直接建立推出作業序列

機群

如要建立以機群為準的推出作業順序,請先將叢集分組為機群。您可以依部署環境 (例如測試、預備和正式環境) 整理叢集,如以機群為基礎的推出作業排序範例所示。

根據所選分組,將每個叢集註冊至機群

團隊

如要建立以團隊為單位的推出順序,請將叢集分組到團隊範圍。如要這麼做,請先依部署環境 (例如測試、預備和正式環境) 將叢集劃分為多個機群,如範例範圍式推出順序所示。然後,您可以進一步將叢集細分為不同團隊叢集的範圍。

  1. 針對序列中的每個叢集,向機群註冊叢集。叢集應註冊至專案中的機群,您將在該專案中為這個叢集建立團隊範圍。如要將叢集註冊至其他主專案的機群,請務必為跨專案註冊設定必要權限。
  2. 建立 2 到 3 個團隊範圍,方便整理叢集。在團隊各自機群的主專案中建立每個範圍。在推出序列中,您最多可以有三個團隊範圍。

    如需完整旗標清單,請參閱 gcloud container fleet scopes create 參考資料。使用 create 指令時,您可以搭配使用指令中的旗標建立推出順序

  3. 將每個叢集新增至範圍

建立推出作業序列

推出順序會整理為連結清單,最多包含五個元素。

建立推出作業序列時,您會為各叢集群組 (機群或團隊範圍) 設定下列屬性:

  • 上游群組:上游機群或團隊範圍,會限定下游群組的新版本。您不會為序列中的第一個群組設定上游群組。
  • 過渡時間:群組的過渡時間是指升級完成 (或推出作業已執行 30 天) 到下游群組可以開始升級之間的時間。詳情請參閱「推出順序中的版本資格運作方式」。

車隊 - gcloud

下列操作說明使用 gcloud container fleet clusterupgrade update 指令,但您也可以使用 gcloud container fleet clusterupgrade create 指令設定相同屬性。

請在下列每個指令中,將 SOAK_TIME 替換為要更新的機群浸泡時間。

建立推出作業序列:

  1. 設定序列中第一個機群的浸泡時間:

    gcloud container fleet clusterupgrade update \
        --default-upgrade-soaking=SOAK_TIME \
        --project=FIRST_FLEET_PROJECT_ID
    

    FIRST_FLEET_PROJECT_ID 替換為車隊主專案的專案 ID。

  2. 設定上游機群,以及序列中第二個機群的浸泡時間:

    gcloud container fleet clusterupgrade update \
        --upstream-fleet=FIRST_FLEET_PROJECT_ID \
        --default-upgrade-soaking=SOAK_TIME \
        --project=SECOND_FLEET_PROJECT_ID
    

    FIRST_FLEET_PROJECT_ID 替換為第一個車隊託管專案的專案 ID,並將 SECOND_FLEET_PROJECT_ID 替換為車隊託管專案的專案 ID。

  3. 選用步驟:如要在推出序列中加入超過兩個機群,請為序列中的下一個機群設定上游機群。

    下列指令會為序列中的第三個機群設定上游機群。如要新增第四或第五個機群,請重複這個步驟,並按照相同模式,將變數替換為相應機群主機專案的專案 ID (前一個機群和下一個機群)。

    為序列中的下一個機群設定上游機群:

    gcloud container fleet clusterupgrade update \
        --upstream-fleet=SECOND_FLEET_PROJECT_ID \
        --default-upgrade-soaking=SOAK_TIME \
        --project=THIRD_FLEET_PROJECT_ID
    

    SECOND_FLEET_PROJECT_ID 替換為第二個車隊主專案的專案 ID,並將 THIRD_FLEET_PROJECT_ID 替換為車隊主專案的專案 ID。

機群 - 控制台

  1. 前往 Google Cloud 控制台的「推出順序」頁面。

    前往「推出作業排序功能」

  2. 按一下「建立推出作業序列」

  3. 在「建立推出序列」窗格中,選取序列中的前兩個車隊:

    1. 在「機群 1」部分中,選取序列中的第一個機群。
    2. 在「Soak time for upstream fleet」(上游車隊的浸泡時間) 部分,使用「Days」(天)、「Hours」(小時) 和「Minutes」(分鐘) 欄位,為第一個車隊設定浸泡時間。
    3. 在「車隊 2」部分中,選取序列中的第二個車隊。
    4. 點選「建立」
  4. 選用:如要在這次發布程序中加入三個以上的車隊,請完成下列額外步驟:

    1. 在「推出作業圖表」中,按一下第二個機群的元素。
    2. 按一下 「新增下游機群」
    3. 在「Soak time for upstream fleet」(上游機群的浸泡時間) 區段,使用「Days」(天)、「Hours」(小時) 和「Minutes」(分鐘) 欄位,設定第二個機群的浸泡時間。
    4. 在「序列中的下一個機群」部分,選取序列中的第三個機群。
    5. 按一下 [儲存]
    6. 如要新增第四或第五支車隊,請重複上述步驟。

機群 - Terraform

本節說明如何使用 Terraform 建立以車隊為基礎的序列。您也可以使用這項資源更新序列。詳情請參閱 google_gke_hub_feature 的參考說明文件。

請在下列每個指令中,將 SOAK_TIME 替換為要更新的機群浸泡時間。

建立推出作業序列:

  1. 在 Terraform 設定中新增下列區塊,為序列中的第一個機群設定浸泡時間:

    resource "google_gke_hub_feature" "feature" {
      name = "clusterupgrade"
      location = "global"
      spec {
        clusterupgrade {
          upstream_fleets = []
          post_conditions {
            soaking = "SOAK_TIME"
          }
        }
      }
      project = "FIRST_FLEET_PROJECT_ID"
    }
    

    FIRST_FLEET_PROJECT_ID 替換為車隊主專案的專案 ID。

  2. 在 Terraform 設定中新增下列區塊,為序列中的第二個車隊設定上游車隊和浸泡時間:

    resource "google_gke_hub_feature" "feature" {
      name = "clusterupgrade"
      location = "global"
      spec {
        clusterupgrade {
          upstream_fleets = ["FIRST_FLEET_PROJECT_ID"]
          post_conditions {
            soaking = "SOAK_TIME"
          }
        }
      }
      project = "SECOND_FLEET_PROJECT_ID"
    }
    

    FIRST_FLEET_PROJECT_ID 替換為第一個車隊託管專案的專案 ID,並將 SECOND_FLEET_PROJECT_ID 替換為車隊託管專案的專案 ID。

  3. 選用:如要在推出順序中加入三個機群,請在 Terraform 設定中新增下列區塊,為順序中的機群設定上游機群:

    resource "google_gke_hub_feature" "feature" {
      name = "clusterupgrade"
      location = "global"
      spec {
        clusterupgrade {
          upstream_fleets = ["SECOND_FLEET_PROJECT_ID"]
          post_conditions {
            soaking = "SOAK_TIME"
          }
        }
      }
      project = "THIRD_FLEET_PROJECT_ID"
    }
    

    SECOND_FLEET_PROJECT_ID 替換為第二個車隊託管專案的專案 ID,並將 THIRD_FLEET_PROJECT_ID 替換為車隊託管專案的專案 ID。

    如要新增第四或第五支車隊,請重複這個步驟。

Teams - gcloud

您可以在建立或更新團隊範圍時設定這些屬性。下列操作說明使用 gcloud container fleet scopes update 指令,但您也可以使用 gcloud container fleet scopes create 指令建立團隊範圍時,設定相同的屬性。

請針對每個指令替換下列項目:

  • 變數,其中包含相應團隊範圍的名稱或團隊範圍的 Fleet 主機專案 ID。
  • 您要更新的團隊範圍的浸泡時間。SOAK_TIME

建立推出作業序列:

  1. 為序列中的第一個範圍設定浸泡時間:

    gcloud container fleet scopes update projects/FIRST_SCOPE_PROJECT_ID/locations/global/scopes/FIRST_SCOPE_NAME \
        --default-upgrade-soaking=SOAK_TIME \
        --project=FIRST_SCOPE_PROJECT_ID
    
  2. 在序列中設定第二個範圍的上游範圍和浸泡時間:

    gcloud container fleet scopes update projects/SECOND_SCOPE_PROJECT_ID/locations/global/scopes/SECOND_SCOPE_NAME \
        --upstream-scope=projects/FIRST_SCOPE_PROJECT_ID/locations/global/scopes/FIRST_SCOPE_NAME \
        --default-upgrade-soaking=SOAK_TIME \
        --project=SECOND_SCOPE_PROJECT_ID
    
  3. 選用:如要在推出順序中加入三個團隊範圍,請為順序中的第三個範圍設定上游範圍:

    gcloud container fleet scopes update projects/THIRD_SCOPE_PROJECT_ID/locations/global/scopes/THIRD_SCOPE_NAME \
        --upstream-scope=projects/SECOND_SCOPE_PROJECT/locations/global/scopes/SECOND_SCOPE_NAME \
        --default-upgrade-soaking=SOAK_TIME \
        --project=THIRD_SCOPE_PROJECT_ID
    

查看推出作業序列的狀態

您可以透過下列任一方法,查看推出序列的狀態:

  • 在 Google Cloud 控制台 中監控推出作業序列的視覺化呈現方式 (僅限「預覽」機群推出作業序列)。
  • 使用 gcloud CLI 或 GKE Hub API 檢查推出作業序列的狀態。

在 Google Cloud 控制台中監控推出作業序列

  1. 前往 Google Cloud 控制台的「推出順序」頁面。

    前往「推出作業排序功能」

  2. 如要查看序列,請參閱「監控推出作業序列」一節。如果沒有看到推出順序,請改用其他推出順序,或建立推出順序 (如尚未建立)。

如何使用控制台監控推出作業序列

這個頁面會顯示與專案車隊相關的發布順序。如要查看推出作業序列的進度,請按照下列步驟操作:

  • 查看整個推出順序,或查看機群和這些機群中個別叢集的狀態,以及機群之間的浸泡時間。如要檢查序列的設定,也可以查看沒有有效升級的序列。
  • 按照升級類型 (控制層或節點升級) 和特定版本 (例如 1.31.6-gke.500) 篩選。

GKE 升級序列中的所有叢集時,您可以透過視覺化方式監控整個推出作業序列,在升級正式環境叢集之前,先在各個環境中檢驗新版本。監控期間,您可以使用 gcloud CLI 管理推出順序,並視需要進行變更。

切換至其他推出作業序列

如果 Google Cloud 控制台中的現有專案是已註冊推出順序的機群的機群主機專案,這個頁面會顯示以機群為準的推出順序

如要查看其他推出作業序列,請從頁面頂端的專案挑選器中,選取與其他推出作業序列相關聯的機群主機專案。

使用 gcloud CLI

請使用下列各節中的指令,查看升級在推出序列中的進度。如要進一步瞭解提供的詳細資料,請參閱推出作業序列的狀態資訊

如要執行這些指令,請確保您具備每個機群主機專案的必要權限。舉例來說,如果序列在不同機群中具有跨專案範圍,您需要每個專案的權限才能描述序列。

在下列指令中,如果您只需要序列中某個車隊或範圍的資訊,請將 --show-linked-cluster-upgrade 旗標替換為 --show-cluster-upgrade

機群

查看以車隊為準的推出順序狀態:

gcloud container fleet clusterupgrade describe \
    --show-linked-cluster-upgrade --project=FLEET_PROJECT_ID

FLEET_PROJECT_ID 替換為序列中任何車隊的託管專案專案 ID。

如需完整旗標清單,請參閱參考資料 gcloud container fleet clusterupgrade describe

團隊

查看以團隊為準的推出順序狀態:

gcloud container fleet scopes describe SCOPE_NAME \
    --show-linked-cluster-upgrade
    --project=SCOPE_PROJECT_ID

SCOPE_NAME 替換為推出順序中的任何團隊範圍名稱,並將 SCOPE_PROJECT_ID 替換為這個團隊範圍的專案 ID。

如需完整旗標清單,請參閱 gcloud container fleet scopes describe 參考資料。

如要查看機群或團隊範圍內個別叢集的狀態,請在機群主機專案中執行下列指令,並查看 membershipStates 區段:

gcloud container fleet features describe clusterupgrade

推出作業序列的狀態資訊

查看版本推出狀態時,您可以瞭解每個群組的進度,以及該群組內叢集的進度。

叢集或群組的可能狀態如下表所示:

狀態 單一叢集 群組 (車隊或團隊範圍)
不符合資格 這個叢集不符合升級資格 這個群組中有一或多個叢集不符合升級條件。
待處理 叢集或部分標準節點集區的升級作業處於待處理狀態,或 Autopilot 叢集中的節點群組處於待處理狀態。 群組中的任何叢集都尚未開始升級。
IN_PROGRESS 叢集正在升級。 至少有一個叢集已開始升級,但所有叢集尚未完成升級。
SOAKING 叢集已完成升級,但尚未完成浸潤。 所有叢集都已完成升級,但尚未完成浸潤。
FORCED_SOAKING 升級作業超過最長升級時間 (30 天),因此我們強制進入過渡期。叢集仍可繼續升級。 升級作業超過最長升級時間 (30 天),因此我們強制進入過渡期。叢集仍可繼續升級。
完成 升級作業會視為「完成」,也就是說,升級作業已在這個叢集上完成浸潤測試。 升級作業會視為「完成」,並可供下游群組使用,也就是升級作業已完成浸潤。

在這些指令的輸出內容中,clusterUpgrade(s).specclusterUpgrade(s).state 屬性包含叢集升級的其他資訊,例如浸泡時間、叢集升級覆寫和升級狀態。

管理推出作業序列

您可以透過推出作業排序功能,以多種方式控管叢集自動升級作業,詳情請參閱下列章節。

變更群組的浸泡時間

您可以變更群組的預設浸泡時間,也可以變更群組升級至特定版本時的浸泡時間。最長不得超過 30 天。

更新預設浸泡時間

您可以在 Google Cloud 控制台 (僅限預先發布版、以車隊為準的推出

gcloud

如要變更群組的預設浸泡時間,請使用「建立推出程序」一節中的 gcloud CLI 指令,並省略設定上游群組的標記。

機群 - 控制台

  1. 前往 Google Cloud 控制台的「推出順序」頁面。

    前往「推出作業排序功能」

  2. 如要查看序列,請參閱「監控推出作業序列」一節。如果沒有看到推出順序,請改用其他推出順序,或建立推出順序 (如尚未建立)。

  3. 在「推出圖表」中,按一下要更新浸泡時間的機群元素後方的「浸泡時間」元素。

  4. 按一下 「編輯浸泡時間」

  5. 在「設定新的浸泡時間」部分,使用「天」、「時」和「分」欄位輸入新的浸泡時間。

  6. 如要儲存設定,請按一下「儲存」

覆寫預設浸泡時間

您可以變更特定版本發布的浸泡時間,與群組的預設浸泡時間不同。舉例來說,如果您已檢驗新版本,並準備好開始升級下一個群組,可以將浸泡時間設為零。如果需要比預設浸泡時間更長的時間,才能認證特定版本,也可以使用這項功能。

由於浸泡時間是依群組設定,如要覆寫這個序列中其他群組的浸泡時間,請使用相同指令更新,並視序列類型替換機群或範圍名稱。

如要按照本節的操作說明執行,請替換下列變數:

  • SOAK_TIME:要使用的浸泡時間 (預設值除外),例如「0d」(如要略過某個版本推出作業的浸泡時間)。
  • UPGRADE_NAME:升級類型,控制層升級為 k8s_control_plane,節點升級為 k8s_node
  • VERSION:您要在版本 (例如 1.25.2-gke.400) 推出至這個群組後,覆寫預設浸泡時間的 GKE 版本。

車隊 - gcloud

在車隊的主專案中執行這項指令,覆寫特定版本推出時使用的浸泡時間。

變更機群的浸泡時間:

gcloud container fleet clusterupgrade update
    --add-upgrade-soaking-override=SOAK_TIME \
    --upgrade-selector=name=UPGRADE_NAME,version=VERSION

機群 - Terraform

clusterupgrade 區塊中,將下列 gke_upgrades_overrides 區塊新增至 Terraform 設定,即可覆寫特定版本推出時使用的浸泡時間:

gke_upgrade_overrides {
    upgrade {
      name = "UPGRADE_NAME"
      version = "VERSION"
    }
    post_conditions {
      soaking = "SOAK_TIME"
    }
  }

Teams - gcloud

在團隊範圍機群的主專案中執行這項指令。將 SCOPE_NAME 替換為您要覆寫特定版本推出時所用浸泡時間的團隊範圍名稱。

變更團隊範圍的浸泡時間:

gcloud container fleet scopes update SCOPE_NAME \
    --add-upgrade-soaking-override=SOAK_TIME \
    --upgrade-selector=name=UPGRADE_NAME,version=VERSION

更新推出作業序列中的群組

您可以更新現有的推出作業序列,在序列中新增、移除或變更群組順序。如要進行這些變更,請更新群組之間的關聯。

您可以在 Google Cloud 控制台中執行這些步驟 (僅限預先發布版,以機群為準的推出順序),也可以使用 gcloud CLI 執行。

車隊 - gcloud

請使用 gcloud container fleet clusterupgrade update 指令,並加上 --upstream-fleet 旗標,新增或變更上游車隊。使用 --reset-upstream-fleet 旗標移除上游車隊。

你可以執行下列動作:

  • 在發布序列開頭新增另一個機群,方法是在序列中的第一個機群新增上游機群。
  • 如要變更推出作業序列中的機群順序,請變更上游機群關聯。
  • 移除第二個機群的上游機群,即可移除推出序列中的第一個機群。

機群 - 控制台

  1. 前往 Google Cloud 控制台的「推出順序」頁面。

    前往「推出作業排序功能」

  2. 如要查看序列,請參閱「監控推出作業序列」一節。如果沒有看到推出順序,請改用其他推出順序,或建立推出順序 (如尚未建立)。

  3. 在「推出圖表」中,按一下序列中現有車隊的元素。點選這些元素後,您可以執行下列部分動作來進行變更:

    • 按一下 「新增下游機群」
    • 按一下「新增上游機群」
    • 按一下 「移除機群」

你可以執行下列動作:

  • 在發布序列結尾新增另一個機群,方法是在序列中的最後一個機群新增下游機群。
  • 在發布序列開頭新增另一個機群,方法是在序列中的第一個機群新增上游機群。
  • 如要變更推出作業序列中的機群順序,請移除機群,然後使用不同的上游或下游機群重新新增機群。
  • 移除推出序列中的第一個機群。
  • 移除推出序列中的最後一個機群。
  • 移除序列中的第一個或最後一個機群後,即可移除序列中的中間機群。

Teams - gcloud

使用 gcloud container fleet scopes update 指令搭配 --upstream-scope 旗標,新增或變更上游團隊範圍。使用 --reset-upstream-scope 旗標移除上游團隊範圍。

你可以執行下列動作:

  • 在推出順序的開頭新增另一個團隊範圍,方法是在順序中的第一個團隊範圍新增上游團隊範圍。
  • 如要變更推出順序中的團隊範圍順序,請變更上游團隊範圍關聯。
  • 移除第二個團隊範圍的上游團隊範圍,即可移除推出作業序列中的第一個團隊範圍。

延遲完成群組的版本推出作業

如要暫時禁止群組完成將新版本推出至叢集的作業,可以將維護排除項目新增至尚未升級至目標版本的任何叢集。這項操作最多可暫停群組 30 天,避免群組進入浸泡時間或下游群組。30 天後,群組就會開始過渡。

您也可以變更該群組的浸泡時間為 30 天,盡量延長推出順序的等待時間,再繼續下一個群組。

如要進一步延後下一個群組的升級作業,可以為下一個群組中的叢集設定維護排除條件。

在以機群和團隊為準的推出作業序列之間切換

您可以從以車隊為準的序列切換為以團隊為準的序列,或從以團隊為準的序列切換為以車隊為準的序列。這些操作說明假設您要轉移的序列,與範例圖表中所示的序列類似。

從車隊到團隊

如要將叢集從機群推出作業排序改為團隊推出作業排序,請按照下列步驟操作:

  1. 為每個機群中的所有叢集設定維護排除項目,防止您修改設定時進行任何升級。
  2. 請確認您已在機群主專案啟用 GKE Enterprise
  3. 在每個機群中,建立一或多個團隊範圍,將該機群中的叢集群組細分。
  4. 在每個機群中,建立一或多個推出作業序列,並在相符的團隊範圍之間進行。
  5. 將叢集新增至新的團隊範圍
  6. 移除為這項變更設定的維護作業排除時段

團隊到機群

如要將叢集從以團隊為準的推出作業順序,變更為以機群為準的推出作業順序,請按照下列步驟操作:

  1. 為每個機群中的所有叢集設定維護排除項目,防止在修改設定時進行任何升級。
  2. 在機群之間建立推出作業序列
  3. 將叢集從團隊範圍中移除。 現在,這些叢集只會註冊至範圍各自的機群,也就是您在上一步驟中加入推出作業序列的機群。
  4. 刪除團隊範圍
  5. 移除為這項變更設定的維護作業排除時段

刪除序列

如要刪除序列,請移除每個群組的上游關聯 (第一個群組除外)。第一個群組沒有上游群組。

您可以在 Google Cloud 控制台中執行這些步驟 (僅限預先發布版,以機群為準的推出順序),也可以使用 gcloud CLI 執行。

車隊 - gcloud

在推出順序中,除了第一個車隊以外,請在每個車隊的車隊主機專案中執行下列指令:

gcloud container fleet clusterupgrade update --reset-upstream-fleet

機群 - 控制台

  1. 前往 Google Cloud 控制台的「推出順序」頁面。

    前往「推出作業排序功能」

  2. 如要查看序列,請參閱「監控推出作業序列」一節。如果沒有看到推出順序,請改用其他推出順序,或建立推出順序 (如尚未建立)。

  3. 在「推出圖表」中,按一下最後一個機群的元素。

  4. 按一下 「移除機群」

  5. 如要移除車隊,請按一下「移除」

  6. 重複上述三個步驟,直到只剩下第一個車隊為止。

Teams - gcloud

在推出順序的第二和第三個團隊範圍中,於車隊主機專案執行下列指令:

gcloud container fleet scopes update SCOPE_NAME --reset-upstream-scope

SCOPE_NAME 分別替換為第二個和第三個範圍的名稱。

疑難排解

排解推出資格問題

如果推出作業序列中的所有叢集升級目標不同,GKE 可能無法繼續升級叢集。如果上游群組未限定升級目標,就無法將目標傳遞至下游群組,自動升級作業也無法繼續。如果上游群組中的叢集為下游群組中的叢集限定無效的升級目標,自動升級作業也無法繼續。

如要檢查推出順序是否有任何推出資格問題,請查看推出順序的狀態。如果群組不符合資格,請按照操作說明查看群組中個別叢集的狀態。

如要立即推進叢集升級作業,請按照「推進部分符合資格的推出作業」一文的說明,移除所有狀態為 INELIGIBLE 的叢集。

修正群組中的資格問題

在群組中,如果叢集版本較舊而不符合資格 (例如,群組中的大多數叢集要從 1.23 升級至 1.24,但某個叢集是 1.22 版),您可以手動將叢集升級至 1.24,解決版本不一致的問題。

在群組中,如果叢集版本高於自動升級目標,GKE 會忽略這些叢集。這些叢集不會阻礙升級作業繼續進行至下游群組。

修正群組間的資格條件

如果群組間的升級目標不一致,下游群組的版本較新 (例如上游群組從 1.23 升級至 1.24,而下游群組中的叢集為 1.25),您可以手動將上游群組中的叢集升級至 1.25,確保升級作業順利進行。

如果群組之間的升級目標不一致,下游群組使用較舊版本 (例如上游群組從 1.24 升級至 1.25,而下游群組中的叢集使用 1.23),您可以手動將下游群組中的叢集升級至 1.24 或 1.25,確保升級作業順利進行。如果 GKE 將上游群組升級至下游群組適用的任何版本,GKE 會將下游群組中的叢集升級至該升級目標。在這種情況下,您不需要手動升級叢集,即可解除封鎖序列。詳情請參閱「上游群組為下游群組選定多個升級目標」一文。

進展至下一個推出階段 (部分符合資格)

如果群組中的叢集升級作業因推出資格問題 (例如群組內版本不一致) 而無法完成,您可以從群組中移除不符合群組升級目標的叢集,完成版本推出作業並開始浸潤時間,或繼續推出作業序列中的下一個群組。您也可以基於其他原因從群組中移除叢集,例如這個叢集的使用情形與群組中的其他叢集不再相關。

請按照操作說明從機群取消註冊叢集,或從團隊範圍移除叢集,視推出順序類型而定。

移除所有阻礙群組版本推出作業的叢集後,群組版本推出作業就會完成。請按照這篇文章的指示操作,確認版本推出狀態。

後續步驟