Linux HP Proliant SNMP Agent setup

I wanted to put together a quick post on configuring the hp-snmp-agent and hp-health agents on HP Proliant servers using Linux. I stumbled across the need for this while working on a project to implement Icinga to monitor server hardware via SNMP.

First things first, check that you are running a compatbable HP Proliant G series. The current stable relase of both hp-snmp-agent and hp-helath only work with G5+. This is important to keep in mind because I ran into this issue when trying to install both agents on a G4 Proliant. The dpkg install would fail because it cannot start the hp-health agent under a G4 Proliant. I am installing the agents ontop of Debian 7.

      1. Let’s download the packages, check for latest versions
      2. You will need snmp, snmpd, and some other library files before install the packages.
      3. Now install the two(2) agents. Start with hp-health first, then install hp-snmp-agent

        • If dpkg complains about any missing packages, just do a apt-get -f install should take care of that.
      1. Now, we need to reconfigure snmpd. We can do this 1 of 2 ways. Either use the /sbin/hpsnmpconfig script, or edit the /etc/snmpd/snmpd.conf file directly. I’ll edit the snmpd.conf directly, so edit /etc/snmp/snmpd.conf

          • Pretty much, what we’ve done is set as a trap destination, and an allowed poller(can perform SNMP walks/queries)
          • We’ve also set a custom community string mycommunitystring, this is usually public by default
          • Setting sysContact and sysLocation, which are RFC standard SNMP OID
            OID == SysContact
            OID == SysLocation


          • The dlmod cmaX is something the hpsnmpconfig script adds. I believe it allows the SNMPd to communictate with hp-snmp-agent


          • One last thing in the snmpd.conf file. Depnding on what Distro you are using and version of snmpd, look for the line udp: and change it to udp:161. For somereason, SNMP queries won’t work unless this is changed.




      1. Now, restart all services involved.
      2. Let’s test. Must be done on server, or whatever IP you used.

        • The above commands should output you sysContact and sysLocation
      3. Let’s also test the hp-snmp-agent OIDs, to make sure it is properly integrating

        • The first test should output the Proliant Product Platform, such as “ProLiant DL380 G6”
        • The second, should output the status as an integer of the Power Supplies. (1 = other, 2 = ok, 3 = degraded, 4=failed)


To take it a step further, I recommend downloading this nagios script, and executing it against the HP Server you just set up.


Leave a Reply