Anleitung zum Debuggen von Nagios Tests über NRPE am Beispiel des check_apt Plugins und dem Fehler:
CHECK_NRPE STATE CRITICAL: Socket timeout after 10 seconds.
Dieser kann auftreten, wenn die lokale Ausfühurng auf der zu testenden Maschine zu lange dauert.
Debugging
Auf dem Server lässt sich der Test manuell ausführen:
/usr/lib/nagios/plugins/check_nrpe -H <DEVICE IP> -c "check_apt"
CHECK_NRPE STATE CRITICAL: Socket timeout after 10 seconds.
Auch auf dem zu prüfenden Gerät lässt sich der Test lokal ausführen:
/usr/lib/nagios/plugins/check_apt
CRITICAL - Plugin timed out after 10 seconds
Da dieser schon lokal auf dem zu prüfenden Gerät fehlschlägt, müssen wir hier das Timeout erhöhen:
/usr/lib/nagios/plugins/check_apt -t 30
APT WARNING: 12 packages available for upgrade (0 critical updates). |available_upgrades=12;;;0 critical_updates=0;;;0
Nachdem der manuelle Test erfolgreich war, können wir den Paramater in der NRPE Konfiguration anpassen:
# edit /etc/nagios/nrpe.cfg:
command[check_apt]=/usr/lib/nagios/plugins/check_apt -t 30
# restart nrpe server
systemctl restart nagios-nrpe-server
Ein erneuter Test zeigt, dass wir zwar mit dem zu prüfenden Gerät fertig sind, aber nicht mit dem Server:
/usr/lib/nagios/plugins/check_nrpe -H 192.168.178.38 -c "check_apt"
CHECK_NRPE STATE CRITICAL: Socket timeout after 10 seconds.
Ein manueller Test des Timeouts zeigt, das wir auf dem richtigen Weg sind:
/usr/lib/nagios/plugins/check_nrpe -H 192.168.178.38 -c "check_apt" -t 30
APT WARNING: 12 packages available for upgrade (0 critical updates). |available_upgrades=12;;;0 critical_updates=0;;;0
# edit /etc/nagios-plugins/config/check_nrpe.cfg
define command {
command_name check_nrpe
command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ -t 30
}
# restart nagios
systemctl restart nagios4
Und der Test funktioniert wie gewünscht: