Die drei sind zusammen recht mächtig, es werden umfangreich Werte gesammelt und (grafisch) dargestellt.
Im Anhang steht mein docker-compose-File.
Danach greife ich so zu:
- cadvisor: (Im docker-hub):
- Sammelt und zeigt Infos/Daten über laufenden Container des Systems.
- Zugriff bei mir: http://docker-prod.steinkopf.net:3210/containers/
- prometheus: (Im docker-hub):
- Monitoring-System, das Daten einsammelt und darstellt.
- Zugriff bei mir: http://docker-prod.steinkopf.net:9090/
- http://docker-prod.steinkopf.net:9090/graph#%5B…
- grafana: (Im docker-hub):
- Auswertung und Darstellung von Daten.
- Zugriff bei mir: http://docker-prod.steinkopf.net:3000/dashboard/db/test
- Dort: Datasource definieren: http://localhost:9090, Type prometheus, Access proxy
Das ganze ist nur ein Anfang – es gibt noch viel zu tun und entdecken…
Anhang: docker-compose.yml
prometheus:
image: prom/prometheus
net: host
command: [-config.file, /etc/prometheus/prometheus.yml, -storage.local.path=/prometheus, -storage.local.memory-chunks=10000]
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
- /opt/dockervolumes/monitoring/prometheus:/prometheus
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
restart: always
node-exporter:
image: prom/node-exporter
net: host
volumes:
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /:/rootfs:ro
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
net: host
command: [-collector.procfs, /host/proc, -collector.sysfs, /host/proc, -collector.filesystem.ignored-mount-points, '^/(sys|proc|dev|host|etc)($$|/)']
restart: always
cadvisor:
image: google/cadvisor
net: host
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
command: [--port=3210]
restart: always
grafana:
image: grafana/grafana
net: host
volumes:
- /opt/dockervolumes/monitoring/grafana/db:/var/lib/grafana
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
environment:
GF_SECURITY_ADMIN_PASSWORD: secret
restart: always