Resolver problemas de límites de recursos en Cloud Service Mesh
En esta sección se explican los problemas habituales de Cloud Service Mesh y cómo resolverlos. Si necesitas más ayuda, consulta el artículo Obtener asistencia.
Los problemas con los límites de recursos de Cloud Service Mesh pueden deberse a cualquiera de los siguientes motivos:
- Objetos
LimitRange
creados en el espacio de nombresistio-system
o en cualquier espacio de nombres con la inyección automática de sidecar habilitada. - Límites definidos por el usuario que son demasiado bajos.
- Los nodos se quedan sin memoria u otros recursos.
Posibles síntomas de problemas con los recursos:
- Cloud Service Mesh no recibe la configuración de
istiod
repetidamente, tal como indica el errorEnvoy proxy NOT ready
. Es normal que este error aparezca algunas veces al inicio, pero, si no es así, es preocupante. - Problemas de red con algunos pods o nodos que dejan de estar accesibles.
istioctl proxy-status
muestra los estados deSTALE
en el resultado.OOMKilled
mensajes en los registros de un nodo.- Uso de memoria por parte de los contenedores:
kubectl top pod POD_NAME --containers
. - Uso de memoria por los pods de un nodo:
kubectl top node my-node
. - Envoy se ha quedado sin memoria:
kubectl get pods
muestra el estadoOOMKilled
en la salida.
Los sidecars de Istio tardan mucho en recibir la configuración
La propagación lenta de la configuración puede deberse a que no se han asignado suficientes recursos a istiod
o a que el tamaño del clúster es excesivamente grande.
Este problema puede deberse a varios motivos:
Si tus herramientas de monitorización (Prometheus, Stackdriver, etc.) muestran un uso elevado de un recurso por parte de
istiod
, aumenta la asignación de ese recurso. Por ejemplo, aumenta el límite de CPU o de memoria de la implementación deistiod
. Se trata de una solución temporal, por lo que te recomendamos que investigues métodos para reducir el consumo de recursos.Si te encuentras con este problema en un clúster o una implementación grandes, reduce la cantidad de estado de configuración que se envía a cada proxy configurando los recursos de Sidecar.
Si el problema persiste, prueba a escalar horizontalmente
istiod
.Si no se resuelve el problema con ningún otro paso, informa de un error detallando tu implementación y los problemas observados. Sigue estos pasos para incluir un perfil de CPU o de memoria en el informe de errores, si es posible, junto con una descripción detallada del tamaño del clúster, el número de pods, el número de servicios, etc.