本頁面說明如何在 Google Kubernetes Engine (GKE) 中管理叢集。如要瞭解叢集的運作方式,請參閱叢集架構。
事前準備
開始之前,請確認你已完成下列工作:
- 啟用 Google Kubernetes Engine API。 啟用 Google Kubernetes Engine API
- 如要使用 Google Cloud CLI 執行這項工作,請安裝並初始化 gcloud CLI。如果您先前已安裝 gcloud CLI,請執行
gcloud components update
,取得最新版本。
查看叢集
gcloud
如要查看特定叢集,請執行下列指令:
gcloud container clusters describe CLUSTER_NAME
將 CLUSTER_NAME
替換為叢集名稱。
如要查看預設區域中的所有叢集,請執行下列指令:
gcloud container clusters list
控制台
如要查看叢集,請前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。
如要進一步瞭解叢集,請從清單中選取叢集。
設定 kubectl
的預設叢集
如果有多個叢集,則可以設定 kubectl
指令列工具的預設叢集。
詳情請參閱為 kubectl
指令設定預設叢集。
設定 gcloud
的預設叢集
如要設定 gcloud
指令的預設叢集,請執行下列指令:
gcloud config set container/cluster CLUSTER_NAME
將 CLUSTER_NAME
替換為叢集名稱。
叢集升級
根據預設,GKE 會自動升級叢集。不過,您可以選擇自行升級標準叢集。詳情請參閱手動升級叢集。
如需升級叢集的指南,請參閱升級叢集的最佳做法。
在標準叢集中新增或移除區域
下列各節說明如何新增或移除叢集區域。所有區域都必須位在叢集的地區中。
變更區域叢集的區域
對於現有的區域叢集,您可以新增或移除區域。
gcloud
如要為區域叢集新增或移除區域,請使用 gcloud container
clusters update
指令:
gcloud container clusters update CLUSTER_NAME \
--location CONTROL_PLANE_LOCATION \
--node-locations COMPUTE_ZONE1,COMPUTE_ZONE2
更改下列內容:
CLUSTER_NAME
:您為叢集選擇的名稱。CONTROL_PLANE_LOCATION
:叢集控制層的 Compute Engine區域。COMPUTE_ZONE1,COMPUTE_ZONE2,[...]
:建立節點的可用區。您可以視叢集需求指定任意數量的區域。所有可用區都必須與叢集的控制層位於相同區域,並由--location
旗標指定。如果是區域叢集,--node-locations
必須包含叢集的主要區域。
例如,example-cluster
是在 us-central1-a
中執行。如要在叢集中額外新增兩個區域,請執行下列指令:
gcloud container clusters update example-cluster \
--zone us-central1-a
--node-locations us-central1-a,us-central1-b,us-central1-c
在另一個範例中,example-cluster
在 us-central1-a
、us-central1-b
和 us-central1-c
中執行。如果只要叢集在 us-central1-a
和 us-central1-b
中執行,則可以執行下列指令:
gcloud container clusters update example-cluster \
--zone us-central1-a \
--node-locations us-central1-a,us-central1-b
主控台
如要在現有的區域中新增或移除區域,請執行下列步驟:
前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。
按一下要編輯的叢集旁的more_vert「Actions」(動作),然後按一下edit「Edit」(編輯)。
在「詳細資料」分頁中,按一下「預設節點區域」欄位的「編輯節點集區」edit。
選取所需區域,然後儲存變更。
變更地區叢集的區域
目前,只能使用 gcloud
指令變更現有地區叢集的區域。
如要為地區叢集新增或移除區域,請使用 gcloud container
clusters update
指令並加上 --node-locations
旗標:
gcloud container clusters update CLUSTER_NAME \
--location CONTROL_PLANE_LOCATION \
--node-locations COMPUTE_ZONE1,COMPUTE_ZONE2
更改下列內容:
CLUSTER_NAME
:叢集名稱。CONTROL_PLANE_LOCATION
:叢集控制層的 Compute Engine 區域。COMPUTE_ZONE1
、COMPUTE_ZONE2,[...]
:建立節點的控制平面區域區域。這些區域必須與叢集控制層位於相同的CONTROL_PLANE_LOCATION
,並以--location
旗標指定。
例如,example-cluster
是在 us-central1-a
和 us-central1-b
中執行。如要新增 us-central1-c
,請執行下列指令:
gcloud container clusters update example-cluster \
--location us-central1 \
--node-locations us-central1-a,us-central1-b,us-central1-c
在另一個範例中,example-cluster
在 us-central1-a
、us-central1-b
和 us-central1-c
中執行。如果只要叢集在 us-central1-a
和 us-central1-b
中執行,則可以執行下列指令:
gcloud container clusters update example-cluster \
--location us-central1 \
--node-locations us-central1-a,us-central1-b
調整叢集大小
您可以調整標準叢集的大小,增加或縮減該叢集中的節點個數。舉例來說,如要停止叢集耗用資源,但不想刪除叢集,可以將節點縮減至零個。如要進一步瞭解如何調整大小,請參閱調整叢集大小。
Autopilot 叢集會根據 Pod 規格自動調整大小,因此您不必擔心叢集大小問題。舉例來說,如果您變更 Pod 的副本數量或要求的資源,叢集就會適當擴大或縮減規模。
如要以更有效率的方式最佳化叢集,也可以使用垂直 Pod 自動調度資源 (VPA)。自動配置器可以建議 CPU/記憶體要求和相關限制的值,這些值也可自動更新。
刪除叢集
您可以在必要時刪除叢集。詳情請參閱「刪除叢集」。
將叢集新增至機群
如果貴機構使用多個叢集,您可以將叢集新增至機群 (Kubernetes 叢集的邏輯分組),簡化多叢集管理作業。建立機群後,貴機構就能將管理單位從個別叢集提升為整個叢集群組,並使用支援機群的功能,例如多叢集 Ingress、Config Sync 和 Policy Controller。
您可以使用 Google Cloud 控制台、gcloud CLI,或以宣告方式使用 Terraform 或 Config Connector,將 GKE 叢集新增至車隊。
如要進一步瞭解機群的運作方式,請參閱「機群管理」一文;如要瞭解如何建立機群,請參閱「建立機群來簡化多叢集管理作業」一文。