Cómo resolver problemas de limpieza
En esta página, se explica cómo resolver problemas con el plano de control administrado de Cloud Service Mesh cuando se usa la implementación de TRAFFIC_DIRECTOR
.
Cómo limpiar los servicios sintéticos
Cuando se usa la implementación del plano de control TRAFFIC_DIRECTOR
, Cloud Service Mesh crea servicios de Kubernetes sintéticos para admitir subconjuntos. Estos servicios están etiquetados con istio.io/owned-by:gsmconfig.gke.io
.
Cuando modificas discoverySelectors
en la API de Istio para quitar un espacio de nombres que contiene servicios de Kubernetes sintéticos, Cloud Service Mesh no quita automáticamente estos servicios de Kubernetes sintéticos.
Para mitigar este problema, puedes quitar manualmente los servicios de Kubernetes sintéticos de los espacios de nombres de destino ejecutando el siguiente comando:
kubectl delete service -l istio.io/owned-by=gsmconfig.gke.io -n NAMESPACE
Reemplaza NAMESPACE por el espacio de nombres real que deseas limpiar.
Limpia las anotaciones de los grupos de extremos de red
Cuando se usa la implementación del plano de control TRAFFIC_DIRECTOR
, Cloud Service Mesh crea grupos de extremos de red agregando anotaciones cloud.google.com/neg
a los servicios para el balanceo de cargas.
Cuando modificas discoverySelectors
en la API de Istio para quitar un espacio de nombres que contiene servicios de Kubernetes, Cloud Service Mesh no quita automáticamente estos grupos de extremos de red.
Para mitigar este problema, puedes quitar manualmente las anotaciones cloud.google.com/neg
de los servicios en los espacios de nombres de destino.
service_names=($(kubectl get service -n NAMESPACE -o jsonpath='{.items[*].metadata.name}'))
for service in "${service_names[@]}"; do
kubectl annotate service $service -n NAMESPACE cloud.google.com/neg-
done
Reemplaza NAMESPACE por el espacio de nombres real que deseas limpiar.