SevOne logo
You must be logged into the NMS to search.

Table of Contents (Start)

Enable JMX

Java Management Extensions (JMX) is a Java specification technology (defined in JSR-160) that provides a standard means for Java applications to publish indicators to JMX compliant management and monitoring systems.

This topic describes how to enable JMX devices to send JMX data to SevOne NMS. This workflow is outside of the SevOne NMS application and may not present all of the steps your network requires to enable devices to send JMX data. If the following instructions are not applicable for your network please reference the device manufacturer's documentation.

Related SevOne NMS workflows include the following.

  • The Device Manager provides access to the New Device page and the Edit Device page where you enable the JMX plugin for a device.

  • The Object Types page enables you to enable or disable the JMX object types and indicator types you want the JMX plugin to poll in your network.

  • The Indicator Type Map page enables you to enable or disable the device specific indicators you want the JMX plugin to poll.

Send JMX Data to SevOne NMS

Enter the following command on the JMX device.

Hostname –i

The result should not equal 127.0.0.1

Tomcat

Enter the following commands for the Tomcat Startup script.

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote"

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=8007"

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=false"

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false"

JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=192.168.50.213"

WebLogic

Enter the following commands for the WebLogic Startup script.

/opt/Oracle/Middleware/wlserver_10.3/samples/domains/wl_server/bin/startWebLogic.sh

JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote"

JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.port=8007"

JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.authenticate=false"

JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.ssl=false"

JAVA_OPTIONS="$JAVA_OPTIONS -Djava.rmi.server.hostname=192.168.30.251"

JAVA_OPTIONS="$JAVA_OPTIONS -Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder"

You must also enable this on the Administrative page.

domain -> Configuration -> general (Advanced) , usePlatformMBean , exportPlatformMBean

JBoss

Enter the following commands to enable JBoss to send JMX data. Change the hostname and IP to /etc/hosts to connect. The servername cannot be listed under 127.0.0.1

In /opt/jboss/bin/run.sh add #Setup jmx remoting

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=false"

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false"

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=8007"

Use the JBoss MBeanServerBuilder.

JAVA_OPTS="$JAVA_OPTS -Djboss.platform.mbeanserver"

JAVA_OPTS="$JAVA_OPTS -Djavax.management.builder.initial=org.jboss.system.server.jmx.MBeanServerBuilderImpl"

Use the jboss logmanager.

JAVA_OPTS="$JAVA_OPTS -Djava.util.logging.manager=org.jboss.logmanager.LogManager"

JAVA_OPTS="$JAVA_OPTS -Dorg.jboss.logging.Logger.pluginClass=org.jboss.logging.logmanager.LoggerPluginImpl"

JBOSS_CLASSPATH="../lib/jboss-logmanager.jar"

GlassFish

Increase the monitoring to HIGH on the Web Admin page and enter the following commands to enable GlassFish v 3.1 to send JMX data.

In the domain configuration file /glassfish/domains/domain1/config/domain.xml find <java-config> and add:

-Dcom.sun.management.jmxremote.ssl=false

-Dcom.sun.management.jmxremote.authenticate=false

Then find <admin-service> and add/modify:

<jmx-connector accept-all="true" port="8007" address="0.0.0.0" security-enabled="false" name="system" auth-realm-name="admin-realm" />

WebSphere 6.1

Enter the following commands for WebSphere 6.1.

Install the server { yum install compat-libstdc++-* libXp libXmu }

Run the server { /etc/init.d/webspherejmxserverNode01_was.init start }

Log in via the admin console and make sure the JMX RMI connection is established.

Use the Python script ListPorts to get the admin port. { ./wsadmin.sh -conntype none -lang jython -profileName AppSrv01 -f /opt/ListPorts.py }

Log into the server { admin:admin }

Back to the CLI, disable security.

{

./wsadmin.sh -conntype NONE

wsadmin>securityoff

wsadmin>$AdminConfig save

}

Connect with the following script.

#!/bin/bash

HOST=

PORT=

WAS_HOME=/home/dkozlowski/IBM/WebSphere/AppServer

CLIENTSAS="-Dcom.ibm.CORBA.ConfigURL=file:`pwd`/sas.client.props"

PROVIDER="-Djava.naming.provider.url=corbaname:iiop:$HOST:$PORT"

PROPS=

#PROPS="$PROPS $CLIENTSAS"

#PROPS="$PROPS $PROVIDER"

CLASSPATH=

CLASSPATH="$CLASSPATH:$WAS_HOME/java/lib/tools.jar"

CLASSPATH="$CLASSPATH:$WAS_HOME/runtimes/com.ibm.ws.admin.client_7.0.0.jar"

CLASSPATH="$CLASSPATH:$WAS_HOME/runtimes/com.ibm.ws.ejb.thinclient_7.0.0.jar"

CLASSPATH="$CLASSPATH:$WAS_HOME/runtimes/com.ibm.ws.orb_7.0.0.jar"

CLASSPATH="$CLASSPATH:$WAS_HOME/java/lib/jconsole.jar"

URL=service:jmx:iiop://$HOST:$PORT/jndi/JMXConnector

java -classpath $CLASSPATH $PROPS sun.tools.jconsole.JConsole $URL

WebSphere 8.5

WebSphere JMX Configuration

  1. Log on to the WebSphere Admin Console.
    images/download/attachments/163973249/JMX1-version-1-modificationdate-1693243244482-api-v2.png

  2. Click Servers on the left to expand the Servers options.

  3. Click Server Types to display the Server Types options.

  4. Click the WebSphere Application Servers link to display the application servers on the right.
    images/download/attachments/163973249/JMX2-version-1-modificationdate-1693243244480-api-v2.png

  5. Click on the server to administer.
    images/download/attachments/163973249/JMX3-version-1-modificationdate-1693243244478-api-v2.png

  6. On the right in the Server Infrastructure section, click Administration Services to display the Administration Services options.
    images/download/attachments/163973249/JMX4-version-1-modificationdate-1693243244476-api-v2.png

  7. In the Additional Properties section, click JMX Connectors.
    images/download/attachments/163973249/JMX5-version-1-modificationdate-1693243244474-api-v2.png

  8. Select the SOAPConnector check box, if needed.
    images/download/attachments/163973249/JMX6-version-1-modificationdate-1693243244315-api-v2.png

  9. Return to the previous page.

  10. In the General Properties section, click the Remote Connector drop-down and select SOAPConnector.

  11. Click Apply.
    images/download/attachments/163973249/JMX7-version-1-modificationdate-1693243244285-api-v2.png

  12. Return to the Servers page to find the port for SevOne NMS to use to monitor the device.

  13. In the Communications section, click Ports to expand the Ports list.

  14. Make a note of the SOAP_CONNECTOR_ADDRESS port number. This port number is used for the device on the Edit Device page.