Cómo monitorizar contenedores Docker usando SAM y cAdvisor
cAdvisor (abreviatura de contenedor Advisor) analiza y muestra el uso de recursos y los datos de rendimiento desde los contenedores en ejecución. cAdvisor ya viene preparado para publicar métricas en formato Prometheus.
https://prometheus.io/docs/guides/cadvisor/
Prometheus está integrado en SAM. Esto permite aprovechar las métricas de cAdvisor y mostrarlas a través de Prometheus y Grafana.
Como cAdvisor escucha en el puerto 8080, que entra en conflicto con el puerto de Nginx, puedes cambiar el puerto Nginx para solucionarlo:
Pasos para realizar la configuración:
1. Cambia el puerto nginx.
modifica nghix.conf:
server {
listen 9991;
Esto te permite acceder al IU de cAdvisor a través de http://server:8080/, que incluye muchos cuadros de mando (dashboards) de ejemplo.
2. Configura docker-compose para añadir el contenedor cAdvisor:
en docker-compose.yml, añade lo siguiente:
cadvisor:
image: google/cadvisor:latest
ports:
- 8080:8080
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
3. Configura prometheus para añadir un trabajo para cAdvisor:
modifica isc_prometheus.yml y añade:
- job_name: cadvisor
scrape_interval: 5s
static_configs:
- labels:
cluster: "1"
group: node
targets:
- cadvisor:8080
¡Ya está! Para asegurarse de que prometheus está cogiendo las métricas de cAdvisor, ve al IU de prometheus http://server:9090/. En Status->Targets, deberías ver el endpoint y el estado de cAdvisor.
Puedes descargar unos excelentes cuadros de mando (dashboards) predefinidos con métricas de cAdvisor. Solo necesitas añadir el parámetro del cluster en cada consulta.
.png)
.png)
Comments
Los artículos con la etiqueta "Mejores prácticas" incluyen recomendaciones sobre cómo desarrollar, probar, implementar y administrar mejor las soluciones de InterSystems.