Resuelve problemas de límite de recursos en Cloud Service Mesh

En esta sección, se explican los problemas comunes de Cloud Service Mesh y cómo resolverlos de ellos. Si necesitas asistencia adicional, consulta Obtén asistencia.

Los problemas de límite de recursos de Cloud Service Mesh pueden deberse a lo siguiente:

  • Objetos LimitRange creados en el espacio de nombres istio-system o cualquier espacio de nombres con la inyección automática de sidecar habilitada.
  • Límites definidos por el usuario que son demasiado bajos
  • Nodos que se quedaron sin memoria o sin otros recursos

Posibles síntomas de problemas de recursos:

  • Cloud Service Mesh no recibe la configuración del plano de control de forma reiterada indicado por el error, Envoy proxy NOT ready. Veo este error varias veces en el inicio es normal, pero, en otros casos, es un problema.
  • Hay problemas de Herramientas de redes con algunos Pods o nodos que se vuelven inaccesibles.
  • istioctl proxy-status muestra estados STALE en el resultado.
  • Hay mensajes OOMKilled en los registros de un nodo.
  • Uso de memoria de los contenedores: kubectl top pod POD_NAME --containers
  • Uso de memoria de los Pods dentro de un nodo: kubectl top node my-node
  • Envoy no tiene memoria: kubectl get pods muestra el estado OOMKilled en el resultado.

Los archivos adicionales tardan mucho tiempo en recibir la configuración.

La propagación lenta de la configuración puede ocurrir debido a que no se asignan los recursos suficientes a istiod o a que el tamaño del clúster es demasiado grande.

Existen varias soluciones posibles para este problema:

  1. Para la malla de servicios de Cloud en el clúster, si tus herramientas de supervisión (Prometheus, Stackdriver, etc.) muestran un alto uso de un recurso por istiod, aumentan la asignación de ese recurso (por ejemplo, aumentar el límite de CPU o memoria) de la implementación istiod. Esta es una solución temporal y recomendamos que investigues los métodos para reducir el consumo de recursos.

  2. Si te encuentras con este problema en un clúster o una implementación grandes, reduce el del estado de configuración enviado a cada proxy mediante la configuración Recursos de sidecar.

  3. En el caso de Cloud Service Mesh en el clúster, si el problema persiste, intenta escala horizontalmente istiod.

  4. Si todos los demás para solucionar problemas no lo resuelven, informa un error que detalle tu implementación y los problemas observados. Seguir estos pasos incluir un perfil de CPU/memoria en el informe de errores, si es posible, junto con un una descripción detallada del tamaño del clúster, la cantidad de Pods y la cantidad de servicios.