Anleitung zur Einrichtung von Prometheus und node_exporter

15 Min. Lesezeit - 29. Mai 2026

hero section cover
Inhaltsverzeichnis
  • Einrichtung der Serverüberwachung mit Prometheus und node_exporter
  • Installation von node_exporter
  • Ausführen von node_exporter als systemd-Dienst
  • Konfigurieren von Prometheus zum Abrufen von Daten aus node_exporter
  • Sichern Ihres Monitoring-Stacks
  • Best Practices für die Überwachung und nächste Schritte
  • Fehlerbehebung
Teilen

Installieren Sie Prometheus und node_exporter, konfigurieren Sie Scrape-Ziele, richten Sie systemd-Dienste ein und sichern Sie Ihren Monitoring-Stack. Schritt-für-Schritt-Anleitung für Linux.

Einrichtung der Serverüberwachung mit Prometheus und node_exporter

Prometheus erfasst und speichert Zeitreihenmetriken. node_exporter stellt Daten auf Systemebene wie CPU-, Speicher- und Festplattenauslastung für die Erfassung durch Prometheus bereit. Diese Anleitung behandelt die Installation beider Komponenten, die Konfiguration von Erfassungszielen, die Ausführung von node_exporter als systemd-Dienst und die Absicherung des Zugriffs.

Installation von node_exporter

Laden Sie die neueste stabile Version von der offiziellen GitHub-Release-Seite herunter. Stand Mai 2026 ist das Version 1.11.1. Ersetzen Sie amd64 bei arm64 , falls erforderlich.

wget https://github.com/prometheus/node_exporter/releases/download/v1.11.1/node_exporter-1.11.1.linux-amd64.tar.gz

Vergleichen Sie die SHA256-Prüfsumme mit dem Wert auf der Release-Seite, entpacken Sie dann die Datei und installieren Sie sie:

tar -xzvf node_exporter-1.11.1.linux-amd64.tar.gz
sudo mv node_exporter-1.11.1.linux-amd64/node_exporter /usr/local/bin/

Erstellen Sie einen dedizierten Systembenutzer ohne Home-Verzeichnis und ohne Login-Shell:

sudo useradd --no-create-home --shell /bin/false node_exporter
sudo chown node_exporter:node_exporter /usr/local/bin/node_exporter

Testen Sie dies, indem Sie /usr/local/bin/node_exporter direkt aus und überprüfen Sie anschließend die Ausgabe:

curl http://localhost:9100/metrics

Sie sollten Zeilen sehen, die mit node_, einschließlich Metriken wie node_cpu_seconds_total und node_memory_MemAvailable_bytes. Standardmäßig stellt node_exporter etwa 500 Zeitreihen bereit.

Ausführen von node_exporter als systemd-Dienst

Das Ausführen von node_exporter über das Terminal ist für Testzwecke in Ordnung, wird jedoch beendet, sobald Sie die Sitzung schließen. Erstellen Sie eine Unit-Datei unter /etc/systemd/system/node_exporter.service:

[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
 
[Service]
User=node_exporter
Group=node_exporter
Type=simple
Restart=on-failure
RestartSec=5
ExecStart=/usr/local/bin/node_exporter
 
[Install]
WantedBy=multi-user.target

Aktivieren und starten Sie den Dienst:

sudo systemctl daemon-reload
sudo systemctl enable node_exporter
sudo systemctl start node_exporter

Überprüfen Sie mit sudo systemctl status node_exporter. Die Ausgabe sollte Folgendes anzeigen active (running).

Wenn Prometheus auf demselben Host läuft, binden Sie node_exporter nur an localhost, indem Sie die ExecStart Zeile:

ExecStart=/usr/local/bin/node_exporter --web.listen-address="127.0.0.1:9100"

Konfigurieren von Prometheus zum Abrufen von Daten aus node_exporter

Öffnen /etc/prometheus/prometheus.yml und fügen Sie einen Job unter scrape_configs:

scrape_configs:
  - job_name: 'node_exporter'
    scrape_interval: 15s
    static_configs:
      - targets: ['localhost:9100']
        labels:
          env: 'production'

Der job_name identifiziert die Quelle in Abfragen und Dashboards. targets verweist auf den Host und den Port, auf dem node_exporter lauscht. Labels wie env helfen Ihnen später beim Filtern von Metriken.

Überprüfen Sie die Konfiguration vor dem Neustart:

promtool check config /etc/prometheus/prometheus.yml

Wenn die Überprüfung erfolgreich ist, laden Sie Prometheus ohne Ausfallzeit neu:

sudo systemctl reload prometheus

Öffnen http://<your-prometheus-ip>:9090, gehen Sie zu „Status > Targets“ und überprüfen Sie, ob der node_exporter-Job den grünen Status „UP“ anzeigt. Führen Sie eine kurze Abfrage wie node_cpu_seconds_total im Expression Browser aus, um zu überprüfen, ob Daten fließen.

Sichern Ihres Monitoring-Stacks

Setzen Sie die Ports 9090 oder 9100 niemals dem öffentlichen Internet aus. Beschränken Sie unter Ubuntu/Debian den Zugriff von node_exporter auf die IP-Adresse Ihres Prometheus-Servers:

sudo ufw allow from <prometheus-ip> to any port 9100

Unter CentOS/RHEL mit firewalld:

firewall-cmd --permanent --add-port=9100/tcp

Stellen Sie die Prometheus-Web-UI hinter einen Reverse-Proxy wie Nginx mit Basic-Auth und TLS. Ein Mesh-VPN wie Tailscale ist eine weitere Option, wenn Sie Zugriff von mehreren Standorten benötigen, ohne Ports direkt freizugeben.

Best Practices für die Überwachung und nächste Schritte

Verwenden Sie node_memory_MemAvailable_bytes anstelle von MemFree für Speicherwarnungen. MemAvailable Berücksichtigen Sie Puffer und Cache, um ein genaueres Bild davon zu erhalten, wie viel Speicher tatsächlich frei ist.

Deaktivieren Sie nicht benötigte Collector (wifi, nfs, bcache) mit dem --no-collector.<name> Flag, um Störsignale zu reduzieren.

Für Warnmeldungen zum Speicherplatz ermöglicht die predict_linear PromQL-Funktion können Sie anhand aktueller Trends vorhersagen, wann ein Volume voll sein wird. Durch die Einstellung eines 7-tägigen Prognosefensters lassen sich langsame Speicherplatzverluste erkennen, bevor sie zu Ausfällen führen.

Um mehrere Server zu überwachen, installieren Sie node_exporter auf jedem Rechner und fügen Sie deren IPs zur targets Liste in prometheus.yml. Wechseln Sie in größeren Umgebungen zu dateibasierter Service-Erkennung, anstatt IP-Adressen fest zu codieren.

Durch Hinzufügen von Grafana erhalten Sie visuelle Dashboards. Das Dashboard „Node Exporter Full“ (ID 1860) ist ein guter Ausgangspunkt. Alertmanager leitet kritische Warnmeldungen an Slack, E-Mail oder PagerDuty weiter.

Die dedizierten Server und VPS-Tarife von FDC unterstützen Prometheus und node_exporter von Haus aus. Siehe die dedizierten Server-Optionen von FDC.

Fehlerbehebung

ProblemMögliche UrsacheZu überprüfender Befehl
Dienst lässt sich nicht startenFalscher Pfad zur Binärdatei oder falsche Berechtigungenjournalctl -u node_exporter -xe
Metriken nicht erreichbarFirewall blockiert Port 9100 oder falsche Bind-Adressess -lntp | grep 9100
Ziel in Prometheus nicht erreichbarNetzwerkproblem oder falsche Ziel-IP in prometheus.ymlcurl -I http://<target-ip>:9100/metrics
Bestimmte Metriken fehlenCollector standardmäßig deaktiviertnode_exporter --help

Blog

Diese Woche im Blickpunkt

Weitere Artikel
Anleitung zur Einrichtung von Prometheus und node_exporter

Anleitung zur Einrichtung von Prometheus und node_exporter

Installieren Sie Prometheus und node_exporter, konfigurieren Sie Scrape-Ziele, richten Sie systemd-Dienste ein und sichern Sie Ihren Monitoring-Stack. Schritt-für-Schritt-Anleitung für Linux.

15 Min. Lesezeit - 29. Mai 2026

XDP und eBPF für die Linux-Paketverarbeitung

14 Min. Lesezeit - 27. Mai 2026

Weitere Artikel
background image

Haben Sie Fragen oder benötigen Sie eine individuelle Lösung?

icon

Flexible Optionen

icon

Globale Reichweite

icon

Sofortige Bereitstellung

icon

Flexible Optionen

icon

Globale Reichweite

icon

Sofortige Bereitstellung