Der Node Exporter ist der Standard-Exporter von Prometheus für Linux- und Unix-Hosts. Er ist ein einzelnes Go-Binary, läuft als Dienst auf dem Rechner und stellt dessen Betriebssystem-Metriken als HTTP-Endpunkt bereit – standardmäßig unter http://<host>:9100/metrics.

Was er liefert

Der Exporter liest Werte aus dem Kernel und dem Dateisystem und übersetzt sie in das Prometheus-Format. Die wichtigsten Collectors:

  • cpu, loadavg – CPU-Zeit je Modus, Last über 1, 5 und 15 Minuten
  • memory, swap – Speicher- und Auslagerungsverbrauch
  • filesystem, diskstats, stat – Belegung, I/O-Operationen, Lese-/Schreibfehler
  • network – übertragene Bytes und Pakete, Fehler pro Interface
  • systemd, textfile – Dienststatus sowie eigene Werte aus einfachen Textdateien

Beispielabfrage

# Auslastung in Prozent über 5 Minuten, je Instanz
100 - (avg by (instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)

# Freier Platz auf der Root-Partition in Prozent
100 - (node_filesystem_avail_bytes{mountpoint="/"}
       / node_filesystem_size_bytes{mountpoint="/"} * 100)

Metriken und Kardinalität

Weil Prometheus im Pull-Verfahren arbeitet, trägt der Exporter die Metriken nicht aktiv ab – Prometheus holt sie im eingestellten Intervall. Eine hohe Anzahl von Zeitreihen (etwa über viele Mountpoints oder Netzwerk-Interfaces) kostet Speicher in Prometheus. Deshalb lohnt es sich, mit --collector.disable-defaults plus gezielter Auswahl ganze Collector-Gruppen abzuschalten. Der textfile-Collector ist der einfache Weg, eigene Werte – etwa Backup-Ergebnisse aus einem Cron-Job – einzuspeisen.

Der Node Exporter gehört auf jeden Server, über den Prometheus Metriken sammeln soll. Er ist bewusst klein gehalten: Er verändert das System nicht, liest nur, und läuft mit einem eigenen, stark eingeschränkten Benutzer.

Verwandte Grundlagen: Prometheus, Monitoring, Alertmanager, Monitoring mit Prometheus und Grafana.