systemd-Units mit Nagios/Icinga überwachen

Kürzlich bin ich auf einen interessanten Blog-Eintrag gestoßen, der sich mit dem Überwachen von systemd-Units über Nagios bzw. Icinga beschäftigt.

Den Screenshot des Artikels empfand ich jedoch als verwirrend. Er erweckte bei mir den Eindruck, das verlinkte Python-Skript würde automatisch etwaige systemd-Units erkennen und innerhalb Nagios/Icinga konfigurieren – das ist jedoch nicht der Fall. Das Skript, welches den Namen pynagsystemd trägt, überwacht mithilfe des systemctl-Kommandos den Status aller aktiven systemd-Units. Aktivierte, aber fehlerhafte Einträge (beispielsweise abgestürzte Dienste) werden entsprechend markiert und ausgegeben:

pynagsystemd

Das Skript benötigt das Python-Modul python-nagiosplugin – dieses kann entweder über die Python-eigene Paketverwaltung pip oder über ein RPM-Paket installiert werden.

Beim Testen in meiner Umgebung ist mir aufgefallen, dass einige nicht benötigte, aber immer noch aktivierte systemd-Units als fehlerhaft angezeigt werden:

$ /usr/lib64/nagios/plugins/pynagsystemd.py
SYSTEMD CRITICAL - failed units:  rngd.service kdump.service

Ein simples Deaktivieren der Units genügte in meinem Fall nicht:

# systemctl disable rngd.service
# systemctl disable kdump.service
# /usr/lib64/nagios/plugins/pynagsystemd.py
SYSTEMD CRITICAL - failed units:  rngd.service kdump.service

Nach der Deaktivierung von nicht benötigten Units müssen eventuelle Fehlerzähler zurückgesetzt werden:

# systemctl reset-failed

Das anschließende Ergebnis war zufriedenstellend:

$ /usr/lib64/nagios/plugins/pynagsystemd.py
SYSTEMD OK

🙂

2 Kommentare Schreibe einen Kommentar

Schreibe einen Kommentar