Hallo,
in unserer Umgebung kommt es vor allem bei Fileservern vom Typ Memberserver häufig vor, dass der nscd seine Verbindung zum LDAP-Port 7389 verliert und statt dessen den Port 389 verwendet, was bei installiertem Samba4 zu keinen Antworten führt. Der in der default-Installation vorhandene UNIVENTION_NSCD Test prüft nur, ob der nscd-Prozess läuft, nicht jedoch ob er auch valide Antworten liefert. Hierzu habe ich folgendes Plugin “check_nscd_user.sh” verfasst.
#!/bin/bash
#
# Stephan Hendl: check_nscd_user
# OK: command "id <username>" gives result
# CRIT: user "<username>" not visible
#
PROGNAME=`basename $0`
PROGPATH=`echo $0 | sed -e 's,[\\/][^\\/][^\\/]*$,,'`
. $PROGPATH/utils.sh
if [ "$1" = "" ]
then
echo -e " Use : $PROGNAME <file_name> -- Ex : $PROGNAME /etc/hosts \n "
exit $STATE_UNKNOWN
fi
id $1 >/dev/null 2>&1
if [ $? == 0 ]
then
echo "OK: $(id $1)"
exit $STATE_OK
else
echo "CRITICAL: $(id $1 2>&1)"
exit $STATE_CRITICAL
fi
Unter “/etc/nagios/plugins/config” muss dann noch die entsprechende Konfigurationsdatei “check_nscd_user.cfg” abgelegt werden:
# 'check_nscd_user' command definition
define command{
command_name check_nscd_user
command_line /usr/lib/nagios/plugins/check_nscd_user.sh '$ARG1$'
}
Zum Schluss wird der Nagios-Dienst über die UMC wie im Handbuch beschrieben eingerichtet. Wichtig ist, dass vor(!) Einrichtung über die UMC die Dateien “check_nscd_user.sh” und “check_nscd_user.cfg” händisch auf die zu überwachenden Server an die entsprechenden Stellen kopiert werden.
Cheers,
Stephan