SNMP-based monitoring for GPFS clusters

Set up and verify status, performance, and configuration monitoring for GPFS 3.2 clusters

New in version 3.2, IBM General Parallel File System™ (GPFS) on Linux® provides Simple Network Management Protocol (SNMP) services that let administrators collect SNMP data about the health of a GPFS cluster so that problems such as disk failure can be quickly identified. The system lets a collector node gather the trap information, which an administrator can then monitor and analyze remotely on a separate management node. This article provides a method for basic verification of SNMP in a GPFS cluster.

David C. Johns (, Software Engineer, IBM 

David C. Johns works as a Staff Software Engineer for IBM in Cluster System test. Prior to working in Cluster System test, he spent three years in Platform Evaluation Test working with SANs and back-end storage devices. His areas of technical expertise includes design and implementation of SANs, configuration and implementation of all forms of back-end storage, and testing of GPFS on both AIX and pLinux OS. He has written many field support documents and technical publications in his 20+ years at IBM.

Frank Mangione (, Software Engineer, IBM

Frank Mangione is an Advisory Software Engineer working for IBM in GPFS development and test. He has vast experience in the administration of UNIX and its filesystems, including the underlying storage subsystems.

29 January 2008

Also available in Russian Japanese

The Simple Network Management Protocol service is available to users of the 3.2 release of the IBM General Parallel File System. It allows users to perform SNMP service collection from a defined Linux OS collector node in the GPFS cluster to a management node. In conjunction with Net-SNMP installed on the collector node and with the mmsnmpagentd service running, the user can capture SNMP trap information for monitoring and analysis on the management node. (Net-SNMP is a suite of applications used to implement SNMP v1, SNMP v2c, and SNMP v3 using both IPv4 and IPv6.) For more information on SNMP in GPFS 3.2, including a complete listing of the types of data that can be collected, refer to the General Parallel File System Advanced Administration Guide, Version 3 Release 2 (see Resources for a link).

This article shows you how to verify the SNMP functionality in a GPFS cluster. Figure 1 is an overview of the SNMP verification process.

Figure 1. Overview of SNMP verification process
Overview of SNMP verification process


To verify the SNMP functionality in a GPFS cluster, you need:

  • Software
    • GPFS 3.2 or later
    • Net-SNMP (preferably version 5.4.1)
    • Linux
  • Hardware
    • A node/lpar running Linux in the GPFS cluster as the collector node
    • A management node (also running Linux in this verification procedure)

Setting up and verifying the SNMP agent

The following 12 steps show you how to initially set up and verify the SNMP agent on the collector and manager nodes.

1. Choose the collector node

Pick a GPFS cluster node to be the collector node. This is the node where the SNMP sub-agent will run, the node that will collect and report GPFS SNMP information to an SNMP management node/application.

2. Choose the management node

Pick a node to be the SNMP management node. This is the node where a sysadmin will run an SNMP management application such as NetView® or OpenNMS. (An off-cluster choice is more realistic, but you could even choose the same node as the collector node.)

3. Install Net-SNMP on nodes

Both the collector node and management node should have Net-SNMP installed: rpm -qa | grep net-snmp.

4. Edit the SNMP daemon operating parameters

On the collector node, edit the file /etc/snmp/snmpd.conf. This file defines the operating parameters of the master SNMP daemon. Include the following lines:

master agentx
AgentXSocket tcp:localhost:705
AgentXTimeout 20
AgentXRetries 10

5. Edit general SNMP information

On the collector node and the management node, edit the /etc/snmp/snmp.conf file. This file determines general SNMP information for applications on the node. Include the following line: mibs +GPFS-MIB.

6. Copy the GPFS MIB definition

On the collector node and the management node, copy the GPFS MIB definition to the directory /usr/share/snmp/mibs:

cp /usr/lpp/mmfs/data/GPFS-MIB.txt /usr/share/snmp/mibs

rcp /usr/lpp/mmfs/data/GPFS-MIB.txt managementnode:/usr/share/snmp/mibs

If the MIB definition file changes in the GPFS build images, repeat this step.

7. Enable the SNMP daemon to grab the new configuration

On the collector node, stop and start the SNMP daemon (also known as the SNMP master agent or snmpd) so that it picks up the configuration changes:

SUSE: /etc/rc.d/snmpd stop
SUSE: /etc/rc.d/snmpd start

Redhat: ps -ef | grep snmpd
Redhat: kill [/usr/sbin/snmpd PID]
Redhat: /usr/sbin/snmpd

Verify that the SNMP daemon is running: ps -ef | grep snmpd. Check dmesg and /var/log/snmpd.log for any bad news.

8. Start receiving SNMP traps

On the management node, open a window and run the command to begin to receive SNMP traps: /usr/sbin/snmptrapd -Lo -t -f.

9. Enable the GPFS SNMP sub-agent

On any node in the GPFS cluster, turn on the GPFS SNMP sub-agent: mmchnode --snmp-agent -N [COLLECTOR-NODE].

10. Verify that the sub-agent is running

On the collector node, verify that the GPFS SNMP sub-agent is running: ps -ef | grep mmsnmpagentd.

If you don't see it running, make sure GPFS is running, make sure snmpd is running, and check /var/adm/ras/mmfs.log.latest for any diagnostic messages.

11. See if you caught anything in your trap

On the management node, see if the GPFS-MIB::gpfsNewConnectionTrap trap was caught (it takes about 20 seconds for the sub-agent to collect its initial information).

12. Query the collector node for GPFS SNMP info

On the management node, query the collector node for GPFS SNMP info: snmpwalk -t 10 -r 10 -c public [COLLECTOR-NODE] ibmGPFS.

Verify that the information is correct; typical results are shown below.


The following samples demonstrate what you should see. Listing 1 shows output for a typical trap capture with snmptrapd; Listing 2 shows typical GPFS cluster information gathered from snmpwalk.

Listing 1. A typical trap capture with snmptrapd
NET-SNMP version 5.4
2007-10-26 13:29:40 <UNKNOWN> [UDP: []:56357]:
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (46843) 0:07:48.43
     SNMPv2-MIB::snmpTrapOID.0 = OID: GPFS-MIB::gpfsStgPoolUtilizationTrap
   GPFS-MIB::gpfsStgPoolFSName = STRING: "gpfs5"
   GPFS-MIB::gpfsStgPoolName = STRING: "system"
    GPFS-MIB::gpfsStgPoolUtil = Gauge32: 91
2007-10-26 13:31:16

Listing 2 shows typical GPFS cluster information gathered from snmpwalk.

Listing 2. Typical GPFS cluster information gathered from snmpwalk
GPFS-MIB::gpfsDiskData."gpfs4"."SP4gpfs1"."GPFSNSD20" = STRING: "y"
GPFS-MIB::gpfsDiskData."gpfs4"."SP4gpfs1"."GPFSNSD21" = STRING: "y"
GPFS-MIB::gpfsDiskData."gpfs4"."SP4gpfs1"."GPFSNSD22" = STRING: "y"
GPFS-MIB::gpfsDiskData."gpfs4"."SP4gpfs1"."GPFSNSD23" = STRING: "y"
GPFS-MIB::gpfsDiskData."gpfs5"."system"."GPFSNSD24" = STRING: "y"
GPFS-MIB::gpfsDiskData."gpfs5"."SP5gpfs1"."GPFSNSD30" = STRING: "y"
GPFS-MIB::gpfsDiskData."gpfsuser"."system"."GPFSNSD28" = STRING: "y"
GPFS-MIB::gpfsDiskData."gpfsuser"."SP5gpfs1"."GPFSNSD26" = STRING: "y"
GPFS-MIB::gpfsDiskData."gpfsuser"."SP5gpfs1"."GPFSNSD27" = STRING: "y"



Get products and technologies



developerWorks: Sign in

Required fields are indicated with an asterisk (*).

Need an IBM ID?
Forgot your IBM ID?

Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.


All information submitted is secure.

Dig deeper into Linux on developerWorks

ArticleTitle=SNMP-based monitoring for GPFS clusters