Simple Network Management Protocol agent
You can know in detail about Simple Network Management Protocol agent through the information provided here.
The Simple Network Management Protocol (SNMP) agent services request for monitoring the state of the directory server and issues traps to the Network Management Station. Using the IBM® Security Directory Integrator assembly line with the SNMP agent, the performance and wellness information of the directory server can be reported and monitored.The IBM Security Directory Integrator assembly line will collect and report performance and wellness information like monitor search, root DSE search, and system information of the directory server it is monitoring. Directory server performance information will be logged periodically and will be made available in Extensible Markup Language (XML) format.
- You must have IBM Security Directory Integrator, Version 7.1.1.4 or later installed to use the SNMP agent.
You also need to add a user to the directory and place ACLs on the suffixes of the directory, denying the user any permission to access the Data Information Tree (DIT) data. This user is created for performing monitor searches only and must exist across all monitored instances.
To monitor IBM Security Directory Server, you need to modify the properties and configuration files for the Simple Network Management Protocol (SNMP) agent.
Each directory server instance has a separate entry in the idssnmp.properties file. Configuration details will be unique for each directory server instance monitored by the idssnmp tool. This enables the idssnmp tool to monitor multiple directory server instances. A single instance of idssnmp tool that is launched will be able to monitor all the directory server instances mentioned in the idssnmp.properties file.
server: <IP_address>
port: <port_number>
isSSL: True/False
ldapbindDN: <bind_DN>
bindDNpwd: <bind_pwd>
systemuser: <user_ID>
systemuserpwd: <user_pwd>
filterCacheActive: True/False
filterCacheThreshold: <Threshold Value in percentage>
pendingRequestsActive: True/False
pendingRequestsThreshold: <Threshold Value>
pendingRequestsSinceLastIntervalActive: True/False
pendingRequestsSinceLastIntervalThreshold: <Threshold Value>
activeConnectionActive: True/False
activeConnectionThreshold: <Threshold Value>
memoryUtilizationActive: True/False
memoryUtilizationThreshold: <Threshold Value in kilobytes>
cpuUtilizationActive: True/False
cpuUtilizationThreshold: <Threshold Value in percentage>
diskSpaceUtilizationActive: True/False
diskSpaceUtilizationThreshold: <Threshold Value in kilobytes>
replicationPendingChangeCountActive: True/False
replicationPendingChangeCountThreshold: <Threshold Value>
replicationStatusActive: True/False
trapForMessageId-<log_type>: <GLP...>where: - server
- Represents the IP address of the monitored LDAP server.
- port
- Represents the port on which the monitored LDAP server is running.
- isSSL
- Indicates if the communication between the LDAP instance and the SNMP Agent is SSL encrypted.
- ldapbindDN
- Represents the bind DN.
- bindDNpwd
- Represents the bind password.
- systemuser
- Represents the system user ID.
- systemuserpwd
- Represents the system user password.
- filterCacheActive
- If set to true, then a trap alert is generated when the percentage of search filter cache used exceeds the threshold limit.
- filterCacheThreshold
- Specifies the threshold value in percentage.
- pendingRequestsActive
- If set to true, then a trap alert is generated when the difference between number of operations requested and the number of operations completed (pending requests) exceeds the threshold limit.
- pendingRequestsThreshold
- Specifies the threshold value.
- pendingRequestsSinceLastIntervalActive
- If set to true, then a trap alert is generated when the number of pending requests since the last interval exceeds the threshold limit.
- pendingRequestsSinceLastIntervalThreshold
- Specifies the threshold value.
- activeConnectionActive
- If set to true, then a trap alert is generated when the number of active connections exceed the threshold limit.
- activeConnectionThreshold
- Specifies the threshold value.
- memoryUtilizationActive
- If set to true, then a trap alert is generated when the maximum system memory utilization exceeds the threshold limit.
- memoryUtilizationThreshold
- Specifies the threshold value in kilobytes.
- cpuUtilizationActive
- If set to true, then a trap alert is generated when the Maximum CPU utilization exceeds the threshold limit. This is applicable only for non-windows operating systems.
- cpuUtilizationThreshold
- Specifies the threshold value in percentage.
- diskSpaceUtilizationActive
- If set to true, then a trap alert is generated when the disk space utilization by the directory where DB2® database is stored exceeds the threshold limit.
- diskSpaceUtilizationThreshold
- Specifies the threshold value in kilobytes.
- replicationPendingChangeCountActive
- If set to true, then a trap alert is generated when the replication queue reaches a predefined threshold, for instance if the queue grows larger than 10000 entries.
- replicationPendingChangeCountThreshold
- Specifies the threshold value.
- replicationStatusActive
- If set to true, then a trap alert is generated if the current state of replication is incompatible, server is down, authentication has failed, or down level server is not supported.
- trapForMessageId
- Represents a list of message identifiers. The list will be a “,”
separated list of message identifiers. An SNMP trap will be generated
in the event of a matching message identifier in the server log requested
through an ldap extended operation. The log type describes the type
of log required by the ldap extended operation. Each log type must
be mentioned separately. For instance:
- trapForMessageId-slapd:
- trapForMessageId-audit:
- trapForMessageId-ibmdiradm:
If you want to send traps for all the messages generated in the log file, you can specify one of the following options:- TRAP_MAX – This will send traps for all (Information, Warning and Error) messages seen in the log files.
- TRAP_MID – This will send traps only for all Warning and Error messages seen in the log files.
- TRAP_MIN – This will send traps only for all Error messages seen in the log files.
Given below is an example of traps that can be set for log files slapd, audit, and ibmdiradm:trapForMessageId-slapd: TRAP_MID trapForMessageId-audit: TRAP_MAX trapForMessageId-ibmdiradm: TRAP_MIDNote:- TRAP_MIN and TRAP_MID are not valid values for trapForMessageId-audit. This is because the audit log contains only information messages.
- The traps sent by the idssnmp tool contain the OID 1.3.6.1.4.1.2.6.199.1.1.7. This OID holds the name of the instance to which the event corresponds to.
The configuration file, idssnmp.conf, is in the standard SNMP format, that is, space separated with certain keywords. This configuration file contains the port number on which the SNMP agent runs, at least one IP address or host name, the IP address of the network management system (NMS) to where the connector sends its traps, and the communities that this SNMP Agent responds to. This file is located in the <SDSinstall_directory>\idstools\snmp directory.
- Edit the port number in the configuration file for the IBM Security Directory Server SNMP
agent. The SNMP Agent monitors IBM Security
Directory Server. If you want to monitor something other than the
directory server, the SNMP agent for IBM Security
Directory Server must be run on a nonstandard port. The nonstandard
port is necessary to avoid a port conflict with the agent for the
other application.
The example shows that the SNMP agent runs on port 161. If more than one port is specified, only the first line of type Port is read, others are ignoredPort 161 - To properly receive any traps, you must edit the line in the SNMP
configuration file that has the keyword Trap by adding the IP address
of the NMS receiving the traps (by default the value is 127.0.0.1),
its port number and the community string it expects to receive from
the agent. You can repeat the line to specify multiple machines that
are receiving the traps. For example:
This example shows that any traps that are generated are sent to a machine with the IP address 5.4.3.2 on port 162 using the community string "public".Trap 5.4.3.2 162 public - Specify a polling interval in seconds. After the specified number
of seconds the agent polls the servers to discover their status.
In this example the agent checks the servers every 600 seconds, that is, every 10 minutes.Poll 600 - If you want to restrict access to the agent, you can specify an
optional community string. If you specify community, you must provide
the string. For example:
Any machine supplying the community string, dirServer, has access to the data. If the community string is not specified, authorization is not restricted. To further restrict access, you can provide other tokens such as the IP address in the community string line that the machine originating the request must have:Community dirServer
If no IP Address is specified, then any machine supplying the community string has access to the data. If additional access restrictions are needed, you can also specify the supported access right, readOnly, to the elements of the community and lastly the view of the subtree. Please note that the data is implicitly read only and that readOnly is used to maintain the SNMP configuration file standards. If you specify community, the string is required. The IP address, access right and view are optional, however these restrictions are sequential in nature. You can optionally specify IP address or IP address and access right, but you could not optionally specify the access right and view without IP address.Community dirServer 1.2.3.4This example is the most restrictive and illustrates the correct sequence of the tokens.
In this example, the requesting NMSs must supply "dirServer" as a community string. The requests must originate from a machine with IP address 1.2.3.4 and all elements in this community are read only and the view is 1.5.4.3.2.1.Community dirServer 1.2.3.4 readOnly 1.5.4.3.2.1Note: With restricted authorization, if more than one machine is running an NMS authorized to perform get operation on the Directory SNMP Agent, the community line will need to be duplicated. - If you need to divide the SNMP OID tree, you can specify a view
of the subtree.
This example indicates that the agent deals with all the subtrees under the OID 1.5.4.3.2.1.View 1.5.4.3.2.1
- Load the following MIBS to your NMS:
<SDSinstall_directory>\idstools\snmp\IBM-DIRECTORYSERVER-MIB <SDSinstall_directory>\idstools\snmp\INET-ADDRESS-MIB
The SNMP agent can be started by running the idssnmp script located in the <SDSinstall_directory>\sbin directory.
See the Configuring section of the IBM Security Directory Integrator documentation for information on how to install IBM Security Directory Integrator and how to setup SSL.