ProLiant Servers (ML,DL,SL)
1751791 Members
4909 Online
108781 Solutions
New Discussion

Re: DL165 G7 and hp-health problems

 
SOLVED
Go to solution
mr_scatter
Occasional Contributor

DL165 G7 and hp-health problems

does hp-health support DL165 G7?

 

[root@engnpbm001 init.d]# dmidecode -t system
# dmidecode 2.11
SMBIOS 2.6 present.

Handle 0x0001, DMI type 1, 27 bytes
System Information
Manufacturer: HP
Product Name: ProLiant DL165 G7
Version:
Serial Number: MXQ032086Y
UUID: 01A752BE-E184-DF11-A37B-1CC1DE7AF414
Wake-up Type: Power Switch
SKU Number: 590260-001
Family:

Handle 0x0050, DMI type 32, 20 bytes
System Boot Information
Status: No errors detected

 

hp-health package is the latest version:

 

[root@engnpbm001 init.d]# rpm -qi hp-health
Name : hp-health Relocations: (not relocatable)
Version : 9.31 Vendor: Hewlett-Packard Company
Release : 1572.3.rhel6 Build Date: Tue 22 Jan 2013 06:17:46 PM EST
Install Date: Tue 07 May 2013 04:40:23 AM EDT Build Host: blrh6u2x64001.sdg.adapps.hp.com
Group : System Environment Source RPM: hp-health-9.31-1572.3.rhel6.src.rpm
Size : 1743109 License: 2011 Hewlett-Packard Development Company, L.P.
Signature : DSA/SHA1, Tue 22 Jan 2013 06:17:51 PM EST, Key ID 527bc53a2689b887
Packager : Hewlett-Packard Company
URL : http://www.hp.com/go/proliantlinux
Summary : HP System Health Application and Command Line Utilities
Description :
This package contains the System Health Monitor and Advanced Server Reset
Daemon for all hp Proliant systems with ASM, ILO, & ILO2 embedded management
asics. Also contained are the command line utilities.

 

 

 

[root@engnpbm001 init.d]# service hp-health start
Using Proliant Standard
IPMI based 1XX System Health Monitor
lspci: option requires an argument -- 's'
Usage: lspci [<switches>]

Basic display modes:
-mm Produce machine-readable output (single -m for an obsolete format)
-t Show bus tree

Display options:
-v Be verbose (-vv for very verbose)
-k Show kernel drivers handling each device
-x Show hex-dump of the standard part of the config space
-xxx Show hex-dump of the whole config space (dangerous; root only)
-xxxx Show hex-dump of the 4096-byte extended config space (root only)
-b Bus-centric view (addresses and IRQ's as seen by the bus)
-D Always show domain numbers

Resolving of device ID's to names:
-n Show numeric ID's
-nn Show both textual and numeric ID's (names & numbers)
-q Query the PCI ID database for unknown ID's via DNS
-qq As above, but re-query locally cached entries
-Q Query the PCI ID database for all ID's via DNS

Selection of devices:
-s [[[[<domain>]:]<bus>]:][<slot>][.[<func>]] Show only devices in selected slots
-d [<vendor>]:[<device>] Show only devices with specified ID's

Other options:
-i <file> Use specified ID database instead of /usr/share/hwdata/pci.ids
-p <file> Look up kernel modules in a given file instead of default modules.pcimap
-M Enable `bus mapping' mode (dangerous; root only)

PCI access options:
-A <method> Use the specified PCI access method (see `-A help' for a list)
-O <par>=<val> Set PCI access parameter (see `-O help' for a list)
-G Enable PCI access debugging
-H <mode> Use direct hardware access (<mode> = 1 or 2)
-F <file> Read PCI configuration dump from a given file

ERROR: There is NO IPMI support available on this system!
Please install the hp-OpenIPMI package or enable IPMI support
for this distribution. Aborting hp-health initialization process!

 

the script seems to be looking for an ipmi device from lspci output but its not able to find one:

 

[root@engnpbm001 init.d]# bash -x ./hp-health start

...

++ lspci
++ grep -i ipmi
++ cut '-d ' -f1
+ ipmiDevId=
+ lspci -xv -s
+ grep -q ipmi_si
lspci: option requires an argument -- 's'
Usage: lspci [<switches>]

 

however LO100 says that it supports IPMI2.0. I don't know much about IPMI, but I suppose this means IPMI support doesn't mean the presence of an IPMI device? if that's the case, what's the IPMI thing LO100 is talking about?

 

regards,

Marc

4 REPLIES 4
maroldi
New Member

Re: DL165 G7 and hp-health problems

Hi, same problem on a dl180g6 with CentOs 6.4 x64

# /etc/init.d/hp-health start
Using Proliant Standard
IPMI based 1XX System Health Monitor
lspci: option requires an argument -- 's'
Usage: lspci [<switches>]


ERROR: There is NO IPMI support available on this system!
Please install the hp-OpenIPMI package or enable IPMI support
for this distribution. Aborting hp-health initialization process!

I have installed the ManagementComponentPack using the bootstrap.sh script

regards
Marco
tnozaki
Visitor
Solution

Re: DL165 G7 and hp-health problems

hi, all.

 

it seems that hp-health version 9.31-1572.3's bug.

 

this version was released for the bug fix of hp-health initscript due to RHEL6.4's incompatible kernel config option.

the changes of hp-health initscript  between 9.30-1564.48 and 9.31-1572.3 is following:

--- 9.30-1564.48/etc/init.d/hp-health      2013-07-04 01:40:39.721091200 +0900
+++ 9.31-1572.3/etc/init.d/hp-health      2013-07-04 01:41:00.780295700 +0900
@@ -276,7 +276,9 @@
 }

 have_distro_ipmi() {
-    if modprobe -n ipmi_si; then
+     modprobe -n ipmi_si > /dev/null 2>&1
+    local modprobeStatus=$?
+    if [ "$modprobeStatus" == 0 ]; then
        return 0
     fi
...
@@ -568,17 +572,23 @@
        config_hp_ipmi
        return
     fi
-
+    local ipmi_si_module=""
     if ! have_distro_ipmi; then
+     #check ipmi_si drivir loaded with kernel
+       ipmiDevId="$(lspci | grep -i ipmi | cut -d' ' -f1)"
+        if  lspci -xv -s $ipmiDevId | grep -q "ipmi_si"; then
+        ipmi_si_module="none"
+       else
        echo
        cmaecho "ERROR: There is NO IPMI support available on this system!"
        cmaecho "Please install the hp-OpenIPMI package or enable IPMI support"
        cmaecho "for this distribution. Aborting hp-health initialization process!"
        exit 1
     fi
+    fi
...

RHEL6.4, ipmi_si module was statically linked into kernel, so modprobe/lsmod doesn't show ipmi_si module.

$ lsmod | grep ipmi
ipmi_devintf            7729  4

it is impossible to check whether OS has IPMI or not by modprobe(8).

so HP's engineer decided to use lspci(8) and check real IPMI hardware, but it is not good for 1XX system.

 

my DL120 G6 has Integrated Lights-Out 100 onboard, but it doesn't show in lspci(8) output.

$ lspci
00:00.0 Host bridge: Intel Corporation Core Processor DRAM Controller (rev 18)
00:01.0 PCI bridge: Intel Corporation Core Processor PCI Express x16 Root Port (rev 18)
00:1a.0 USB controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 (rev 05)
00:1c.4 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 5 (rev 05)
00:1c.5 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 6 (rev 05)
00:1c.6 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 7 (rev 05)
00:1c.7 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 8 (rev 05)
00:1d.0 USB controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev a5)
00:1f.0 ISA bridge: Intel Corporation 3400 Series Chipset LPC Interface Controller (rev 05)
00:1f.2 RAID bus controller: Intel Corporation 5 Series/3400 Series Chipset SATA RAID Controller (rev 05)
00:1f.3 SMBus: Intel Corporation 5 Series/3400 Series Chipset SMBus Controller (rev 05)
20:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5723 Gigabit Ethernet PCIe (rev 10)
22:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5723 Gigabit Ethernet PCIe (rev 10)
24:00.0 VGA compatible controller: Matrox Electronics Systems Ltd. MGA G200e [Pilot] ServerEngines (SEP1) (rev 02)

 

so that, following code in hp-health initscript, line:578, ipmiDevId variable may be undefined.

and line:579, lspci -xv -s  causes missing argument error.

576     if ! have_distro_ipmi; then
577      #check ipmi_si drivir loaded with kernel
578         ipmiDevId="$(lspci | grep -i ipmi | cut -d' ' -f1)"
579         if  lspci -xv -s $ipmiDevId | grep -q "ipmi_si"; then
580          ipmi_si_module="none"
581         else
582         echo
583         cmaecho "ERROR: There is NO IPMI support available on this system!"
584         cmaecho "Please install the hp-OpenIPMI package or enable IPMI support"
585         cmaecho "for this distribution. Aborting hp-health initialization process!"
586         exit 1
587         fi
588     fi

 

# service hp-health start
  Using Proliant Standard
        IPMI based 1XX System Health Monitor
lspci: option requires an argument -- 's'
Usage: lspci [<switches>]
...

 to fix this, i think don't use lspci(8), use dmidecode --type 38 or /proc/ipmi/* instead.

 

 

if you can't wait HP's real fix, please apply following *kludge* patch:

$ diff -uNrBw etc/init.d/hp-health.orig etc/init.d/hp-health
--- etc/init.d/hp-health.orig   2013-07-04 01:41:00.780295700 +0900
+++ etc/init.d/hp-health        2013-07-14 04:10:04.630824900 +0900
@@ -575,16 +575,7 @@
     local ipmi_si_module=""
     if ! have_distro_ipmi; then
      #check ipmi_si drivir loaded with kernel
-       ipmiDevId="$(lspci | grep -i ipmi | cut -d' ' -f1)"
-        if  lspci -xv -s $ipmiDevId | grep -q "ipmi_si"; then
         ipmi_si_module="none"
-       else
-       echo
-       cmaecho "ERROR: There is NO IPMI support available on this system!"
-       cmaecho "Please install the hp-OpenIPMI package or enable IPMI support"
-       cmaecho "for this distribution. Aborting hp-health initialization process!"
-       exit 1
-       fi
     fi

     ## Use distro's IPMI stack ##

 

very truly yours.

tnozaki
Visitor

Re: DL165 G7 and hp-health problems

...and don't forget to yum install ipmitool.
mr_scatter
Occasional Contributor

Re: DL165 G7 and hp-health problems

thanks tnozaki