Using IPMI to retrieve platform characteristics
Intelligent Platform Management Interface (IPMI) is an industry standard protocol used to monitor and manage various platform characteristics. This includes the ability to print FRU information, remotely control the power of the chassis, and read a variety of sensors built into the hardware platform. If you are running a Solaris host, you can use the ipmitool utility to access IPMI platform data on a local or remote host. The following example shows how to use ipmitool to print the overall status of a server that supports IPMI:
$ /usr/sfw/bin/ipmitool -v chassis status
-- BMC req.fn : 0x0 BMC req.lun : 0x0 BMC req.cmd : 0x1 BMC req.datalength : 0x0 BMC req.data :-- System Power : on Power Overload : false Power Interlock : inactive Main Power Fault : false Power Control Fault : false Power Restore Policy : unknown Last Power Event : Chassis Intrusion : inactive Front-Panel Lockout : inactive Drive Fault : false Cooling/Fan Fault : false
In addition to printing high level status information, you can use the “sensor” and “sdr” options to print the operational status of each components in a server:
$ /usr/sfw/bin/ipmitool sensor
ambienttemp | 21.600 | degrees C | ok | na | na | na | 34.800 | 40.200 | na bulk.v12-0-s0 | 12.120 | Volts | ok | na | 10.200 | na | na | 13.800 | na bulk.v3_3-s0 | 3.360 | Volts | ok | na | 3.000 | na | na | 3.600 | na bulk.v3_3-s5 | 3.240 | Volts | ok | na | 3.000 | na | na | 3.600 | na bulk.v5-s0 | 5.040 | Volts | ok | na | 4.500 | na | na | 5.520 | na bulk.v5-s5 | 5.040 | Volts | ok | na | 4.500 | na | na | 5.520 | na cpu0.dietemp | 34.800 | degrees C | ok | na | na | na | 70.200 | 73.200 | na cpu0.memtemp | 25.800 | degrees C | ok | na | na | na | 49.800 | 55.200 | na cpu0.vcore-s0 | 1.560 | Volts | ok | na | 0.720 | na | na | 1.680 | na cpu0.vldt2 | 1.200 | Volts | ok | na | 1.080 | na | na | 1.320 | na cpu1.dietemp | 39.600 | degrees C | ok | na | na | na | 70.200 | 73.200 | na cpu1.memtemp | 28.800 | degrees C | ok | na | na | na | 55.200 | 60.000 | na cpu1.vcore-s0 | 1.560 | Volts | ok | na | 0.720 | na | na | 1.680 | na fan1.tach | 10440.000 | RPM | ok | na | 1980.000 | na | na | na | na fan2.tach | 10500.000 | RPM | ok | na | 1980.000 | na | na | na | na fan3.tach | 10500.000 | RPM | ok | na | 1980.000 | na | na | na | na fan4.tach | 10620.000 | RPM | ok | na | 1980.000 | na | na | na | na fan5.tach | 10500.000 | RPM | ok | na | 1980.000 | na | na | na | na fan6.tach | 10740.000 | RPM | ok | na | 1980.000 | na | na | na | na gbeth.temp | 33.000 | degrees C | ok | na | na | na | 55.200 | 60.000 | na hddbp.temp | 24.600 | degrees C | ok | na | na | na | 55.200 | 60.000 | na sp.temp | 33.000 | degrees C | ok | na | na | na | 55.200 | 60.000 | na cpu0.mem0 | na | discrete | na | na | na | na | na | na | na cpu0.mem1 | na | discrete | na | na | na | na | na | na | na cpu0.mem2 | na | discrete | na | na | na | na | na | na | na cpu0.mem3 | na | discrete | na | na | na | na | na | na | na cpu1.mem0 | na | discrete | na | na | na | na | na | na | na cpu1.mem1 | na | discrete | na | na | na | na | na | na | na cpu1.mem2 | na | discrete | na | na | na | na | na | na | na cpu1.mem3 | na | discrete | na | na | na | na | na | na | na Event Logging | 0x0 | discrete | 0x0000| na | na | na | na | na | na
$ /usr/sfw/bin/ipmitool sdr list all
NWS BMC | Dynamic MC @ 20h | ok ambienttemp | 20.40 degrees C | ok bulk.v12-0-s0 | 12.06 Volts | ok bulk.v3_3-s0 | 3.36 Volts | ok bulk.v3_3-s5 | 3.24 Volts | ok bulk.v5-s0 | 5.04 Volts | ok bulk.v5-s5 | 5.04 Volts | ok cpu0.dietemp | 36.60 degrees C | ok cpu0.memtemp | 25.20 degrees C | ok cpu0.vcore-s0 | 1.56 Volts | ok cpu0.vldt2 | 1.20 Volts | ok cpu1.dietemp | 39 degrees C | ok cpu1.memtemp | 28.80 degrees C | ok cpu1.vcore-s0 | 1.56 Volts | ok fan1.tach | 10500 RPM | ok fan2.tach | 10500 RPM | ok fan3.tach | 10500 RPM | ok fan4.tach | 10560 RPM | ok fan5.tach | 10440 RPM | ok fan6.tach | 10740 RPM | ok gbeth.temp | 33 degrees C | ok hddbp.temp | 24.60 degrees C | ok sp.temp | 33 degrees C | ok cpu0.mem0 | Not Readable | ns [ ..... ]
ipmitool can also be used to print the FRUs in a server:
$ /usr/sfw/bin/ipmitool fru
FRU Device Description : Builtin FRU Device (ID 0) Chassis Type : Rack Mount Chassis Chassis Part Number : 602-2844-01 Chassis Serial : XG051642013 Board Mfg : S-SCI448 Board Product : NWSBIDff Board Serial : M0250F25 Board Part Number : S02035 Product Manufacturer : Sun Microsystems Product Name : Sun Fire(tm) V20z Product Part Number : 602-2844-01 Product Version : A03 Product Serial : XG051642013 FRU Device Description : cpu0.mem0.vpd (ID 1) Board Mfg : 2cffffffffffffff Board Product : 1GB DDR333 (PC2700) ECC Board Serial : 56dabeea Board Part Number : 18VDDF12872G-335D3 Product Manufacturer : 2cffffffffffffff Product Name : 1GB DDR333 (PC2700) ECC Product Part Number : 18VDDF12872G-335D3 Product Version : 0300 Product Serial : 56dabeea [ ..... ]
There are tons of other useful features, which you can read about in the ipmitool(1m) manual page.








Aircraft Tachometer Problems on November 10th, 2008
Do you have any reference manuals for running on a solaris platform? Thanks in advance