HOWTO Use Hpasm
From Gentoo Linux Wiki
| Installation • Kernel & Hardware • Networks • Portage • Software • System • X Server • Gaming • Non-x86 • Emulators • Misc |
Under Development
Contents |
[edit] About
Hewlett-Packard offer a binary-only package of health monitoring agents for HP and Compaq Proliant servers, called HPASM (HP Advanced Server Management). To download, go to hp.com/support, choose your location, then follow the links to your servers' download page.
HPs' Proliant Series (ML, DL, CL, BL), can use this option on varying forms of Linux, namely VMWare ESX Server, RHEL, and SLES.
They also have a hardware thermal monitoring which, when the CPU temperature threshold is exceeded, set the system fans to maximum. The fans grow increasingly loud when the thermal temp is exceeded; the only way to reduce the fan speed to normal again is to constantly run the hpasmd daemon, which can dynamically adjust fan speed, or to reboot the system. (This problem seems to have been fixed in later generations of the DL servers, e.g. my DL360 G4 doesn't have this problem but my DL360 G3 does.)
hpasm in the context of this article refers to hpasmd (the system health monitor daemon) and its accompanying command-line interface, hpasmcli. Note that the HPASM RPM package distributed by HP (mentioned above) also includes many other monitoring agents and tools, e.g. for Compaq SmartArray.
[edit] Installation
There are two ways of installing hpasm: by emerging the masked ebuild currently in Portage, or by manually installing the latest version.
[edit] Installation using Portage
Ebuilds for newer HPASM versions can be found here: Tuxus HPASM ebuilds
To install the Portage version is simple as
# emerge hpasm
[edit] Manual installation
FIXME: I was too lazy to install the man pages, but installing them is a good idea. I was also too lazy to stuff around with PATHs, so I installed into /usr/local — it really belongs in /opt though I think?
The following instructions are for getting a very basic hpasm setup, so that hpasmd is started by rc. You will also have hpasmcli for looking at temperatures, fan speeds, etc.
You will need to have rpm2targz installed:
# emerge rpm2targz
To begin with you will need the HPASM RPM distributed by HP. Visit the HP Support site, search for your server, and under drivers you should find "HP System Health Application and Insight Management Agents". You will have to choose your OS — HP of course don't officially support Gentoo, but choose the latest version of RHEL, this should give you the latest version of the HPASM drivers.
Note that both i386 and x86_64 versions are available — make sure you pick the right one for your CPUs! You should be given the correct version depending on what server hardware you searched for.
Convert the downloaded RPM to a .tar.gz:
# rpm2targz hpasm-7.4.0-56.rhel4.i386.rpm found gzip magic bytes trying to decompress with gzip... OK
This will give you a .tar.gz which you should extract into a temporary directory:
# mkdir hpasm # cd hpasm # tar xvzf ../hpasm-7.4.0-56.rhel4.i386.tar.gz
We are interested in hpasmd, hpasmcli, and libhpasmintrfc.so.1.0. Copy the two binaries to /usr/local/sbin and the library to /usr/local/lib:
# cp opt/compaq/hpasmd/bin/hpasmd opt/compaq/utils/hpasmcli /usr/local/sbin/ # cp opt/compaq/hpasm/addon/libhpasmintrfc.so.1.0 /usr/local/lib/
For hpasm-8.0.0-173.rhel5.i386.rpm you will have to copy the following lib:
# cp usr/lib/libhpasmintrfc.so.2 /usr/local/lib/
There are some add on binaries that prevent this from working unless you place them in the proper path so we'll copy them here:
# cp -a opt/* /opt
You will also need to make a symlink for the library so it can be found:
# cd /usr/local/lib/ # ln -sf libhpasmintrfc.so.1.0 libhpasmintrfc.so.1
# ln -sf /usr/local/lib/libhpasmintrfc.so.1.0 /usr/lib/libhpasmintrfc.so.1
# ldconfig
The only thing left to do is create an initscript, like this:
| File: /etc/init.d/hpasmd |
#!/sbin/runscript
# Created by Dan Callaghan
# initscript for the HP health monitor daemon, hpasmd
depend() {
use logger
}
start() {
ebegin "Starting hpasmd"
start-stop-daemon --start --quiet --exec /usr/local/sbin/hpasmd
eend $?
}
stop() {
ebegin "Stopping hpasmd"
start-stop-daemon --stop --quiet --exec /usr/local/sbin/hpasmd
eend $?
}
|
Set the initscript executable:
# chmod 755 /etc/init.d/hpasmd
add it to your default runlevel, and start it:
# rc-update add hpasmd default # rc
Your server's system fans will now be under control of hpasmd, and you can now run hpasmcli to view temperatures, fan speeds, etc.
You may have to do (if you see missing libraries etc):
# ldconfig
[edit] Usage
[edit] Show Arguments
hpasmcli -s "show"
Will give you a complete list of things you can check
SHOW ASR
SHOW BOOT
SHOW DIMM
SHOW F1
SHOW FANS
SHOW HT
SHOW IML
SHOW IPL
SHOW NAME
SHOW POWERSUPPLY
SHOW PXE
SHOW SERIAL [ BIOS | EMBEDDED | VIRTUAL ]
SHOW SERVER
SHOW TEMP
SHOW UID
SHOW WOL
[edit] Check Fans
So you can see from the previous command to check the fans you would use this command.
hpasmcli -s "show fans"
[edit] Check DIMMS
So you can see from the previous command to check the DIMMs you would use this command.
hpasmcli -s "show dimm"
[edit] Check Powersupply
I think you get the picture now
hpasmcli -s "show powersupply"
