Chapter 4. Simple Network Management Protocol
Prev |  | Next

## 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 the `snmpd-uv(8)` agent which is the SGI SNMP agent for Altix UV 100 and 1000 series systems. The `snmpd-uv(8)` agent is only available on the System Management Node (SMN) node.

## SNMP Agent Overview

The `snmpd-uv(8)` agent fetches configuration information from the System Controller (SYSCO) network attached to the System Management Node (SMN). The SYSCO network contains all the Chassis Management Controller (CMC) and Base Management Controller (BMC) and accessories, such as, the I/O expansion chassis.

The `snmpd-uv(8)` agent supports multiple Altix UV systems attached to the SMN.

The `snmpd-uv(8)` retrieves information stored in a MySQL database by translating SNMP `pass_persist GET` and `GETNEXT` `OID` requests into equivalent MySQL SELECT queries on appropriate tables corresponding to those defined in the Altix UV SNMP.

The `snmpd-uv(8)` agent does not perform data gathering or MySQL tables update operations. Instead, two additional services are used in tandem to perform the following:

- Data gathering

  A system daemon, called `uv_gather`, collects information from the SYSCO network attached to the SMN. After parsing the data in a readable format, it pushes the data to another system daemon, `uv_db`, to perform MySQL updates.

- MySQL Tables updates

  A system daemon, `uv_db`, is responsible for receiving data from `uv_gather` and performs appropriate MySQL tables update.

Since the `snmpd-uv(8)` agent does not perform data gathering, it is important to make sure the `uv_gather` and `uv_db` services are enabled in order to get up-to-date information from the periodically updated MySQL Altix UV database. The `uv_gather` and `uv_db` services are normally setup to start at boot time.

The SNMP Agent companion services maintain information of all the Altix UV nodes attached to the SMN. They also fetch environmental information, such as, fan speed and voltage margins. For further details, please consult the management information base (MIB) file that comes with the package.

The `snmpd-uv(8)` agent can also send trap if the configuration file contains `trapsink` or `trapsink2` directives.

| Note: The current version of the agent does not yet support sending traps. This functionality will be offered in future updated version of the agent. Instead, the user can still use the `NET-SNMP` `DISMAN` `Net-SNMP` standard embedded sub-agent facilities to perform various trap configuration. Normally, the `snmpd-uv(8)` agent is not manually invoked. It is actually invoked by `snmpd`(8) daemon via a configuration file. See “SNMP Configuration”.

## SNMP Configuration

In order to integrate the `snmpd-uv` agent into `snmpd`, two configuration methods are available, as follows:

- “Automatic Configuration Using uv_snmpconfig”

- “ Manual Configuration ”

### Automatic Configuration Using `uv_snmpconfig`

This is the easiest and recommended method. The `uv_snmpconfig` command performs all the configuration steps explained in the manual configuration section below. It also offers an option to test the configuration consisting in verifying:

- MIB translation of Object Identifiers (OIDs) using `snmptranslate`.

- The SNMP agent can `snmpwalk` the entire `uv` SNMP agent SQL database

- Basic and configured (if relevant) traps are captured.

Run `uv_snmpconfig -h` on the SMN for help and command-line options, as follows:

    uv41-smn:~ # uv_snmpconfig -h
    Jan 3 12:03:00 ----- uv_snmpconfig NOTICE: SNMPCONFIG mode. INSTANCE=uv
    Usage: uv_snmpconfig [-hfctr] args

            Configure SNMP, test and restore configuration files
            depending on command-line flags:

            -h                This help message
            -f                Overwrite configuration files
            -c                Configure SNMP
            -t                Test SNMP
            -r                Restore configuration files if '-c' is used.

            Agent            Args
            --------------------------------------------------------------
            a4700           l2:IP addresss or hostname
            xe
            xe_cluster      pm|tempo|isle|file config_file
            uv

| Note: The utility will not overwrite already installed SNMP configuration files unless the command-line option `-f` (force) is used. However, in most cases, although the utility backs up files before overwriting them (when `-f` is used ), it is recommended to make a copy of the configuration files before proceeding. `uv_snmpconfig` is a generic script for all the agents supported by SGI.

### Manual Configuration

To manually configure the SNMP agent, three steps are required, as follows:

1. Integrate the agent MIB.

   On RHEL, modify or create the `snmpd` `/etc/snmp/snmpd.options` file. The easiest 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 SLES, the `/opt/sgi/snmpagents/mibs/sgi-uv-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.

3. 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.

   Copy or append `/opt/sgi/snmpagents/etc/snmpd.uv.conf` to `/opt/sgi/snmpagents/etc/snmpd.local.conf`. Do NOT edit the file directly as it can be replaced later by an RPM package update.

   Finally, if `NET-SNMP` `DISMAN` facilities are used and you want to change monitoring intervals, the `monitor -r 300` lines should be changed.

   You also have to specify the `-c /opt/sgi/snmpagents/etc/uv.conf` file for use by agent itself. A template file `/opt/sgi/snmpagents/etc/uv.conf.template` contains instructions on how to configure this file.

4. Integrate agent configuration file.

   On RHEL, modify or create `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"

   On SLES, a properly substituted `/opt/sgi/snmpagents/etc/snmpd.uv.conf` file should be appended to the `/etc/snmp/snmpd.local.conf` file.

Prev | Table of Contents | Next
Chapter 3. System Configuration from the SMN |  | Index