本頁說明如何手動取消註冊叢集與 Google Cloud 車隊。手動取消註冊叢集後,系統會移除該叢集與機群之間的連線,但仍保留叢集。在 Google Cloud使用主控台或 gcloud CLI 刪除已註冊的 GKE 叢集時,系統也會刪除叢集的 Fleet 成員資格。 Google Cloud
您只能取消註冊 Google Cloud 和附加的第三方叢集。其他叢集類型無法取消註冊。
請注意,不建議在機群之間移動已註冊的叢集 (取消註冊後重新註冊),因為這麼做可能會引發非預期或不樂見的情況。舉例來說,工作負載的機群 Workload Identity 會變更,可能導致要求遭到封鎖和服務中斷。建議的做法是在要存放工作負載的機群中建立新叢集,再將工作負載從原有叢集移至新叢集。
取消註冊叢集
gcloud
取消註冊 GKE 叢集
這個指令只能用於取消註冊透過 gcloud container clusters update
或 gcloud container clusters create
註冊的 GKE 叢集。
執行下列指令:
gcloud container clusters update CLUSTER_NAME --clear-fleet-project
將 CLUSTER_NAME 替換為要刪除的叢集名稱。
取消註冊 GKE 叢集 (舊版指令)
如果您是使用舊版 register
指令註冊叢集,請執行下列任一指令取消註冊:
gcloud container fleet memberships unregister [MEMBERSHIP_NAME] \ --project=[PROJECT_ID] \ --gke-uri=[GKE_URI]
gcloud container fleet memberships unregister [MEMBERSHIP_NAME] \ --project=[PROJECT_ID] \ --gke-cluster=[GKE_CLUSTER]
其中:
- [PROJECT_ID] 是您的 Google Cloud 專案 ID。瞭解如何找到這個值。
- [MEMBERSHIP_NAME] 是對應至叢集的成員資格名稱。如要列出 Hub 上的所有會員資格,請執行:
gcloud container fleet memberships list
。 - [GKE_URI] 是 GKE 叢集的 URI,例如:'https://container.googleapis.com/projects/my-project/locations/us-central1-a/clusters/my-cluster'。您可以執行
gcloud container clusters list --uri
取得 URI。 系統會驗證提供的 URI,確認其對應至有效的 GKE 叢集。 - [GKE_CLUSTER] 是 GKE 叢集的
location/name
。位置可以是可用區或區域,例如:us-central1-a/my-cluster
。
取消註冊附加叢集
以下操作說明適用於使用最新版附加叢集功能註冊的叢集。如果叢集是使用這項功能的舊版附加,請使用下一節中的舊版指令。
取消註冊附加叢集 (舊版指令)
如果您是使用上一代連結的叢集註冊叢集,請執行下列指令取消註冊:
gcloud container fleet memberships unregister [MEMBERSHIP_NAME] \ --project=[PROJECT_ID] \ --context=[KUBECONFIG_CONTEXT] \ --kubeconfig=[KUBECONFIG_PATH]
其中:
- [PROJECT_ID] 是您的 Google Cloud 專案 ID。瞭解如何找到這個值。
- [MEMBERSHIP_NAME] 是對應至叢集的成員資格名稱。如要取得 Hub 上的所有成員清單,請執行:
gcloud container fleet memberships list
。 - [KUBECONFIG_PATH] 是您儲存 kubeconfig 的本機路徑,其中包含叢集檔案的項目。如果已設定該環境變數,此值預設為
$KUBECONFIG
,否則預設為$HOME/.kube/config
。 - [KUBECONFIG_CONTEXT] 為叢集的內容,因為其出現在 kubeconfig 檔案中。您可以執行
kubectl config current-context
,透過指令列取得此值。
控制台
取消註冊 GKE 叢集 Google Cloud
如要取消註冊 GKE 叢集,請按照下列步驟操作:
前往「GKE Clusters」(GKE 叢集) 頁面。這個頁面會顯示所有叢集。
在清單中,按一下要取消註冊的叢集旁的
「Actions」(動作)。在「動作」選單中選取「取消註冊」。
在顯示的對話方塊中輸入叢集名稱,然後按一下「取消註冊」確認操作。
取消註冊已連結的第三方叢集
如要取消註冊附加叢集,請按照下列步驟操作:
在 Google Cloud 控制台中,前往「Google Kubernetes Engine clusters overview」(Google Kubernetes Engine 叢集總覽) 頁面。
選取叢集所在的 Google Cloud 專案。
按一下要卸離的叢集名稱,然後選取側邊面板中的「查看更多詳細資料」。
按一下視窗頂端附近的「刪除」
。系統提示您確認時,請輸入叢集名稱,然後按一下「Confirm」(確認)。
Terraform
如要取消註冊使用 Terraform 註冊的 GKE 叢集,請按照下列步驟操作:
從叢集的 google_container_cluster
資源設定中刪除下列區塊:
fleet {
project = "FLEET_HOST_PROJECT"
"
}
FLEET_HOST_PROJECT
是叢集註冊的 Google Cloud 專案 ID。
管理 Connect 代理程式
下列步驟僅適用於取消註冊附加叢集,這類叢集在註冊時會安裝 Connect 代理程式。
選用:驗證是否已刪除 Connect 代理程式命名空間
取消註冊叢集後,您可以驗證是否已經刪除 Connect Agent 所用的命名空間。這項設定僅適用於安裝 Connect 代理程式的註冊程序。如要這麼做,請執行下列指令:
kubectl get ns -l hub.gke.io/project
若這項指令沒有傳回任何輸出,表示已刪除該命名空間。
刪除 Connect 代理程式服務帳戶
如果您已為 Connect 代理程式建立服務帳戶,可以按照下列步驟刪除:
gcloud iam service-accounts delete [SERVICE_ACCOUNT_NAME]
取消註冊無法使用的叢集
如要取消註冊無法再存取的叢集,請執行下列步驟:
列出目前已註冊的叢集 (又稱成員資格):
gcloud container fleet memberships list
在指令輸出內容中,「
Name
」欄會列出已註冊叢集的成員名稱,「EXTERNAL_ID
」欄則會列出 kube-system 命名空間的叢集 UID。如要取消註冊無法使用的叢集,請執行下列指令:
gcloud container fleet memberships delete [MEMBERSHIP_NAME]
其中 [MEMBERSHIP_NAME] 是與叢集對應的成員資格名稱。