Die folgenden Beispiele sind fuer Solaris geschrieben. Auf Ihrem Server koennen sie - je nach OS - durchaus anders aussehen und es koennte daher notwendig sein, den Kommandoteil oder den Evaluierungsausdruck anzupassen.
Aber das ist eines der Hauptziele dieser Beispiele: Ihr Interesse zu wecken, eigene check_generic Kommandos fuer Nagios zu implementieren.
Anmerkung: es ist schon klar, dass es diverse prtdiag checks gibt auf nagiosexchange.org. Aber die Ausgabe von prtdiag unterscheidet sich mit jedem neuen HW release und irgendwie erinnert das Ganze an das Rennen zwischen dem Hasen und Igel.
Daher habe ich diesen kleinen Check aufgesetzt, der lediglich ein paar 'magische' Worte im Output von prtdiag -v parst. Das laesst sich prima erweitern und hat mir schon gute Dienste geleistet.
check_generic --ignore_rc -n prtdiag -e "/usr/platform/`uname -i`/sbin/prtdiag -v" -c "=~/error|failed|failure|fault|faulty/i"
Ziemlich einfache Pruefung, ob alle CPUs online sind. Ein klassischer Nagios Warning Check um redundante Ressourcen zu monitoren.
check_generic -n system_cpu_offline -e "echo \"CPU:`/usr/sbin/psrinfo|wc -l` offline:`/usr/sbin/psrinfo|grep -v on-line|wc -l`\"" -w '!~/offline: 0/'
Wenn Sie sicher gehen wollen, dass Ihr Solaris System demnaechst wirklich bootet und nicht im OK-Prompt stehen bleibt, sollten Sie die autoboot-Einstellung im NVRAM ueberpruefen.
Achtung: eeprom kann nur von root ausgefuehrt werden und benoetigt sudo support.
check_generic -n system_eeprom_autoboot -e "/usr/bin/sudo /usr/sbin/eeprom | grep "auto-boot\?" | awk -F= '{print \$2}'" -w 'ne "true"'
This setting is meant to ensure the proper setting of redundant boot devices. Solstice Disk Suite does not help really much if the system only boots from disk0.
Achtung: eeprom kann nur von root ausgefuehrt werden und benoetigt sudo support.
check_generic -n system_eeprom_boot_device -e "/usr/bin/sudo /usr/sbin/eeprom | grep "boot-device" | awk -F= '{print \$2}'" -w '!~/disk0.*disk1/'
Es gibt einige Diag-Switches, die es wert sind, gemonitort zu werden. Das Ziel ist, die Reboot-Zeit soweit als moeglich zu verkuerzen. Systemadministratoren vergessen gern nach Debug-Sessions, solche Diag-Einstellungen wieder zurueckzusetzen.
Achtung: eeprom kann nur von root ausgefuehrt werden und benoetigt sudo support.
check_generic -n system_eeprom_diagswitch -e "/usr/bin/sudo /usr/sbin/eeprom | grep "diag-switch\?" | awk -F= '{print \$2}'" -w 'ne "false"'
Achtung: eeprom kann nur von root ausgefuehrt werden und benoetigt sudo support.
check_generic -n system_eeprom_diaglevel -e "/usr/bin/sudo /usr/sbin/eeprom | grep "diag-level" | awk -F= '{print \$2}'" -w 'ne "min"'
Fuer die korrekte Funktion von IPMP muss die NVRAM variable local-mac-address auf true stehen.
Achtung: eeprom kann nur von root ausgefuehrt werden und benoetigt sudo support.
check_generic -n system_eeprom_local_mac_address -e "/usr/bin/sudo /usr/sbin/eeprom | grep "local-mac-address\?" | awk -F= '{print \$2}'" -w 'ne "true"'