Photo by Ian Taylor / Unsplash

Prometheus Docker Container installieren

Prometheus 8. Aug. 2023

Immer mehr Hardware, Nextcloud, Home Assistant, Syncthing, VMs, LXCs und gemietete Server. All diese Systeme sollten im Auge behalten werden. Natürlich ist es möglich sich immer wieder einzuloggen und zu schauen, ob alles passt, allerdings gibt es auch die Möglichkeit Daten zu sammeln, speichern und organisiert auf einem oder mehreren Dashboards anzuzeigen.

Prometheus ist dazu ein erster Schritt. Prometheus holt die Daten die unsere System freigeben und speichert diese ab. Nach einem definierten Zeitraum löscht Prometheus diese Daten auch wieder - 15 Tage behält es die Datem im Standard.

Installation

Auf dem Server mit dem Benutzer einloggen, der für Docker verwendet wird

Falls noch kein Docker auf dem Server installiert ist haben wir eine Anleitung dafür.

Verzeichnis für Docker erstellen und die docker-compose.yml anlegen

mkdir prometheus
cd prometheus
nano docker-compose.yml
version: '3.2'

services:
  prometheus:
    container_name: prometheus
    hostname: prometheus
    image: prom/prometheus
    restart: unless-stopped
    ports:
      - "9090:9090"
    volumes:
      - ./data:/etc/prometheus
      - prometheus-data:/prometheus

volumes:
  prometheus-data:
    name: prometheus-data

Speichern und schließen mit
Win: STRG+O, ENTER, STRG+X
Mac: CONTROL+O, ENTER, CONTROL+X

"data"-Verzeichnis und Prometheus Konfigurationsdatei anlegen

sudo mkdir data
cd data
sudo nano prometheus.yml
global:
  scrape_interval:     10s
  evaluation_interval: 10s

rule_files:
  # - "first.rules"
  # - "second.rules"

scrape_configs:
  - job_name: prometheus
    static_configs:
      - targets: ['localhost:9090']

Speichern und schließen mit
Win: STRG+O, ENTER, STRG+X
Mac: CONTROL+O, ENTER, CONTROL+X

Mit dieser Konfiguration bekommen wir Daten von unserem Prometheus Container.

Weitere Informationen zur Konfiguration gibt es auf prometheus.io oder unter dem Tag Prometheus.

Erreichbar ist die Prometheus Web Oberfläche über die Server-IP und den Port 9090, zum Beispiel 10.10.10.10:9090. Mit einem Klick auf Status -> Targets ist prometheus jetzt sichtbar und verbunden.

Die nächsten Schritte: Um Daten von weiteren Systemen zu sammeln, wird der node_exporter benötigt. Wie man den installiert, erfährst du in unserer Folgeanleitung.

Einige Systeme wie zum Beispiel Home Assistant oder OPNSense bieten Plugins an, um Daten für Prometheus bereitzustellen, auch darüber kannst du über den Tag Prometheus lesen.

Bei Anmerkungen oder Fragen kommt gerne auf unseren Discord.

Join the IceFlom & maarsellow & Viertelwissen Discord Server!
Gemeinschaftsdiscord von IceFlom, Maarsellow und Viertelwissen

Tags

maarsellow

zusammen mit IceFlom