Site icon bintorosoft.com

Docker Compose für Monitoring: Grafana + Prometheus + Loki

Close up human hand is playing Online Game computer using keyboard in home

Ein Monitoring-Stack bestehend aus Grafana, Prometheus und Loki ermöglicht die Erfassung von Metriken, Logs und Visualisierung in Echtzeit. Mit Docker Compose lässt sich ein solcher Stack einfach auf Linux aufsetzen, inklusive persistenter Volumes, Netzwerke und konfigurierbarer Ports. Dieses Tutorial zeigt praxisnah, wie ein stabiler, updatefähiger Monitoring-Stack erstellt wird.

Grundkomponenten eines Monitoring-Stacks

Ein typischer Monitoring-Stack besteht aus:

Volumes für Persistenz

Volumes sichern Konfigurationen, Dashboards und Log-Daten, damit diese auch nach Neustarts erhalten bleiben.

volumes:
  prometheus_data:
  grafana_data:
  loki_data:

Netzwerke für interne Kommunikation

Ein separates Netzwerk ermöglicht sichere Kommunikation zwischen Grafana, Prometheus und Loki.

networks:
  monitoring_net:

Beispiel: docker-compose.yml für Monitoring

version: '3.8'

services:
prometheus:
image: prom/prometheus:latest
container_name: prometheus
volumes:
- prometheus_data:/prometheus
- ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml:ro
ports:
- "9090:9090"
networks:
- monitoring_net

grafana:
image: grafana/grafana:latest
container_name: grafana
environment:
- GF_SECURITY_ADMIN_USER=admin
- GF_SECURITY_ADMIN_PASSWORD=secret
volumes:
- grafana_data:/var/lib/grafana
ports:
- "3000:3000"
networks:
- monitoring_net
depends_on:
- prometheus
- loki

loki:
image: grafana/loki:2.9.1
container_name: loki
command: -config.file=/etc/loki/local-config.yaml
volumes:
- loki_data:/loki
- ./loki/local-config.yaml:/etc/loki/local-config.yaml:ro
ports:
- "3100:3100"
networks:
- monitoring_net

Erklärungen zur Compose-Datei

Start und Verwaltung des Monitoring-Stacks

Starten Sie den Stack mit:

docker-compose up -d

Zum Stoppen und Entfernen aller Container, Netzwerke und Volumes:

docker-compose down -v

Best Practices

Praxisbeispiele

Monitoring-Stack starten

docker-compose up -d

Logs überwachen

docker-compose logs -f prometheus
docker-compose logs -f grafana
docker-compose logs -f loki

Rollback auf vorherige Version

docker service update --image prom/prometheus:2.49.0 prometheus_service
docker service update --image grafana/grafana:10.0.0 grafana_service
docker service update --image grafana/loki:2.8.2 loki_service

Updatefähigkeit

Durch versionierte Docker Images können Prometheus, Grafana und Loki unkompliziert aktualisiert werden. Persistente Volumes und Konfigurationen bleiben erhalten, sodass Dashboards, Metriken und Logs nicht verloren gehen.

docker-compose pull
docker-compose up -d

Zusammenfassung

Mit Docker Compose lässt sich ein Monitoring-Stack aus Grafana, Prometheus und Loki schnell, sicher und updatefähig auf Linux betreiben. Persistente Volumes, interne Netzwerke und Best Practices wie Backups, Monitoring und Alerts sorgen für einen stabilen und wartbaren Betrieb. Versionierte Images erleichtern Updates und Rollbacks und stellen langfristige Zuverlässigkeit des Monitoring-Systems sicher.

Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3

Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.

Meine Leistungen umfassen:

Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.

Exit mobile version