Chapter 4. Simple Network Management Protocol

The Simple Network Management Protocol (SNMP) is part of the Internet protocol suite, as defined by the Internet Engineering Task Force (IETF). The SNMP provides a means to monitor and manage network-attached devices. For general information about SNMP, see http://www.snmplink.org/.

This section describes SNMP agents specific to SGI systems and covers the following topics:

snmpd-a4700 SNMP Agent

snmpd-a4700(8) is the SGI SNMP agent for SGI Altix 450 and SGI Altix 4700 systems. It fetches configuration information, such as, blade information; for example, CPU serial numbers. It also fetches environmental information, such as, fan speed and voltage margins. The Management Information Base (MIB) file describes the data objects to be managed by an Agent within a device. You can view the contents of a MIB file in the /opt/sgi/snmpagents/mibs directory.

The snmpd-a4700 agent fetches the above information using l2cmd by contacting the appropriate L2 console attached to the system. The l2cmd is supplied with the RPM that contains the agent.

When the agent first starts, it collects configuration using the L2 console commands, blade and serial all. For environmental conditions, the L2 command env is used. For more information, see the SGI L1 and L2 Controller Software User's Guide available at http://docs.sgi.com. These operations are performed periodically; once a day for configuration information, once every 10 minutes for environmental information You can change these values using the snmpd-a4700 -C and -E options, respectively (see the snmpd-a4700(8) man page for more information).

Configuring the snmpd-a4700 Agent

This section describes how to configure the snmpd-a4700 agent so it can be used by the snmpd(8) daemon.

Procedure 4-1. Configuring the snmpd-a4700 Agent

    To configure the snmpd-a4700 agent to operate with the snmpd daemon, perform the following steps:

    1. Integrate the agent MIB.

      1. On a system running RHEL, modify or create the snmpd /etc/snmp/snmpd.options file. The easiest method is to make sure the following start-up parameters are defined:

        # Original option
        OPTIONS="-Lsd -Lf /dev/null -p /var/run/snmpd.pid -a"
        
        # Adding SGI agent
        OPTIONS="${OPTIONS} -M +/opt/sgi/snmpagents/mibs -m ALL"

      2. On a system running SLES, copy the /opt/sgi/snmpagents/mibs/sgi-a4700-smi.mib file to the /usr/share/snmp/mibs/ directory. Also, if not already done, the remaining /opt/sgi/snmpagents/mibs/ files should also be copied.

        Optionally, you can apply the same changes in the global /etc/snmp/snmp.conf file by adding the following two lines:

        mibs     ALL
        mibdirs         +/opt/sgi/snmpagents/mibs

    2. Configure agent configuration file.

      This is where the agent is actually called by snmpd(8) using the pass_persist protocol. Also this is where various monitored events are defined. The file itself contains configuration instructions.

      1. Copy (or append) /opt/sgi/snmpagents/etc/snmpd.a4700.conf to

        /opt/sgi/snmpagents/etc/snmpd.local.conf

        Do not edit the file directly as it can be replaced later with a RPM package update.

      2. The configuration file /opt/sgi/snmpagents/etc/snmpd.local.conf require the L2 console hostname (or IP address ) to be specified. Just substitute _a_l2_hostname_ with the appropriate value.

      3. You can change these values using the snmpd-a4700 -C and -E options, respectively (see the snmpd-a4700(8) man page for more information).

      4. Finally, if the previous update interval intervals have been changed or if it is desired to change the monitoring intervals, the "monitor -r 300" lines should be changed also.

    3. Integrate agent configuration file.

      1. On a RHEL system, modify or create the snmpd /etc/snmp/snmpd.options file and set the following environment variable:

        # Add SGI agent configurations
        OPTIONS="${OPTIONS} -c /opt/sgi/snmpagents/etc/snmpd.local.conf"
        

      2. On a SLES system, a properly substituted /opt/sgi/snmpa-gents/etc/snmpd.a4700.conf file should be appended to /etc/snmp/snmpd.local.conf.

    The sgi-snmpagent-a4700 RPM has the following RPM dependencies:

    lkSGI
    net-snmp
    sgi-snmpagent-mibs 
    ia32el 


    Note: Use the chkconfig (8) command to configure ia32el on.


    sgi-snmpagent-mibs MIBs

    The sgi-snmpagent-mibs Management Information Base (MIB) file contains all the common MIBs necessary to implement specific MIB for SGI SNMP agents. To integrate them into NET_SNMP snmpd MIB infrastructure, see snmp_config(5). For more information, see the sgi-snmpagent-mibs(8) man page.

    The sgi-snmpagent-mibs RPM has no RPM dependencies.

    snmpd-xe SNMP Agent

    snmpd-xe(8) is the SGI SNMP agent for Altix XE 250 systems (only).

    It fetches configuration information from the base management controller (BMC). It also fetches environmental information, such as, fan speed and voltage margins. For further details, please consult the MIB file that comes with the package.

    The agent also fetch information from the System Management BIOS (SMBIOS) records present in the system BIOS areas.

    The snmpd-xe agent fetches environmental information using the ipmitool(1) utility. Make sure that the ipmitool tool is configured on, as follows:

    # chkconfig ipmi on

    By default, unless specified by the command-line option -I, it uses -I open. The ipmitool(1) tool resides in /usr/bin. Also, because the -I open option is used, the /dev/ipmi0, normally is initiated by a /etc/init.d/ipmi start, and is expected to be present in order for ipmitool to work and communicate commands to the BMC.

    When the agent first starts, it collects configuration using the ipmitool utility by sending various commands to the BMC. These commands are, as follows:

    • bmc info

    • bmc getenables

    • chassis status

    • fru print

    • user summary

    • user list

    For environmental conditions, the ipmitool commands are, as follows:

    • chassis poh

    • sensor list

    The environmental operations are performed periodically, that is, once every day for configuration, once every ten minutes for environment. You can change this using command-line options -C and -E, respectively. The agent is normally not manually invoked. It is actually invoked by snmpd(8) via a configuration file. See “snmpd-xe SNMP Configuration”.

    The SMBIOS information is obtained by reading /dev/mem and walking every DMI type records found in the system. Below is the list of DMI record type not currently processed by the agent:

    5   Memory Controller Information ( obsoleted by record 16 )
    6    Memory Module Information ( obsoleted by record 17 )
    14   Group Associations
    15   System Event Log
    22   Portable Battery
    31   BIS entry point
    38   System Power Supply
    127  Inactive Records Information
    128  End of table
    129-255  OEM Records

    snmpd-xe SNMP Configuration

    This section describes how to configure the snmpd-xe agent so it can be used by the snmpd(8) daemon.

    Procedure 4-2. Configuring the snmpd-xe Agent

      To configure the snmpd-xe agent to operate with the snmpd daemon, perform the following steps:

      1. Integrate agent MIB.

        On a system running RHEL, modify or create the snmpd /etc/snmp/snmpd.options file. The easiest method is to make sure the following start-up parameters are defined:

        # Original option
        OPTIONS="-Lsd -Lf /dev/null -p /var/run/snmpd.pid -a"
        
        # Adding SGI agent
        OPTIONS="${OPTIONS} -M +/opt/sgi/snmpagents/mibs -m ALL"

        On a system running SLES, the /opt/sgi/snmpagents/mibs/sgi-xe-smi.mib should be copied to /usr/share/snmp/mibs/ directory. Also, if not already done, the remaining /opt/sgi/snmpagents/mibs/ files should also be copied.

        Optionally, apply the same changes in the global /etc/snmp/snmp.conf file by adding the following two lines:

        mibs     ALL
        mibdirs         +/opt/sgi/snmpagents/mibs

      2. Configure agent configuration file.

        This is where the agent is actually called by snmpd(8) using the pass_persist protocol. Also, this is where various monitored events are defined. The file itself contains configuration instructions.

        1. Copy (or append) /opt/sgi/snmpagents/etc/snmpd.xe.conf to

          /opt/sgi/snmpagents/etc/snmpd.local.conf

          Do not edit the file directly as it can be replaced later with a RPM package update.

        2. The configuration file /opt/sgi/snmpagents/etc/snmpd.local.conf may be edited if the default update interval need to be changed.

        3. Finally, if the previous update interval intervals have been changed or if it is desired to change the monitoring intervals, the "monitor -r 300" lines should be changed also.

      3. Integrate agent configuration file.

        1. On a RHEL system, modify or create the snmpd /etc/snmp/snmpd.options file and set the following environment variable:

          # Add SGI agent configurations
          OPTIONS="${OPTIONS} -c /opt/sgi/snmpagents/etc/snmpd.local.conf"
          

        2. On a SLES system, a properly substituted /opt/sgi/snmpa-gents/etc/snmpd.xe.conf file should be appended to /etc/snmp/snmpd.local.conf.

      The snmpd-xe RPM has the following RPM dependencies:

      lkSGI
      net-snmp
      sgi-snmpagent-mibs
      OpenIPMI
      /usr/bin/ipmitool