Paneles de CloudWatch y Container Insights
Cree paneles operativos para varios servicios y habilite Container Insights para obtener métricas de rendimiento a nivel de clúster en ECS y EKS
Paneles de CloudWatch y Container Insights es una lección gratuita de Cloud & IT Cert Prep en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Cloud & IT Cert Prep, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Cloud & IT Cert Prep incluye 4 lecciones en total.
Descripción general de los paneles de CloudWatch
Los paneles de CloudWatch son vistas personalizables con varios widgets de su infraestructura de AWS que proporcionan una visión operativa unificada. Un panel puede mostrar métricas de varios servicios y cuentas de AWS en una sola pantalla mediante gráficos de líneas, widgets numéricos, medidores, alarmas y resultados de consultas de logs. Los paneles son recursos globales: un mismo panel puede mostrar métricas de cualquier región. Puede compartir los paneles públicamente o restringir el acceso mediante políticas de IAM.
Widgets de los paneles
Los paneles de CloudWatch admiten varios tipos de widgets: gráficos de líneas y de áreas apiladas para métricas de series temporales, widgets numéricos para mostrar el valor más reciente de una métrica (ideales para KPI), gráficos de barras para realizar comparaciones, medidores para indicadores de capacidad, estado de alarma para mostrar un resumen de los estados de las alarmas, tablas de logs para resultados de consultas de Live Tail o Insights y texto para etiquetas y documentación. Combinar distintos tipos de widgets en un mismo panel ayuda a los equipos a evaluar el estado del sistema de un vistazo.
# Create a dashboard via CLI (body must be escaped JSON)
aws cloudwatch put-dashboard \
--dashboard-name ProductionOverview \
--dashboard-body '{
"widgets": [
{
"type": "metric",
"properties": {
"metrics": [["AWS/EC2","CPUUtilization","AutoScalingGroupName","my-asg"]],
"period": 60,
"stat": "Average",
"title": "ASG CPU Utilization"
}
}
]
}'Paneles entre cuentas y entre regiones
CloudWatch admite la observabilidad entre cuentas mediante cuentas de monitorización y cuentas de origen. Puede designar una cuenta central de monitorización, vincularle las cuentas de origen y crear paneles que obtengan métricas y logs de todas las cuentas vinculadas. Esto elimina la necesidad de cambiar de cuenta en la consola para observar un entorno con varias cuentas. Los widgets entre regiones dentro de una misma cuenta se admiten de forma nativa especificando la región en la definición JSON del panel.
# Enable cross-account sharing in a source account
aws cloudwatch put-dashboard \
--dashboard-name MultiRegionView \
--dashboard-body '{
"widgets": [
{
"type": "metric",
"properties": {
"metrics": [
["AWS/RDS","DatabaseConnections","DBInstanceIdentifier","prod-db",{"region":"us-east-1"}],
["AWS/RDS","DatabaseConnections","DBInstanceIdentifier","prod-db-eu",{"region":"eu-west-1"}]
],
"title": "DB Connections: us-east-1 vs eu-west-1"
}
}
]
}'CloudWatch Live Tail
CloudWatch Live Tail (lanzado en 2023) permite transmitir eventos de logs de uno o varios grupos de logs casi en tiempo real directamente en la consola o la CLI de CloudWatch, de forma similar a ejecutar tail -f en un archivo de logs. Puede aplicar un patrón de filtro para ver solo los eventos que coincidan. Live Tail resulta especialmente útil durante los despliegues o la investigación de incidentes, cuando necesita observar qué está haciendo una aplicación en ese momento sin ejecutar consultas completas de Insights.
# Start a Live Tail session for a Lambda function's logs
aws logs start-live-tail \
--log-group-identifiers '/aws/lambda/my-function' \
--log-event-filter-pattern 'ERROR'
# The output streams log events in real time until you cancel (Ctrl+C)¿Qué es Container Insights?
CloudWatch Container Insights es una característica de CloudWatch que recopila, agrega y resume métricas y logs de cargas de trabajo en contenedores que se ejecutan en Amazon ECS (EC2 y Fargate) y Amazon EKS (EC2 y Fargate). Proporciona paneles prediseñados para el rendimiento a nivel de clúster, servicio, nodo y pod, sin necesidad de instrumentar manualmente cada aplicación. Container Insights utiliza el agente de CloudWatch o el enrutador de logs de EKS Fargate para recopilar los datos.
# Enable Container Insights on an ECS cluster
aws ecs update-cluster-settings \
--cluster my-ecs-cluster \
--settings name=containerInsights,value=enabled
# Enable Container Insights on EKS (via CloudWatch Agent DaemonSet)
eksctl utils update-cluster-logging \
--cluster my-eks-cluster \
--enable-types all \
--region us-east-1Métricas de Container Insights
Container Insights recopila métricas en los espacios de nombres ECS/ContainerInsights y ContainerInsights. En EKS, estas incluyen: a nivel de pod: pod_cpu_utilization, pod_memory_utilization, pod_network_rx_bytes; a nivel de nodo: node_cpu_utilization, node_memory_utilization, node_filesystem_utilization; a nivel de clúster: cluster_failed_node_count, cluster_node_count. Todas las métricas incluyen las dimensiones de clúster, espacio de nombres, servicio y pod para permitir un filtrado preciso.
# Query pod memory utilization for a specific namespace
aws cloudwatch get-metric-statistics \
--namespace ContainerInsights \
--metric-name pod_memory_utilization \
--dimensions \
Name=ClusterName,Value=my-cluster \
Name=Namespace,Value=production \
--statistic Average \
--period 60 \
--start-time 2024-01-01T00:00:00Z \
--end-time 2024-01-01T01:00:00ZPaneles de Container Insights en la consola
Cuando Container Insights está habilitado, la consola de CloudWatch proporciona automáticamente las vistas prediseñadas Container Map y Performance Monitoring. Container Map muestra las tareas de ECS o los pods de EKS como una topología visual, con códigos de color según el estado de salud, y permite acceder al detalle de las métricas de cada contenedor. La vista Performance Monitoring proporciona gráficos de series temporales del rendimiento del clúster, los nodos, los pods y los contenedores, sin necesidad de configurar manualmente ningún panel.
Rendimiento de tareas de ECS con Container Insights
En ECS en EC2, Container Insights instala el agente de CloudWatch como un servicio daemon en cada instancia de contenedor. En ECS en Fargate, Container Insights utiliza el recopilador de métricas sidecar de la versión 1.4.0 de la plataforma de Fargate. Puede acceder a las métricas de ECS por dimensión de clúster, servicio, tarea o contenedor. Un patrón habitual de alertas consiste en activar una alarma cuando MemoryUtilized se aproxima al valor de MemoryReserved de la tarea, para detectar posibles condiciones de falta de memoria (OOM) antes de que terminen las tareas.
# Get memory reservation and utilisation for a service
aws cloudwatch get-metric-statistics \
--namespace ECS/ContainerInsights \
--metric-name MemoryUtilized \
--dimensions Name=ClusterName,Value=my-cluster Name=ServiceName,Value=api-service \
--statistic Average \
--period 300 \
--start-time $(date -u -d '1 hour ago' +%Y-%m-%dT%H:%M:%SZ) \
--end-time $(date -u +%Y-%m-%dT%H:%M:%SZ)Application Signals y ServiceLens
CloudWatch ServiceLens integra métricas, logs y trazas en un mapa de servicios unificado. Requiere habilitar AWS X-Ray junto con CloudWatch. ServiceLens visualiza los flujos de solicitudes de extremo a extremo entre servicios, destaca los cuellos de botella de latencia y muestra las tasas de error por servicio. CloudWatch Application Signals (su sucesor más reciente) instrumenta automáticamente las aplicaciones para exponer SLO y SLI sin modificar el código, lo que permite realizar un seguimiento de la fiabilidad más allá de las métricas sin procesar.
Prácticas recomendadas para los paneles
Los paneles de CloudWatch eficaces siguen estas prácticas recomendadas: separe los paneles según el público (operaciones, dirección o desarrollo), utilice widgets de estado de alarma como el primer elemento que vean los equipos de guardia, fije los paneles para acceder a ellos con frecuencia y use referencias dinámicas con CloudFormation para mantener las referencias de las métricas del panel coherentes con los nombres reales de los recursos. Evite sobrecargar un solo panel: la legibilidad es importante al diagnosticar un incidente bajo presión.
CloudWatch Contributor Insights
CloudWatch Contributor Insights analiza datos de logs estructurados para identificar los principales N colaboradores de una métrica a lo largo del tiempo. Por ejemplo, puede mostrar qué direcciones IP generan más errores 5xx, qué rutas de API tienen el mayor volumen de solicitudes o qué ID de cliente provocan más limitaciones de DynamoDB. Las reglas definen el campo JSON que se extraerá y sobre el que se realizará la agregación. Los resultados aparecen como gráficos de series temporales que se actualizan continuamente a medida que llegan nuevos datos de logs.
# Enable Contributor Insights on a DynamoDB table
aws dynamodb enable-kinesis-streaming-destination \
--table-name my-table
# Or enable CloudWatch Contributor Insights via the console:
# CloudWatch -> Contributor Insights -> Create rule
# Log group: /aws/dynamodb/tables
# Contributor field: $.TableName
# Aggregation: COUNT by $.requestIDComprobación rápida
Compruebe su comprensión de los conceptos de AWS Solutions Architect (SAA-C03) de esta lección.
Resumen de la lección
En esta lección ha aprendido que los paneles de CloudWatch admiten varios tipos de widgets y pueden agregar métricas entre cuentas y regiones; Container Insights recopila automáticamente métricas a nivel de pod y nodo de ECS y EKS sin instrumentación manual; y Contributor Insights identifica a los principales colaboradores a partir de datos de logs estructurados. A continuación, exploraremos los trails y el historial de eventos de CloudTrail para realizar auditorías a nivel de API.
Preguntas frecuentes
¿La lección «Paneles de CloudWatch y Container Insights» es gratis?
Sí — el texto completo de «Paneles de CloudWatch y Container Insights» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Cloud & IT Cert Prep, actualiza a CoddyKit PRO. El curso de Cloud & IT Cert Prep incluye 4 lecciones en total.
¿Qué aprenderé en «Paneles de CloudWatch y Container Insights»?
Cree paneles operativos para varios servicios y habilite Container Insights para obtener métricas de rendimiento a nivel de clúster en ECS y EKS Practicas Cloud & IT Cert Prep con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Cloud & IT Cert Prep?
No se requiere experiencia previa. Cloud & IT Cert Prep en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.
¿Cuánto tiempo toma la lección «Paneles de CloudWatch y Container Insights»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Cloud & IT Cert Prep?
Sí. Cada lección de Cloud & IT Cert Prep incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Métricas, espacios de nombres y dimensiones de CloudWatch
- Alarmas y alarmas compuestas de CloudWatch
- Logs y Log Insights de CloudWatch
- Paneles de CloudWatch y Container Insights