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:

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

🙂

Übersetzungen: