Nagios Check Plugin: Nagios Check Plugin: IPMI on Dell PowerEdge BMC/DRAC5

Nagios Exchange Project Page
Original author: (C) Chris Wilson <check_ipmi@qwirx.com>, 2005-06-04

rev192 snapshot: check_ipmi.pl.in

Example run (w/ & w/o verbose mode):

$ sudo -H -u nagios ./check_ipmi.pl [hostname].[domain]
||IPMI OK: (Ambient_Temp = 25 degrees C, Fan_Redundancy = 0x01, Planar_Temp = 36 degrees C, Riser_Temp = 32 degrees C, Temp = 43 degrees C, Temp1 = 50 degrees C, Temp2 = 40 degrees C, Temp3 = 40 degrees C) 

$ echo $?
0

# With Debugging Enabled

$ sudo -H -u nagios ./check_ipmi.pl [hostname]
DEBUG: new error code: OK
DEBUG: new error code #: 0
DEBUG: previous error code: -1
DEBUG: previous error code #: 
DEBUG: transitioning from: -1 -> OK
DEBUG: Appending pref data: IPMI OK: 
DEBUG: Ambient_Temp = 25 degrees C
DEBUG: Fan_Redundancy = 0x01
DEBUG: Planar_Temp = 36 degrees C
DEBUG: Riser_Temp = 32 degrees C
DEBUG: Temp = 43 degrees C
DEBUG: Temp1 = 50 degrees C
DEBUG: Temp2 = 40 degrees C
DEBUG: Temp3 = 40 degrees C
||IPMI OK: (Ambient_Temp = 25 degrees C, Fan_Redundancy = 0x01, Planar_Temp = 36 degrees C, Riser_Temp = 32 degrees C, Temp = 43 degrees C, Temp1 = 50 degrees C, Temp2 = 40 degrees C, Temp3 = 40 degrees C) 

In large scale environments with shared password groups, I recommend using symbolic links and UFQDNs within Nagios hosts.cfg(5) to manage passwords:

$ ls -al /usr/local/etc/check_ipmi/
total 12
drwxr-xr-x   2 mrtg  wheel  1536 Apr 11 15:27 ./
drwxr-xr-x  22 root  wheel  1536 Apr 10 15:52 ../
-r--r-----   1 mrtg  nagios    xx Mar  3  2006 passwd.default
-r--r-----   1 mrtg  nagios    xx Jan 10 11:47 passwd.customerFoo
lrwxr-xr-x   1 mrtg  nagios    xx Aug 15  2006 passwd.customerFooServer1 -> passwd.customerFoo
lrwxr-xr-x   1 mrtg  nagios    xx Jan 10 14:32 passwd.customerFooServer2 -> passwd.customerFoo
lrwxr-xr-x   1 mrtg  nagios    xx Jan 10 14:32 passwd.customerBlahDB1@ -> passwd.customerBlah
-r--r-----   1 mrtg  nagios    xx Jan 10 10:59 passwd.customerBlah
lrwxr-xr-x   1 mrtg  nagios    xx Aug 15  2006 passwd.other -> passwd.customerBlah
Nagios checkcommands.cfg(5) example:
# 'check_ipmi' command
define command{
        command_name    check_ipmi
        command_line    /path/check_ipmi.pl $HOSTNAME$
     }

ChangeLog

Contact Me: bseklecki@collaborativefusion.com