新增及管理節點集區

本頁面說明如何新增、管理、擴充、升級及刪除在 Google Kubernetes Engine (GKE) Standard 叢集中執行的節點集區,以便針對效能和擴充性最佳化 GKE Standard 叢集。Standard 叢集中的節點集區包括 Standard 節點集區和 Autopilot 代管的節點集區。除了「升級節點集區」一節外,本文件中的資訊僅適用於 Standard 節點集區。您也會瞭解如何將 Pod 部署至特定 Standard 節點集區,以及節點集區升級對執行中工作負載的影響。

本頁面適用於需要建立及設定叢集,並在 GKE 上部署工作負載的操作員、Cloud 架構師和開發人員。如要進一步瞭解內容 Google Cloud中提及的常見角色和範例工作,請參閱「常見的 GKE 使用者角色和工作」。

閱讀本頁內容前,請先熟悉節點集區。

事前準備

開始之前,請確認您已執行下列工作:

  • 啟用 Google Kubernetes Engine API。
  • 啟用 Google Kubernetes Engine API
  • 如要使用 Google Cloud CLI 執行這項工作,請安裝並初始化 gcloud CLI。如果您先前已安裝 gcloud CLI,請執行 gcloud components update 指令,取得最新版本。較舊的 gcloud CLI 版本可能不支援執行本文中的指令。

設定 GKE 的 IAM 服務帳戶

GKE 會使用附加至節點的 IAM 服務帳戶,執行記錄和監控等系統工作。這些節點服務帳戶至少須具備專案的 Kubernetes Engine 預設節點服務帳戶 (roles/container.defaultNodeServiceAccount) 角色。根據預設,GKE 會使用 Compute Engine 預設服務帳戶做為節點服務帳戶,該帳戶會在專案中自動建立。

如要將 roles/container.defaultNodeServiceAccount 角色授予 Compute Engine 預設服務帳戶,請完成下列步驟:

控制台

  1. 前往「Welcome」(歡迎) 頁面:

    前往「歡迎」頁面

  2. 在「專案編號」欄位中,按一下「複製到剪貼簿」。
  3. 前往「IAM」(身分與存取權管理) 頁面:

    前往「身分與存取權管理」頁面

  4. 按一下「Grant access」(授予存取權)。
  5. 在「New principals」(新增主體) 欄位中,指定下列值:
    PROJECT_NUMBER-compute@developer.gserviceaccount.com
    將 PROJECT_NUMBER 替換為您複製的專案編號。
  6. 在「選取角色」選單中,選取「Kubernetes Engine 預設節點服務帳戶」角色。
  7. 按一下 [儲存]。

gcloud

  1. 找出 Google Cloud 專案編號:
    gcloud projects describe PROJECT_ID \
        --format="value(projectNumber)"

    將 PROJECT_ID 替換為專案 ID。

    輸出結果會與下列內容相似:

    12345678901
    
  2. 將 roles/container.defaultNodeServiceAccount 角色授予 Compute Engine 預設服務帳戶:
    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com" \
        --role="roles/container.defaultNodeServiceAccount"

    將 PROJECT_NUMBER 替換為上一個步驟中的專案編號。

將節點集區新增至標準叢集

您可以使用 gcloud CLI、 Google Cloud 控制台或 Terraform,將新的節點集區新增至 GKE Standard 叢集。GKE 也支援自動佈建節點,可根據資源調度需求,自動管理叢集中的節點集區。

最佳做法:

建立並使用權限最小的 Identity and Access Management (IAM) 服務帳戶,供節點集區使用,而非 Compute Engine 預設服務帳戶。如需建立僅具備必要權限的服務帳戶的操作說明,請參閱「 強化叢集安全性」。

gcloud

如要建立節點集區,請執行 gcloud container node-pools create 指令:

gcloud container node-pools create POOL_NAME \
    --cluster CLUSTER_NAME \
    --location=CONTROL_PLANE_LOCATION \
    --service-account SERVICE_ACCOUNT

更改下列內容:

  • POOL_NAME:新節點集區的名稱。
  • CLUSTER_NAME:現有叢集的名稱。
  • CONTROL_PLANE_LOCATION:叢集控制層的 Compute Engine 位置。提供區域叢集的區域,或可用區叢集的可用區。
  • SERVICE_ACCOUNT:節點要使用的 IAM 服務帳戶名稱。

    強烈建議您指定權限最小的 IAM 服務帳戶,供節點使用,而非 Compute Engine 預設服務帳戶。如要瞭解如何建立權限最小的服務帳戶,請參閱「使用最小權限服務帳戶」。

    如要在 gcloud CLI 中指定自訂服務帳戶,請在指令中加入下列旗標:

    --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com

    將 SERVICE_ACCOUNT_NAME 替換為僅具備必要權限的服務帳戶名稱。

如需可指定的完整選用標記清單,請參閱 gcloud container node-pools create 說明文件。

輸出結果會與下列內容相似:

Creating node pool POOL_NAME...done.
Created [https://container.googleapis.com/v1/projects/PROJECT_ID/zones/us-central1/clusters/CLUSTER_NAME/nodePools/POOL_NAME].
NAME: POOL_NAME
MACHINE_TYPE: e2-medium
DISK_SIZE_GB: 100
NODE_VERSION: 1.21.5-gke.1302

這項輸出內容會顯示節點集區的詳細資料,例如節點上執行的機器類型和 GKE 版本。

有時節點集區會成功建立,但 gcloud 指令會逾時,而不是回報伺服器的狀態。如要查看所有節點集區的狀態 (包括尚未完全佈建的節點集區),請使用下列指令:

gcloud container node-pools list --cluster CLUSTER_NAME \
    --location=CONTROL_PLANE_LOCATION

控制台

如要將節點集區新增至現有的 Standard 叢集,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。

    前往「Google Kubernetes Engine」

  2. 在叢集清單中,按一下要修改的 Standard 叢集名稱。

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

  4. 按一下「建立由使用者管理的節點集區」。

  5. 設定節點集區。

  6. 按一下導覽選單中的「Security」(安全性)。

  7. 如要為節點指定自訂 IAM 服務帳戶,請執行下列步驟:
    1. 在「進階設定」頁面中,展開「安全性」部分。
    2. 在「Service account」(服務帳戶) 選單中,選取偏好的服務帳戶。

    強烈建議您指定權限最小的 IAM 服務帳戶,供節點使用,而非 Compute Engine 預設服務帳戶。如要瞭解如何建立權限最小的服務帳戶,請參閱「使用最小權限服務帳戶」。

  8. 按一下「建立」即可新增節點集區。

Terraform

請使用下列其中一個範例:

  • 新增使用 Compute Engine 預設 IAM 服務帳戶的節點集區:
resource "google_container_node_pool" "default" {
  name    = "gke-standard-regional-node-pool"
  cluster = google_container_cluster.default.name

  node_config {
    service_account = google_service_account.default.email
  }
}
  • 新增使用自訂 IAM 服務帳戶的節點集區:
  1. 建立 IAM 服務帳戶,並授予專案的 roles/container.defaultNodeServiceAccount 角色:

    resource "google_service_account" "default" {
      account_id   = "service-account-id"
      display_name = "Service Account"
    }
    
    data "google_project" "project" {
    }
    
    resource "google_project_iam_member" "default" {
      project = data.google_project.project.project_id
      role    = "roles/container.defaultNodeServiceAccount"
      member  = "serviceAccount:${google_service_account.default.email}"
    }
  2. 建立使用新服務帳戶的節點集區:

    resource "google_container_node_pool" "default" {
      name    = "gke-standard-regional-node-pool"
      cluster = google_container_cluster.default.name
    
      node_config {
        service_account = google_service_account.default.email
      }
    }

如要進一步瞭解如何使用 Terraform,請參閱「GKE 的 Terraform 支援」。

查看 Standard 叢集中的節點集區

gcloud

如要列出標準叢集的所有節點集區,請執行 gcloud container node-pools list 指令:

gcloud container node-pools list --cluster CLUSTER_NAME \
    --location=CONTROL_PLANE_LOCATION

如要查看特定節點集區的詳細資料,請執行 gcloud container node-pools describe 指令:

gcloud container node-pools describe POOL_NAME \
    --cluster CLUSTER_NAME \
    --location=CONTROL_PLANE_LOCATION

更改下列內容:

  • CLUSTER_NAME:叢集名稱。
  • POOL_NAME:要查看的節點集區名稱。
  • CONTROL_PLANE_LOCATION:叢集控制層的 Compute Engine 位置。提供區域叢集的區域,或可用區叢集的可用區。

控制台

如要查看標準叢集的節點集區,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。

    前往「Google Kubernetes Engine」

  2. 在叢集清單中,按一下標準叢集名稱。

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

  4. 在「Node Pools」(節點集區) 下方,按一下要查看的節點集區名稱。

調度節點集區資源

您可以視需求擴充或縮減節點集區,達到最佳效能和成本效益。使用 GKE Standard 節點集區時,您可以變更節點集區中的節點數量,水平調整節點集區大小,也可以變更節點的機器屬性設定,垂直調整節點集區大小。

變更節點數量,水平調度資源

gcloud

如要調整叢集節點集區的大小,請執行 gcloud container clusters resize 指令:

gcloud container clusters resize CLUSTER_NAME \
    --location=CONTROL_PLANE_LOCATION \
    --node-pool POOL_NAME \
    --num-nodes NUM_NODES

更改下列內容:

  • CLUSTER_NAME:要調整大小的叢集名稱。
  • CONTROL_PLANE_LOCATION:叢集控制層的 Compute Engine 位置。如果是區域叢集,請提供區域;如果是可用區叢集,請提供可用區。
  • POOL_NAME:要調整大小的節點集區名稱。
  • NUM_NODES:可用區叢集內集區中的節點數量。如果您使用多可用區或區域叢集,NUM_NODES 是節點集區所在各可用區的節點數量。

針對每個節點集區重複執行這個指令。如果您的叢集只有一個節點集區,請省略 --node-pool 旗標。

控制台

如要調整叢集的節點集區大小,請執行下列步驟:

  1. 前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。

    前往「Google Kubernetes Engine」

  2. 在叢集清單中,按一下要修改的 Standard 叢集名稱。

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

  4. 在「Node Pools」(節點集區) 區段,點選要調整大小的節點集區名稱。

  5. 按一下 「Resize」(調整大小)。

  6. 在「Number of nodes」(節點數量) 欄位中,輸入節點集區中您想要的節點數量,然後按一下「Resize」(調整大小)。

  7. 視需要在每個節點集區重複操作。

變更節點機器屬性,進行垂直資源調度

您可以修改節點集區設定的機型、磁碟類型和磁碟大小。

編輯一或多個機器屬性時,GKE 會根據為節點集區設定的升級策略,將節點更新為新設定。如果設定藍綠升級策略,就能將工作負載從原始節點遷移至新節點,並在遷移失敗時復原原始節點。檢查節點集區的升級設定,確認設定的策略符合節點更新需求。

在下列指令中,至少更新一項醒目顯示的機器屬性:

gcloud container node-pools update POOL_NAME \
    --cluster CLUSTER_NAME \
    --location=CONTROL_PLANE_LOCATION \
    --machine-type MACHINE_TYPE \
    --disk-type DISK_TYPE \
    --disk-size DISK_SIZE

請省略不想變更的機器屬性旗標。不過,您必須使用至少一個機器屬性標記,否則指令會失敗。

更改下列內容:

  • POOL_NAME:要調整大小的節點集區名稱。
  • CLUSTER_NAME:要調整大小的叢集名稱。
  • CONTROL_PLANE_LOCATION:叢集控制層的 Compute Engine 位置。如果是區域叢集,請提供區域;如果是可用區叢集,請提供可用區。
  • MACHINE_TYPE:節點使用的機器類型。 詳情請參閱「gcloud container node-pools update」。
  • DISK_TYPE:節點 VM 開機磁碟類型,可以是 pd-standard、pd-ssd、pd-balanced 或 hyperdisk-balanced,視機器系列而定。您無法使用 hyperdisk-extreme 或 hyperdisk-throughput 做為開機磁碟。如要進一步瞭解機器系列支援的磁碟,請參閱「機器系列比較」表格。
  • DISK_SIZE:節點 VM 開機磁碟的大小 (以 GB 為單位)。預設值為 100 GB。

這項變更需要重新建立節點,可能會中斷執行中的工作負載。如要瞭解這項特定變更的詳細資料,請在「手動變更,使用節點升級策略重建節點,但不遵守維護政策」表格中找到對應的資料列。如要進一步瞭解節點更新,請參閱「規劃節點更新中斷情形」。

升級節點集區

根據預設,標準節點集區會啟用自動升級功能,且標準叢集中的所有 Autopilot 代管節點集區一律會啟用自動升級功能。節點自動升級功能可確保叢集的控制層和節點版本保持同步,並符合 Kubernetes 版本偏差政策,確保控制層與節點相容,最多可比控制層早兩個子版本。例如,Kubernetes 1.34 控制層與 Kubernetes 1.32 節點相容。根據預設,GKE 一次只會自動升級一個節點集區。如要同時自動升級多個節點集區,可以設定節點集區並行升級 (搶先版)。

最佳做法:

請勿停用標準節點集區的節點自動升級功能,這樣叢集才能享有上一段列出的升級功能。

升級 GKE Standard 節點集區時,您可以選擇三種可設定的升級策略,包括節點數擴充升級、藍綠升級和自動調度資源藍綠升級 (預先發布版)。Standard 叢集中由 Autopilot 管理的節點集區一律會使用節點數擴充升級。

如果是 Standard 節點集區,請選擇策略,並使用參數調整策略,以最符合叢集環境的需求。

節點升級的運作方式

節點升級期間,GKE 會停止將新的 Pod 排程至該節點,並嘗試將執行中的 Pod 排程至其他節點。這與重新建立節點的其他事件類似,例如啟用或停用節點集區的功能。

在自動或手動升級節點期間,系統最多會尊重 1 小時的 Pod 中斷預算 (PDB) 和 Pod 終止寬限期。如果節點上執行的 Pod 在一小時後仍無法排定至新節點,GKE 仍會啟動升級程序。即使您將 PDB 設為一律提供所有副本 (將 maxUnavailable 欄位設為 0 或 0%,或將 minAvailable 欄位設為 100% 或副本數量),這項行為仍適用。在上述所有情況下,GKE 都會在 1 小時後刪除 Pod,以便刪除節點。

最佳做法:

如果標準節點集中的工作負載需要更彈性的正常終止機制,請使用藍綠升級,這項功能提供額外的浸泡時間設定,可將 PDB 檢查時間延長超過預設的一小時。

如要進一步瞭解節點終止期間的一般情況,請參閱 Pod 相關主題。

只有在所有節點都已重新建立,且叢集處於新狀態時,升級才會完成。新升級的節點向控制層註冊時,GKE 會將節點標示為可排程。

新的節點執行個體會執行新的 Kubernetes 版本,以及下列項目:

如要視為節點集區升級完成,必須重新建立節點集區中的所有節點。如果升級作業已開始但未完成,且處於部分升級狀態,節點集區版本可能不會反映所有節點的版本。詳情請參閱「節點集區升級不完整,導致部分節點版本與節點集區版本不符」。如要確認節點集區升級作業是否完成,請檢查節點集區升級狀態。如果升級作業超出保留期限,請確認每個節點版本都與節點集區版本相符。

升級前,請先將資料儲存至永久磁碟

升級節點集區前,請務必使用 [永久磁碟區] (使用 [永久磁碟]),將需要保留的資料儲存在 Pod 中。升級期間,系統會解除掛接永久磁碟,而非清除磁碟,並在 Pod 之間轉移資料。

永久磁碟的使用會受到以下限制:

  • 執行 Pod 的節點必須是 Compute Engine VM。
  • 這些 VM 必須與永久磁碟位於相同的 Compute Engine 專案和可用區。

如要瞭解如何將永久磁碟新增至現有節點執行個體,請參閱 Compute Engine 說明文件中的「新增或調整可用區永久磁碟大小」。

手動升級節點集區

您可以手動升級標準叢集中標準節點集區或 Autopilot 管理的節點集區版本。您可以比照控制層的版本,或使用仍可用的舊版,只要與控制層相容即可。您可以手動並行升級多個節點集區,這與您設定並行節點集區升級時,GKE 並行升級多個節點集區的方式類似。

當 GKE 升級節點集區時 (手動或自動), 您使用 kubectl 新增至個別節點的標籤可能不會保留。因此,標籤應在節點集區層級新增。

如果對 GKE 叢集進行其他類型的變更,導致節點重新建立,也會移除標籤。為避免標籤遺失,請改為將標籤套用至節點集區。

手動升級節點集區前,請考量下列條件:

  • 升級節點集區可能會導致該節點集區中執行的工作負載中斷。如要避免這種情況,您可以建立具有所需版本的新節點集區,並遷移工作負載。遷移後,即可刪除舊的節點集區。
  • 如果升級的節點集區含有處於錯誤狀態的 Ingress,執行個體群組就不會同步。如要解決這個問題,請先使用 kubectl get ing 指令檢查狀態。如果執行個體群組未同步,您可以重新套用用於建立 Ingress 的資訊清單,解決這個問題。

您可以手動將節點集區升級至與控制層相容的版本:

  • 如果是 Standard 節點集區,您可以使用 Google Cloud 控制台或 Google Cloud CLI。
  • 如果是 Autopilot 代管的節點集區,則只能使用 Google Cloud CLI。

控制台

如要使用 Google Cloud 控制台升級標準節點集區,請執行下列步驟:

  1. 前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。

    前往「Google Kubernetes Engine」

  2. 按一下叢集名稱。

  3. 在「Cluster details」(叢集詳細資料) 頁面中,按一下「Nodes」(節點) 分頁標籤。

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

  5. 按一下「Edit」(編輯)。

  6. 按一下「Node version」(節點版本) 下方的「Change」(變更)。

  7. 從「Node version」(節點版本) 下拉式選單中選取所需版本,然後按一下「Change」(變更)。

節點的版本可能需要幾分鐘的時間才能變更完畢。

gcloud

本節指令會使用下列變數:

  • CLUSTER_NAME:要升級的節點集區所在叢集的名稱。
  • NODE_POOL_NAME:要升級的節點集區名稱。
  • CONTROL_PLANE_LOCATION:控制層的位置 (區域或可用區),例如 us-central1 或 us-central1-a。
  • VERSION:節點升級後的 Kubernetes 版本。例如 --cluster-version=1.34.1-gke.1293000 或 cluster-version=latest。

升級節點集區:

gcloud container clusters upgrade CLUSTER_NAME \
  --node-pool=NODE_POOL_NAME \
  --location=CONTROL_PLANE_LOCATION

如要在節點上指定不同版本的 GKE,請使用選用的 --cluster-version 標記:

gcloud container clusters upgrade CLUSTER_NAME \
  --node-pool=NODE_POOL_NAME \
  --location=CONTROL_PLANE_LOCATION \
  --cluster-version VERSION

如要進一步瞭解如何指定版本,請參閱「版本管理」。

詳情請參閱 gcloud container clusters upgrade 說明文件。

將 Pod 部署至特定節點集區

您可以在 Pod 資訊清單中使用 nodeSelector,明確將 Pod 部署至特定節點集區。nodeSelector 會將 Pod 排定至具有相符標籤的節點。

所有 GKE 節點集區都有採用以下格式的標籤:cloud.google.com/gke-nodepool: POOL_NAME。將這個標籤新增至 Pod 的 nodeSelector 欄位,如下例所示:

apiVersion: v1
kind: Pod
metadata:
  name: nginx
  labels:
    env: test
spec:
  containers:
  - name: nginx
    image: nginx
    imagePullPolicy: IfNotPresent
  nodeSelector:
    cloud.google.com/gke-nodepool: POOL_NAME

詳情請參閱「將 Pod 指派給節點」。

除了節點選取器,您也可以使用節點親和性。如果您想要「軟性」規則,讓 Pod 嘗試滿足限制,但即使無法滿足限制,仍會排程,請使用節點親和性。詳情請參閱「節點親和性」。您也可以為容器指定資源要求。

降級節點集區

如果 GKE 已完成節點集區升級,您可以將節點集區降級。GKE 無法降級部分升級的節點集區,只能復原。如果您嘗試觸發部分升級節點集區的降級作業,GKE 不會透過該作業更新節點集區中的任何節點。如要確認節點集區是否未完全升級,且只能復原,請先檢查節點集區升級狀態。如果升級作業已取消或失敗,您可以檢查節點集區中的節點,確認是否仍有節點執行舊版本,藉此確認節點集區升級作業是否未完成。

如果節點集區升級作業未完成,且您想將升級的節點復原至先前的版本,請按照指示復原節點集區升級作業。如果節點集區升級完成後,您想還原升級,因為升級導致工作負載發生問題,可以按照本節的指示,將節點集區降級至較早的版本。降級節點集區前,請先詳閱限制。

最佳做法:

如果需要針對影響工作負載的節點集區升級作業,盡量降低風險,請使用藍綠節點升級策略。如果升級失敗,您可以復原進行中的升級作業,回到原始節點。

  1. 為叢集設定維護排除項目,防止 GKE 在節點集區降級後自動升級。
  2. 如要降級至舊版,請按照手動升級節點集區的步驟操作,並指定舊版。

刪除節點集區

刪除節點集區會一併刪除節點和所有執行中的工作負載。根據預設,刪除節點集區時,GKE 不會遵守 PodDisruptionBudget 設定。如要瞭解如何變更這項設定,請參閱「更新節點集區,在刪除節點集區時遵守 PDB」。

如要進一步瞭解刪除節點集區對工作負載的影響 (包括與節點選取器的互動),請參閱「刪除節點集區」。

您只能刪除 Standard 節點集區。您無法刪除在 Standard 叢集中執行的 Autopilot 代管節點集區,GKE 會在不再需要這些集區時自動清除。

使用 gcloud CLI 或Google Cloud 控制台刪除節點集區:

gcloud

如要刪除節點集區,請執行 gcloud container node-pools delete 指令:

gcloud container node-pools delete POOL_NAME \
    --cluster CLUSTER_NAME \
    --location=CONTROL_PLANE_LOCATION

更改下列內容:

  • POOL_NAME:要刪除的節點集區名稱。
  • CLUSTER_NAME:叢集名稱。
  • CONTROL_PLANE_LOCATION:叢集控制層的 Compute Engine 位置。提供區域叢集的區域,或可用區叢集的可用區。

控制台

如要刪除節點集區,請執行下列步驟:

  1. 前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。

    前往「Google Kubernetes Engine」

  2. 在叢集清單中,按一下要修改的標準叢集名稱。

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

  4. 在「Node Pools」(節點集區) 區段中,按一下要刪除的節點集區旁邊的 。

  5. 當系統提示時,按一下「Delete」(刪除)。

更新節點集區,在刪除節點集區時遵循 PDB

根據預設,GKE 在刪除節點集區時不會遵守 PodDisruptionBudget 設定。不過,您可以更新節點集區的設定,讓 GKE 在刪除節點集區時遵守 PDB,最多可達一小時。尊重 PDB 可讓工作負載有機會移至叢集中的其他節點。這項設定不會影響刪除叢集時的節點集區刪除作業。

如要更新節點集區的設定,請執行下列 gcloud CLI 指令:

gcloud container node-pools update POOL_NAME
    --cluster=CLUSTER_NAME \
    --location=CONTROL_PLANE_LOCATION \
    --respect-pdb-during-node-pool-deletion

更改下列內容:

  • POOL_NAME:節點集區的名稱。
  • CLUSTER_NAME:叢集名稱。
  • CONTROL_PLANE_LOCATION:叢集控制層的 Compute Engine 位置。提供區域叢集的區域,或可用區叢集的可用區。

您也可以在新增節點集區時使用 --respect-pdb-during-node-pool-deletion 旗標。

如要移除這項設定,並使用預設設定 (在刪除節點集區時不遵循 PDB),請參閱下一節。

更新節點集區,在刪除節點集區時不遵守 PDB

您可以更新節點集區,還原為預設設定,在刪除節點集區時不遵守 PDB。

如要更新設定,請執行下列 gcloud CLI 指令:

gcloud container node-pools update POOL_NAME
    --cluster=CLUSTER_NAME \
    --location=CONTROL_PLANE_LOCATION \
    --no-respect-pdb-during-node-pool-deletion

更改下列內容:

  • POOL_NAME:節點集區的名稱。
  • CLUSTER_NAME:叢集名稱。
  • CONTROL_PLANE_LOCATION:叢集控制層的 Compute Engine 位置。提供區域叢集的區域,或可用區叢集的可用區。

將節點遷移至其他機器類型

如要瞭解在機器類型之間遷移工作負載的不同方法 (例如遷移至較新的機器類型),請參閱「將節點遷移至其他機器類型」。

在節點集區之間遷移工作負載

如要將工作負載從一個節點集區遷移至另一個節點集區,請參閱「在節點集區之間遷移工作負載」。舉例來說,如果您要以新的節點集區取代現有節點集區,並想確保工作負載從現有節點移至新節點,就可以使用這些操作說明。

疑難排解

如需疑難排解資訊,請參閱「排解標準節點集區問題」和「排解節點註冊問題」。

後續步驟