SNMP Network 6.1-1

Description

Monitors any network device using SNMP. A set of services issues an SNMP GET command to get interface operational status (ifoperstatus), interface input and output utilization, and interface in/out and error/discard statistics for interface 1. This profile can be extended to monitor additional interfaces or other SNMP parameters.

Profile Package

This package includes the following files:

  • Profile definitions: host-profile-snmp-network.xml and service-profile-snmp-network.xml

  • Plugin scripts (installed on the GroundWork server): check_snmp and check_ifoperstatus

  • Discovery script for Network Interfaces: discover_snmp_if.pl

Installation

GroundWork Monitor includes many monitoring profiles for a variety of devices, systems and applications. Some profiles are pre-imported on a new GroundWork installation and others are distributed with the product. The configuration tool is used to import updated profiles and profiles that require additional setup, services can also be imported, see Importing Profiles.

Implementation Notes

  1. Execute the script discover_snmp_if.pl (list of network device IP addresses, space separated).
  2. Copy the output file discover_snmp_if.out to the import directory, which is typically: /usr/local/groundwork/import/csv/
  3. Log on to GroundWork Monitor as an Administrator, select Profile Tools, then Import.
  4. Select the Host Profile host_profile_snmp_network from the drop-down box.
  5. Select the import CSV file: discover_snmp_if.out
  6. Select Show Services and follow the procedures on the new page to import the file into Configuration (Configuration).

If this device has multiple interfaces you can use the following steps to define additional interfaces on a device:

  1. Select Services from the Configuration menu options.
  2. Create new Services for snmp_if and snmp_bandwidth for each interface (i.e. snmp_if_2, snmp_if_3,...).
  3. Modify the Check Command arguments to reference the interface number.
  4. Save each Service, and go to Profiles where you will add the Services and re-apply the Service Profile to the Host using the Apply tab.

Services Configuration

For plugin details you can run the service help command from within the nagios container. For example: Get to the nagios container from the gw8 directory: docker-compose exec -u 1000 nagios bash, then to the libexec directory: cd /usr/local/nagios/libexec, and enter a service help command e.g., ./check_snmp --help to receive help content.

Service/Command Line/Plugin CommandCommand Parameters

This column lists the Service Definition name, Service Command name with arguments to be passed to the plugin, and the Plugin Command line which is the plugin script called by Nagios for the service.

Command parameters are in the configuration services section with the following names and default values.

  • snmp_alive

  • check_snmp_alive

  • $USER1$/check_snmp -H $HOSTADDRESS$ -o .1.3.6.1.2.1.1.5.0 -l "sysName is " -C '$USER7$'

Check status of remote machines and obtain system information via SNMP.No arguments.

  • snmp_if_1

  • check_snmp_if!1

  • $USER1$/check_snmp -H $HOSTADDRESS$ -C '$USER7$' -o "IF-MIB::ifInOctets.$ARG1$,IF-MIB::ifOutOctets.$ARG1$,IF-MIB::ifInDiscards.$ARG1$,IF-MIB::ifOutDiscards.$ARG1$,IF-MIB::ifInErrors.$ARG1$,IF-MIB::ifOutErrors.$ARG1$"

  • $ARG1$: The SNMP ifIndex value, defaults to 1, first interface

  • $USER7$: SNMP Read Community String

  • snmp_if_bandwidth_1

  • check_snmp_bandwidth!1

  • $USER1$/check_snmp -H $HOSTADDRESS$ -C '$USER7$' -o" IF-MIB::ifInOctets.$ARG1$,IF-MIB::ifOutOctets.$ARG1$,IF-MIB::ifSpeed.$ARG1$"

  • $ARG1$: The SNMP ifIndex value, defaults to 1, first interface

  • snmp_ifoperstatus_1

  • check_ifoperstatus!1

  • $USER1$/check_ifoperstatus -k "$ARG1$" -H $HOSTADDRESS$ -C "$USER7$"

  • $ARG1$: The SNMP ifIndex value, defaults to 1, first interface

  • snmp_uptime

  • check_snmp_uptime!800:!900:

  • $USER1$/check_snmp -H $HOSTADDRESS$ -o .1.3.6.1.2.1.1.3.0 -l "sysUptime is " -C '$USER7$' -w $ARG1$ -c $ARG2$

Check for uptime as a dependency for SNMP access.

  • $USER7$: SNMP Community string

  • $ARG1$: Warning threshold, default is 800

  • $ARG2$: Critical threshold, default is 900

  • udp_snmp

  • check_snmp_alive

  • $USER1$/check_snmp -H $HOSTADDRESS$ -o .1.3.6.1.2.1.1.3.0 -l "Uptime is " -C '$USER7$'

  • No arguments.

Related Resources