Docker Monitoring mit Prometheus und Grafana

Um das Docker Monitoring sollte man sich nicht drücken, denn es ist wichtig zu sehen, welche Auslastung die einzelnen Container verursachen. Zum einen um etwaige Probleme festzustellen und zum anderen um die Leistung des Docker Hosts evtl. anpassen zu können.
In meinem docker-homelab Repository auf Github habe ich vor kurzem ein Docker Compose Stack hinzugefügt, welche genau dies macht. Über die Monitoring Tools Prometheus, Node Exporter und cAdvisor werden die Daten erfasst und mittels Grafana ansprechend dargestellt.
Docker Monitoring einrichten
Um das ganze wie im oben gezeigten Dashboard zu realisieren kann man sich meiner docker-compose.yaml Datei bedienen. Am einfachsten ist es natürlich man verwendet das komplette Repository, weil dort auch alle anderen Dateien für das Docker Monitoring vorhanden sind.
Grundsätzlich reicht es dann mit einem einfachen
<pre class="wp-block-code">```
docker-compose up -d
den kompletten Monitoring Stack zu starten. Solltest du kein [Traefik](https://teqqy.de/reverse-proxy-mit-traefik-unter-docker/) als Reverse Proxy nutzen kannst du in der docker-compose.yaml Datei auch den Bereich der Labels sowie die Netzwerkdefinition weg lassen.
Anschließend verbindet man sich über den gewünschten Browser mit dem Grafana Dashboard und loggt sich mit ***admin/admin*** dort ein.
Im ersten Schritt muss man nun die Datenquelle hinzufügen. Im Dashboard bedarf es hier nur ein klick. Als Datenquelle verwenden wir entsprechend Prometheus.
Es müssen dann nur die Felder Name und URL gefüllt werden. Sollte das vordefinierte Dashboard aus dem Repository verwendet werden, sollte die Datenquelle den Namen „Prometheus“ tragen. Als URL wird
``` http://mon_prometheus:9090 ``` ``` eingetragen. Es sollte bei dir dann analog zu diesem Screenshot aussehen: Sobald man auf ***Save & Test*** geklickt hat, sollte ein grüner Balken erscheinen der die erfolgreiche Verbindung bestätigt. ## Grafana Dashboard importieren Nun müssen wir nur noch das Grafana Dashboard importieren um das Docker Monitoring zu vervollständigen. Hierfür klickt man links auf ***Dashboard*** und anschließend auf ***manage***. Über den Button importieren kann man nun die [dashboard.json](https://github.com/cbirkenbeul/docker-homelab/blob/master/monitoring/grafana/dashboard.json) Datei hinzufügen. Es muss dann nur noch die korrekte Datenquelle angegeben werden und schon sollte das Dashboard entsprechend Werte anzeigen.