View a markdown version of this page

Solución de problemas de Información de contenedores en Amazon EKS - Amazon CloudWatch

Solución de problemas de Información de contenedores en Amazon EKS

En esta sección se describen los problemas habituales que pueden surgir cuando se configura o se utiliza Información de contenedores en Amazon EKS. Utilice las siguientes tablas y comandos de diagnóstico para identificar y resolver los problemas, independientemente de si utiliza el enfoque de OTel o la versión clásica.

Para obtener instrucciones de configuración específicas de cada enfoque, consulte Inicio rápido: Información de contenedores de OTel en Amazon EKS o Guía de configuración (AWS CLI). Para comparar enfoques, consulte Comparación de los enfoques de Información de contenedores.

Las métricas no aparecen en CloudWatch

Si no ve las métricas en el espacio de nombres ContainerInsights, utilice la siguiente tabla para identificar la causa.

Síntoma Causa Resolución
No hay métricas en el espacio de nombres ContainerInsights Al rol de IAM le falta el permiso cloudwatch:PutMetricData Adjunte la política administrada CloudWatchAgentServerPolicy al rol de IAM del agente.
Las métricas aparecen para algunos nodos, pero no para otros El DaemonSet del agente no está programado en todos los nodos debido a taints Agregue tolerancias al DaemonSet del agente para permitir la programación en nodos con taints.
Las métricas dejan de aparecer El pod del agente tiene el estado OOMKilled o se reinicia Aumente los límites de memoria en la especificación de recursos del pod del agente.
Las métricas están obsoletas o son nulas La conexión de red está bloqueada Compruebe los grupos de seguridad de VPC y compruebe que exista un punto de conexión de VPC de CloudWatch.
Faltan las métricas mejoradas El agente no está configurado para la observabilidad mejorada Establezca enhancedObservability: true en la configuración del agente.

Los pods del agente no se inician

Si los pods del agente no se inician o permanecen inactivos, utilice la siguiente tabla para diagnosticar el problema.

Síntoma Causa Resolución
ImagePullBackOff No se puede acceder a Amazon ECR o la etiqueta de la imagen es incorrecta Compruebe el URI de la imagen y confirme que los nodos pueden acceder a Amazon ECR.
Pending CPU o memoria insuficientes en el nodo Escale el grupo de nodos o reduzca las solicitudes de recursos en la especificación del pod del agente.
CrashLoopBackOff La configuración no es válida o falta el montaje del volumen Compruebe si hay errores de configuración en los registros del pod. Para ello, ejecute kubectl logs en el pod afectado.
FailedScheduling La afinidad o los taints de los nodos impiden la programación Revise nodeSelector y las tolerancias en la especificación de DaemonSet.
Código de salida 1 La cuenta de servicio carece de la anotación IRSA Compruebe que la cuenta de servicio tenga la anotación eks.amazonaws.com/role-arn.

Fallos al instalar el complemento

Si el complemento amazon-cloudwatch-observability no se instala o informa de un estado incorrecto, utilice la siguiente tabla para solucionar el problema.

Síntoma Causa Resolución
CREATE_FAILED Recursos en conflicto de una instalación anterior Elimine los recursos en conflicto y utilice --resolve-conflicts OVERWRITE al crear el complemento.
No se encontró el proveedor de OIDC No existe ningún proveedor de identidades OIDC de IAM para el clúster Cree el proveedor ejecutando eksctl utils associate-iam-oidc-provider.
Conflicto de versiones La versión del complemento no es compatible con la versión de Kubernetes Enumere las versiones compatibles ejecutando aws eks describe-addon-versions.
DEGRADEDestado Se producen errores en las comprobaciones de estado debido a la falta de permisos Compruebe los registros de los pods y compruebe que el rol de IRSA tenga las políticas necesarias adjuntas.

Problemas de entrega de registros

Si los registros del contenedor no aparecen en Registros de Amazon CloudWatch, utilice la siguiente tabla para identificar la causa.

Síntoma Causa Resolución
El grupo de registro no existe Falta el permiso logs:CreateLogGroup Agregue permisos de Registros de Amazon CloudWatch al rol de IAM del agente.
El grupo de registro existe, pero está vacío El agente no está configurado para los registros o las regiones no coinciden Compruebe que la configuración del agente incluya la recopilación de registros y que la región coincida con la región de su clúster.
Los registros se retrasan más de 5 minutos El intervalo de descarga es demasiado alto o el nodo está sometido a una carga pesada Reduzca el valor force_flush_interval de la configuración del agente.
Faltan registros de rendimiento El agente solo está configurado para los registros de la aplicación Compruebe que la sección del registro de rendimiento de Información de contenedores aparezca en la configuración del agente.

Problemas específicos de migración

Si tiene problemas al migrar de un enfoque a otro de Información de contenedores, utilice la siguiente tabla. Para ver el flujo de trabajo de migración completo, consulte Guías de migración.

Síntoma Causa Resolución
Métricas duplicadas durante la ejecución en paralelo A este respecto, ambos enfoques publican métricas de forma simultánea. Este comportamiento es el esperado durante una ejecución en paralelo. Desactive el enfoque heredado después de validar el nuevo enfoque.
Valores de métricas diferentes entre los enfoques Métodos de cálculo diferentes Se esperan pequeñas diferencias (menos del 5 %). Las grandes diferencias indican un desajuste de configuración entre los enfoques.
Se produce un error en la reversión No se volvió a aplicar la configuración personalizada Vuelva a aplicar los valores de configuración completos al realizar la reversión.
Las alarmas se activan durante la migración Brechas en las métricas durante el periodo de conmutación Establezca temporalmente el tratamiento de los datos faltantes en notBreaching en las alarmas afectadas.

Problemas con Información de contenedores de OTel

Los siguientes problemas son específicos del enfoque de Información de contenedores de OTel. Para obtener orientación general para la configuración, consulte Inicio rápido: Información de contenedores de OTel en Amazon EKS.

Síntoma Causa Resolución
Error “403 Forbidden exporter error” Al rol de IAM le faltan permisos de CloudWatch Verifique que la política CloudWatchAgentServerPolicy esté adjunta al rol de agente.
Se rechazó la conexión en el punto de conexión de métricas El recopilador no puede acceder al kubelet Compruebe que hostNetwork: true esté establecido en las especificaciones del pod o confirme que la cuenta de servicio tenga los permisos necesarios.
Uso alto de memoria La cola del procesador de lotes es demasiado grande Reduzca los valores batch/timeout y batch/send_batch_size en la configuración del recopilador.
Las métricas personalizadas no aparecen El receptor no está configurado para el punto de conexión de la aplicación Agregue un receptor de Prometheus que se dirija al puerto de métricas de su aplicación en la configuración del recopilador.

Comandos de diagnóstico generales

Utilice los siguientes comandos para recopilar información sobre la implementación de Información de contenedores.

Ejecute el siguiente comando para comprobar el estado de los pods del agente.

kubectl get pods -n amazon-cloudwatch

Ejecute el siguiente comando para ver los registros de los pods del agente.

kubectl logs -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent --tail=50

Ejecute el siguiente comando para comprobar el estado del DaemonSet del agente.

kubectl get daemonset -n amazon-cloudwatch

Ejecute el siguiente comando para verificar el rol de IAM en una cuenta de servicio.

kubectl get serviceaccount -n amazon-cloudwatch -o yaml

Ejecute el siguiente comando para comprobar el estado del complemento del clúster. Reemplace cluster-name por el nombre del clúster de Amazon EKS.

aws eks describe-addon --cluster-name cluster-name --addon-name amazon-cloudwatch-observability

Para mostrar una lista de los grupos de registro de Información de contenedores, ejecute el siguiente comando. Reemplace cluster-name por el nombre del clúster de Amazon EKS.

aws logs describe-log-groups --log-group-name-prefix "/aws/containerinsights/cluster-name"

Para obtener más información sobre la configuración y el funcionamiento de Información de contenedores en Amazon EKS, consulte los siguientes temas.