解決清理問題
本頁說明如何在使用 TRAFFIC_DIRECTOR
實作時,解決 Cloud Service Mesh 管理控制平面的問題。
清理合成服務
使用 TRAFFIC_DIRECTOR
控制平面實作時,Cloud Service Mesh 會建立合成 Kubernetes 服務,以支援子集。這些服務會標示為 istio.io/owned-by:gsmconfig.gke.io
。
從 Google Cloud 機群取消註冊叢集時,Cloud Service Mesh 可能無法移除這些合成 Kubernetes 服務。
如要緩解這個問題,您可以執行下列指令,手動移除所有命名空間中的合成 Kubernetes 服務:
kubectl delete service -l istio.io/owned-by=gsmconfig.gke.io -A
清理網路端點群組註解
使用 TRAFFIC_DIRECTOR
控制平面實作時,Cloud Service Mesh 會在服務中加入 cloud.google.com/neg
註解,藉此建立網路端點群組,以便負載平衡。
從 Google Cloud 機群取消註冊叢集時,Cloud Service Mesh 可能無法移除這些註解來清理網路端點群組。
為減輕這個問題,您可以手動從所有命名空間的服務中移除 cloud.google.com/neg
註解。
service_names=($(kubectl get service -A -o jsonpath='{.items[*].metadata.name}'))
for service in "${service_names[@]}"; do
kubectl annotate service $service -A cloud.google.com/neg-
done