解决清理问题
本页面介绍了如何在使用 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