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:
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:
1$ /usr/lib64/nagios/plugins/pynagsystemd.py
2SYSTEMD CRITICAL - failed units: rngd.service kdump.service
Ein simples Deaktivieren der Units genügte in meinem Fall nicht:
1# systemctl disable rngd.service
2# systemctl disable kdump.service
3# /usr/lib64/nagios/plugins/pynagsystemd.py
4SYSTEMD CRITICAL - failed units: rngd.service kdump.service
Nach der Deaktivierung von nicht benötigten Units müssen eventuelle Fehlerzähler zurückgesetzt werden:
1# systemctl reset-failed
Das anschließende Ergebnis war zufriedenstellend:
1$ /usr/lib64/nagios/plugins/pynagsystemd.py
2SYSTEMD OK
🙂