Oracle SNMP Support
Oracle SNMP Support
Towards Pro-Active Database Management
The Rise of SNMP
Since its introduction in the late 1980's, the Simple Network Management
Protocol (SNMP) has gained significant popularity with both hardware and
software vendors and has emerged as the de facto standard for the communication
of management information. In the last year and a half, leading RDBMS vendors
have joined to define a standard way in which to use SNMP to manage relational
databases, producing a standard Management Information Base (MIB)
that applies to all relational database.
This effort is significant for several reasons. For one thing, the Working
Group's effort is one of the first to acknowledge the potential of SNMP
for managing software applications in addition to hardware devices
and operating systems. But more important, showing unusual foresight and
concern for their users, the vendors intentionally defined one standard
MIB rather than multiple, individual, proprietary (and likely conflicting)
MIBs. Thus, database administrators and other system managers can realistically
expect to benefit from the new standard RDBMS MIB relatively soon and easily,
no matter which databases they manage.
This white paper describes basic SNMP concepts and how Oracle Corporation
adds SNMP support to its products, including the Oracle7 Server. It describes
how SNMP will assist database administrators and includes examples of a
demonstration Oracle SNMP management application.
You will get the most out of this white paper if you have little to
no previous knowledge of SNMP, but are familiar with the range of situations
and problems for which database administrators are responsible.
Basic SNMP Concepts
With a grasp of just a few concepts, you can understand the implementation
and benefits of SNMP when used with relational databases. The diagram shows
the various components of a management system. These components are then
briefly described. For more information regarding SNMP than is provided
here, you are referred to the bibliography at the end of this white paper
(See references 5, 6 and 7).
SNMP is the Protocol for Conveying Management Information
SNMP is one of the Internet suite of protocols. Each of these protocols
(i.e., TCP/IP, FTP, and UDP) is defined for a particular purpose. For example,
FTP is defined specifically for file transfers. Quite literally, SNMP is
a protocol used to convey management information between two network nodes.
(A given network node is usually considered to be either a managing
node or a managed node. In fact, a node can be both.)
As a protocol, SNMP simply defines how the information is conveyed
-- how the communications are initiated, structured, and handled. SNMP
does not define and interpret any specific management information itself;
it just conveys information that is defined and formatted in accordance
with SNMP standards.
MIBs Define the Management Information
A Management Information Base (MIB) is a hierarchical structure that describes
the management information intended to be conveyed over SNMP (see reference
10). A MIB defines a set of management variables or objects that can be
used to characterize the status and activity of a given device or application.
For example, a different MIB applies to a printer than to an RDBMS. All
SNMP communications refer to one or more MIB objects; what is transmitted
over SNMP is, essentially, one or more MIB objects and their values.
A MIB is written using a precise syntax (called SMI for Stuctured Management
Information). Each object is identified by a name and an Object ID (OID),
and has a data type and access rights. For example, the object sysContact
identified by the OID 1.3.6.1.2.1.1.4 is a read-write string that contains
contact information about the administrator of a particular system. A MIB
may contain as few as a handful of objects to thousands of objects.
Standard and Enterprise MIBs
In fact, all MIBs are really a part of one global MIB tree, as shown in
Figure 2.
All objects contained under the mgmt branch are considered standard
and are tightly regulated by the Internet Engineering Task Force (IETF).
For example, the standard RDBMS MIB in the mgmt branch is supported by
all relational database servers that claim to be SNMP-enabled. Standard
MIBs are also often called public MIBs.
Over 1000 vendors, including Oracle, have added their own MIB objects
under the private branch, in order to increase the manageability of their
products. For example, MIBs specific to Oracle services are found under
the private.enterprise.oracle branch. These MIBs are variously referred
to as private, proprietary, or enterprise MIBs. In fact, as shown, Oracle
has defined MIBs for multiple Oracle products, of which the private Oracle7
Server MIB is only one (see references 1, 2 and 3).
The Standard RDBMS MIB
In late 1993 several database vendors, led by Oracle, agreed to cooperate
to define a standard MIB for relational databases (one in which the management
objects are independent of vendor). The resulting IETF Working Group agreed
that the purpose of the proposed standard MIB is to identify and characterize
an RDBMS. The MIB was approved as a proposed standard in July
1994 and is identified as RFC 1697. The MIB must pass through two additional
phases in order to be considered a full standard (Proposed Standard - Draft
Standard - Standard). However, in the meantime, widespread use is encouraged
to test and prove the value of the MIB.
The diagram above shows a sampling of some of the objects in the RDBMS
standard MIB along with some of the objects in the Oracle enterprise database
MIB. For a complete listing of the MIB objects, see references 1 or 2.
SNMP Components on the Managing Node
A typical managing node contains (or has access to) several components
as shown in the diagram below.
Managing nodes (also called management stations or consoles) run a software
package called a management platform (or framework). All SNMP traffic to
and from the management station is handled by the management platform.
For example, HP's OpenView is a management platform supporting a broad
portfolio of management applications. Other management platforms include:
-
IBM's NetView/6000
-
SunSoft's Solstice and SunNet Manager
-
Digital Equipment Corporation's POLYCENTER/NetView
-
Novell's Network Management System (NMS)
-
Bull's Integrated System Management (ISM)
-
Cabletron's Spectrum
-
Castle Rock's SNMPc Network Manager
>
Management Applications are optional, add-in software packages that
operate within a management platform and concentrate on management of a
particular network service. One example of a management application is
the Oracle Monitoring Application, shjown above. This is a demonstration
application provided by Oracle that works with various platforms and discovers
and monitors distributed Oracle database environments.
The management platform stores historical SNMP data in a repository
(MIBs do not contain actual data). Historical data collected via SNMP is
clearly useful for many purposes, including capacity planning, resource
utilization, inventory, accounting, and all sorts of reporting. Repositories
can be in any format, including relational or hierarchical databases or
flat files. Many management platforms offer an Oracle database as one option
for the repository. What type of repository is in use is totally independent
of Oracle's support of SNMP.
SNMP Components on the Managed Nodes
Nodes that are managed via SNMP require certain components as shown in
the diagram below.
Obviously, the node supports one or more services to be monitored via
SNMP. Managed nodes can be single-purpose, such as a printer or
router (and therefore support only a single MIB). Often, however, a managed
node is a CPU running numerous manageable services or applications (and
therefore supporting multiple MIBs - for the O/S and each of the other
managed services).
Each managed service has one or more associated MIBs that contain the
management objects applicable to that service. For example, an Oracle7
Server can be monitored using two complementary MIBs: the standard RDBMS
MIB and the Oracle Enterprise RDBMS MIB.
Every physical node must have an SNMP agent. The agent coordinates all
SNMP communications to and from the management platform (SNMP queries and
responses), on behalf of the node and performs the following SNMP functions:
-
listens for requests at the well-known address.
-
decodes incoming requests
-
multiplexes SNMP traffic to all available subagents
-
encodes outgoing replies and traps
If there are multiple managed services on the managed node, then each application
requires a subagent, and a master agent coordinates SNMP communications
to all the subagents. In this case, the master agent must be extensible
(such that subagents can register their MIB with the master agent
as their applications are started).
SNMP agents are often provided along with the operating system. However,
not all agents shipped with operating systems are extensible, so Oracle
provides an extensible master agent licensed from PEER Networks, Inc.,
where a suitable agent is not available from the operating system of a
specific machine.
SNMP Operations between Managing and Managed Nodes
There are three types of communications supported by SNMP.
The SNMP Poll is the most common SNMP transaction and originates at
the manager node. A management application requests management information
about a particular managed service. The application transmits this request
to the managed node using the SNMP support provided by the management platform.
The SNMP agent running on the targeted node receives the request, obtains
the answer and sends it back to the manager. The SNMP Set is similar to
the poll, but instead of requesting the current value of a variable, it
sets a new value to a variable.
Unlike the poll and set operations, the SNMP Trap is initiated at the
managed node, without a previous solicitation by the manager. It is typically
used as a notification of the occurrence of an exceptional event.
Traps are received on the manager side by a daemon listening for them that
is typically part of the management framework. The trap reception daemon
then forwards the trap messages to all interested management applications.
How Will SNMP Benefit database administrators?
Now that you have a feel for the components relating to SNMP and interactions
between them, you may still wonder exactly what benefits SNMP offers an
Oracle database administrator. What new capabilities does it provide and
what operations does it simplify?
SNMP integrates database administration into numerous, widely used
management tools. Now any manager (database administrator, system manager,
network manager) can view the status of Oracle databases simultaneously
on screen with the status of network nodes, network links, routers, servers,
etc. database administrators and network managers can work together, using
the same tools, to identify and resolve problems that overlap and have
typically been difficult to diagnose.
SNMP-based management tools are numerous, powerful, and flexible.
Most management tools currently based on SNMP take advantage of intuitive,
graphical interfaces. Managers can display windows and control panels,
combining graphic elements such as gauges, dials, charts, and graphs. Various
maps and views of data can be drawn, scaled and redrawn in realtime, and
other applications called at the touch of a button. And the number of such
applications is constantly growing, because SNMP is both simple and open.
SNMP centralizes management of decentralized services. One central
management workstation can be used to monitor any number or view of remote
databases. This has several benefits such as more efficient utilization
of database administrator resource (one central database administrator
instead of many remote database administrators), and potentially more consistent
management of distributed databases and network services.
SNMP is the open, de facto standard for management. Already widely
used, the growth of SNMP is accelerating. True to its name, it is simple
and easy to implement. Numerous third party management products based upon
SNMP are available and interoperable. Your investment in software and training
is leveraged across products, since SNMP is a proven and accepted standard.
SNMP allows proactive problem resolution. Many database administrators
have resigned themselves to responding to certain problems rather than
being able to anticipate and head off the problem. A distinct benefit of
SNMP is that it acts as a constant monitor of Oracle services, such that
if and when any exceptional condition occurs, you are notified and can
take corrective action. You can even define programmatic responses to events.
Applications for Oracle Monitoring using SNMP
As part of Oracle's SNMP support, Oracle has written a demonstration application
that works with various network management platforms. Using this application,
database administrators can take advantage of the following features:
-
locate (or discover), identify, and monitor Oracle databases, in realtime,
across networks of any size.
-
define various views or submaps that display custom groups of databases,
using standard Oracle icons
-
define, customize, and re-specify in realtime any number of graphic displays
to monitor performance and utilization
-
see, at a glance, the current status of Oracle databases and services
-
query the current value of any MIB object or combination of objects
-
set thresholds that can trigger alerts or programmatic responses to special
events
-
launch in context other management applications, such as Oracle Server
Manager, in order to respond directly to unanticipated events
-
monitor and record levels of activity to maintain historical data, useful
for reconstructing problems, periodic reporting, trend and performance
analysis.
It should be noted that the demonstration SNMP application provided by
Oracle is intended only for monitoring Oracle services, not for managing
them. That is, it cannot be used to update or write Oracle startup parameters
but only to query or read current values. While the demonstration SNMP
application is excellent for verifying normal operations and spotting and
reacting to potential problems, other tools, such as Oracle Server Manager,
must be used for in depth problem investigation or taking corrective action.
The diagram below depicts several features provided by Oracle's demonstration
SNMP application when used with HP OpenView.
In the upper left corner is a customized map of a distributed Oracle
network showing five database servers running on three nodes. You may be
able to see that database NMS is a different color (actually red) signifying
a possible problem. The pull down menu shows various categories of information
that can be viewed (Init Parameters, Instance, Storage, Users, and Schema).
In the upper right corner are two separate instances of Oracle Server
Manager running -- one showing tablespace information for database V713,
and the other displaying user information for database TPC_B. These illustrate
how an application such as Oracle Server Manager can be launched in context
based upon information captured by SNMP. In this case, the V713 tablespace
FILLDISK has nearly filled its space allocation. When it does hit the prespecified
threshold (probably 95%), Oracle Server Manager will launch in context,
automatically displaying a window to add space to that tablespace. The
database administrator can choose to continue or cancel out of the window.
These displays originate from various sources and can be re-scaled or
re-displayed to show more data. Standard Oracle icons for various Oracle
products appear in the map.
The Oracle Commitment to SNMP
With respect to providing SNMP support across Oracle products and on the
various operating systems on which Oracle products run, Oracle has several
goals.
Oracle is providing MIBs for key Oracle products. MIBs are currently
available for:
-
Oracle7 Server (supports both the proposed standard MIB and Oracle's enterprise
extensions)
-
Oracle Network Listener
-
Oracle Names
-
Oracle MultiProtocol Interchange
-
Oracle Mobile Agents
-
Oracle Media Server
MIBs will be released on a product-by-product schedule, and not all products
will have a MIB or subagent.
Oracle also provides a basic SNMP demonstration application for the
popular management platforms and provides a CDROM of SNMP solutions for
all users of the Oracle7 server.
Oracle is working closely with third parties via Oracle's Business Alliance
Programme (BAP) and Systems Management Tools Initiative (SMTI) to specify,
develop, test, distribute, and market new Oracle management products and
features. The SNMP Software Development Kit (SDK) is available specifically
for these partners (Reference 4.)
Implications of SNMP V2
One of the biggest questions about SNMP is how soon, and indeed whether,
management platforms and applications will support SNMPv2. SNMPv2 addresses
a number of weaknesses currently acknowledged in v1, notably security.
In fact, the lack of security in v1 is the main reason that the RDBMS Working
Group agreed to keep the RDBMS MIB read only. In SNMPv2 security is greatly
enhanced; security modes can be set on a per-transaction basis, and MD5
authentication and DES privacy are defined.
Other notable features of SNMPv2 are a new GET BULK operator to improve
performance and the manager-to-manager MIB that supports hierarchical management
stations and reduces network traffic.
In spite of these new features, vendors have been very slow to migrate
to SNMPv2. It is reasonable to expect that the push to extend the scope
of SNMP to applications and managing as well as monitoring will accelerate
the demand for SNMPv2.
Summary
The benefits of SNMP can be extended to software applications, and the
leading RDBMS vendors, by defining a standard RDBMS MIB, have agreed on
the value of SNMP. SNMP offers Oracle database administrators significant
benefits with respect to monitoring distributed Oracle environments:
-
A wealth of powerful network management tools can readily incorporate MIBs
as Oracle makes them available. Starting now with the two MIBs for relational
databases, the proposed standard and the Oracle enterprise MIB, Oracle
database administrators can begin right now to integrate their management
functions with those of network managers. Problems that previously fell
between the cracks can more easily be diagnosed.
-
Using the monitoring, reporting, and exception handling features of their
management platform of choice, database administrators can take a more
proactive role in database administration, as well as automate several
tasks.
-
Database administrator resources can be centralized and made more consistent
, especially across geographically dispersed database environments.
-
Because SNMP is an open standard, any third party can add Oracle administration
to an SNMP-based tool. Oracle is committed to leveraging the benefits of
SNMP while working closely with third parties to develop new management
options for Oracle products.
Bibliography
Oracle Publications
1. Oracle SNMP Support Reference Guide; Part No. A32324.
2. Oracle7 Database Server SNMP MIB Quick Reference Card, Part No. A33144.
3. Oracle SQL*Net Services SNMP MIB Reference Card; Part No. A33145.
4. Oracle SNMP Software Development Kit; Part No. A22084. (Includes
above parts.)
Trade Publications
5. The Simple Book - An Introduction to Internet Management; 2nd Edition;
Marshall T. Rose; Prentice Hall; 1994.
6. SNMP, SNMPv2, and CMIP - The Practical Guide to Network-Management
Standards; William Stallings; AddisonWesley; 1993.
7. Managing Internetworks with SNMP; Mark A. Miller; M & T Books;
1993.
RFCs
8. RFC 1697: D. Brower, R. Purvy, A. Daniels, M. Sinykin, J. Smith,
"Relational Database Management System (RDBMS) Management Information Base
(MIB) using SMIv2," August 1994
9. RFC 1157: J. D. Case, M. Fedo, M. L. Schoffstall and C. Davin, "Simple
Network Management Protocol (SNMP)," May 1990
10.RFC 1156: K. McCloghrie and M. T. Rose, "Management Information Base
for Network Management of TCP/IP-based Internets," May 1990
11. RFC 1227: M. T. Rose, "SNMP MUX Protocol and MIB," May 1991.
Shelly Dimmick-Willard & Dimitris Nakos, May 1995
Copyright (c) Oracle Corporation 1995
|