Administrator's Guide

APPENDIX B

SNMP Agent

This appendix describes how you can set up and test SNMP to monitor the Novell exteNd Application Server. It has these sections:

 
Top of page

About SNMP

SNMP (Simple Network Management Protocol) is a protocol used to remotely manage and control nodes on a TCP/IP network. Using SNMP, one workstation running management software can monitor information being collected by routers, servers, and other workstations on the system. This information is used to determine the performance integrity of the network.

NOTE:   The SNMP implementation currently runs on the Windows NT and Windows 2000 platforms only. It does not allow the SNMP service to control the application server.

 
Top of page

SNMP implementation overview

The application server implements SNMP using the following components:

Component

Description

snmp_options.props

File that defines the following settings used by the AgSNMPGetStats servlet:

  • StatisticsUpdateInterval—Number of seconds to wait before updating the statistics file. Default is 120.

  • WriteStatisticsEnabled—Whether to write server statistics and the update interval to AgSNMP.props; 0 for false, 1 for true. Default is 1.

  • StatisticsDebug—Whether to send debugging messages to the server console; 0 for false, 1 for true. Default is 0.

The file is located in server's \Resources directory.

AgSNMPGetStats servlet

A load_on_startup servlet that must be deployed to the SilverMaster database. It is responsible for updating application server statistics in the AgSNMP.props file.

AgSNMP.props

File that the AgSNMPGetStats servlet writes the server statistics to at the interval specified in snmp_options.props. (WriteStatisticsEnabled must be set to 1 in snmp_options.props for the statistics to be written.)

The file is located in server's \Resources directory.

SNMP extension agent (AgSNMP50.dll)

Implements the Windows NT SNMP Application Program Interface (API). The SNMP extension agent reads the application server statistical information from AgSNMP.props.

For more information    For a list of statistics and object identifiers, see Setting up access from your SNMP Management node.

 
Top of section

How the components work

An application server load_on_startup servlet (AgSNMPGetStats) updates the AgSNMP.props file at a scheduled interval. When the servlet is loaded, the init() method fires. This method:

  1. Gets registry information from the application server to determine the server's installation path.

  2. Reads the snmp_options.props file in the server's \Resources directory. This file contains settings such as where to print debugging messages as well as the statistics update interval.

  3. Starts a timer task (that runs every minute) to check whether the file update interval in the snmp_options.props file has changed.

  4. Starts a timer task that runs on the specified file update interval to build the statistics data and write it to the AgSNMP.props file in the server's \Resources directory.

On an SNMP GET request, if the update interval has elapsed, the extension agent updates the MIB data by accessing the registry to get the server's path and reading the AgSNMP.props file in the server's \Resources directory. Otherwise, it returns the value that was stored the last time the file was read. If the timestamp in the file is not updated within the given interval, the Server Responding status is set to false—indicating a possible problem with the application server.

NOTE:   The extension agent does not use a timer to determine whether the update interval has changed. If the interval is decreased by a substantial amount, it can give a false Server Responding status. When the interval value is decreased, you should stop and restart the SNMP service.

 
Top of section

Process flow and terminology

The following terms (shown in the following figure) are used in an SNMP-enabled architecture:

Term

Description

Management node

The workstation or server running one or more network management processes. These processes are usually software applications that gather information from the managed nodes, or SNMP agents. Examples of management node software include Unicenter TNG from Computer Associates, OpenView from Hewlett-Packard, and Tivoli from IBM.

Managed Information Bases (MIBs)

The hierarchical map of all managed objects and how they are accessed.

Managed objects (MIB objects or variables)

The collection of objects that describe the SNMP managed node to the management node. This data is defined with a specific set of attributes that are manipulated using the standard SNMP operations Get, GetNext, and Set.

Object identifier (OID)

A unique identifier for a MIB variable. An OID is the location of a managed object within a MIB namespace. The OID of a MIB object is also referred to as the object's identity or registration.

SNMP agent

Software or firmware that runs as one or more processes on a managed server. The SNMP agent provides management services by collecting and returning management information requested by the management node. An SNMP agent can be read-only, or it may allow the management node to control or alter the node it is managing. An SNMP agent may also generate traps, which are unrequested notifications of events.

Extension agent (Subagent)

A DLL that implements a set of registered managed objects defined in a MIB module and communicates with the SNMP service using the SNMP API.

The following figure shows how the components work within the SNMP framework:

SNMPframework

 
Top of page

Setting up SNMP for the application server

Setting up SNMP as a service involves the following basic steps:

  1. Installing the SNMP software as a service

  2. Installing the application server

  3. Deploying the AgSNMPGetStats servlet

  4. Testing the SNMP program

 
Top of section

Installing SNMP as a service

If you are installing the SNMP software service on a machine that is currently running the application server, you need to first stop the application server.

For more information    For more information about installing SNMP as a service, see your operating system documentation.

 
Top of section

Installing the application server

If you haven't yet installed the application server, use the installation program to install it on the machine to be managed. If you choose to reinstall the application server, you must first stop the SNMP service; otherwise, the install program will not be able to write over the AgSNMP50.dll file.

The server's installation program takes care of the required registry key entries and places the agent in the correct location. The required registry entries are as follows:

Item

What to specify

Key

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ExtensionAgents

Name

  AgversionSNMP

Value

  Novell\eXtend\AppServer\version\SNMP\ExtensionAgents\AgSNMPAgent\CurrentVersion

Key

  HKEY_LOCAL_MACHINE\SOFTWARE\Novell\eXtend\AppServer\version\SNMP\ExtensionAgents\AgSNMPAgent\CurrentVersion

Name

  Pathname

Value

  server's \bin\AgSNMPversion.dll

 
Top of section

Deploying the AgSNMPGetStats servlet

A number of files are provided to build and deploy the AgSNMPGetStats servlet. They are located in the server's servertools\snmp directory:

File

File name(s)

A readily deployable EAR file

SilverGetStats.ear

A batch file to deploy the EAR to the SilverMaster

deploySilverGetStats.bat

A batch file to undeploy the EAR from the SilverMaster

deleteSilverGetStats.bat

A deployment plan

SilverGetStats_depl_plan.xml)

Project files to build the WAR and EAR files

SilverGetStatsWar.spf

SilverGetStatsEar.spf

Source files to build the WAR and EAR files

To deploy the EAR, run the deploySilverGetStats.bat file, passing the server name and the SilverMaster name.

You can also rebuild the EAR and deploy it using the project files provided.

 
Top of section

Testing the program

The application server provides a tool that allows you to test the SNMP installation from a DOS prompt.

Procedure To test the SNMP extension agent:

  1. Stop and restart the SNMP Service.

  2. Open a DOS window.

  3. Change to the server's \bin directory.

  4. Run the batch file SilverSNMPGetStats.bat, passing the server name and SNMP parameter name. To get a list of available parameters, type:

      SilverSNMPGetStats -?
    

 
Top of page

Setting up access from your SNMP Management node

The Object Identifier is composed of an enterprise ID and the OID identifying each MIB. You will need the following information to set up access to the application server's OIDs from your SNMP Management node:

Item

Description

Private Enterprise ID

A unique number assigned to a company. The server's private enterprise ID is 3068.

Object Identifier (OID)

The server's host name OID is 1.3.6.1.4.1.3068.1.7.7.1.0.

The following are the application server's OIDs. When accessing MIB data using SNMPTool.exe, you must precede the OID with a period:

Statistic description

OID

Data type

Host Name OID

1.3.6.1.4.1.3068.1.7.7.1.0

OCTET STRING

Server Revision OID

1.3.6.1.4.1.3068.1.7.7.2.0

Server Start Time OID

1.3.6.1.4.1.3068.1.7.7.3.0

Data Time Snapshot OID

1.3.6.1.4.1.3068.1.7.7.4.0

Maximum Requested URL OID

1.3.6.1.4.1.3068.1.7.7.5.0

Minimum Requested URL OID

1.3.6.1.4.1.3068.1.7.7.6.0

Server Load OID

1.3.6.1.4.1.3068.1.7.7.7.0

INTEGER

Free Thread Count OID

1.3.6.1.4.1.3068.1.7.7.8.0

Idle Thread Count OID

1.3.6.1.4.1.3068.1.7.7.9.0

Total Thread Count OID

1.3.6.1.4.1.3068.1.7.7.10.0

Hit Count OID

1.3.6.1.4.1.3068.1.7.7.11.0

Mean Request Time OID

1.3.6.1.4.1.3068.1.7.7.12.0

Max Request Time OID

1.3.6.1.4.1.3068.1.7.7.13.0

Min Request Time OID

1.3.6.1.4.1.3068.1.7.7.14.0

Emitted Bytes OID

1.3.6.1.4.1.3068.1.7.7.15.0

Free Memory OID

1.3.6.1.4.1.3068.1.7.7.16.0

Counter

Total Memory OID

1.3.6.1.4.1.3068.1.7.7.17.0

Garbage Collection Count OID

1.3.6.1.4.1.3068.1.7.7.18.0

Idle Sessions OID

1.3.6.1.4.1.3068.1.7.7.19.0

INTEGER

Total Sessions OID

1.3.6.1.4.1.3068.1.7.7.20.0

Server Responding OID

1.3.6.1.4.1.3068.1.7.7.21.0

OCTET STRING



Copyright © 2003 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved.  more ...