| HTML Tutorials |
|
|
| XML Tutorials |
|
|
| Browser Scripting |
|
|
| Server Scripting |
|
|
| .NET (dotnet) |
|
|
| Multimedia |
|
|
| Web Building |
|
|
| Java Tutorials |
|
|
| Programming Langauges |
|
|
| Soft Skills |
|
|
|
|
JMX Technology for Remote Management
|
|
Remote Management
|
|
To make a JMX agent accessible from management applications outside the agent's JVM
MBean server relies on protocol adaptors and connectors. Basically adaptors
provide a view through a specific protocol for all MBeans registered in the
MBean server (e.g. an HTML adaptor could display an MBean in a Web
browser). Manager-side interface provided by the connectors that handles the
communication between manager and JMX agent. When a remote management
application uses such interface, it connect to a JMX agent transparently
through the network regardless of the protocol.
To remote applications by using Remote Method Invocation (RMI) JMX technology exports JMX API instrumentation.
It also defines an optional protocol based
directly on TCP sockets called the JMX Messaging Protocol (JMXMP). But this this protocol is not supported in J2SE 5.0.
The JMX Remote API 1.0 (JSR 160) specification describes how to advertise and
find JMX agents using existing discovery and lookup infrastructures. In other
way the specification does not define its own discovery and lookup service.
Using existing discovery and lookup services is optional; you may encode the
address of your JMX API agents in the form of URLs and make these URLs available
to the manager.
|
|
RMI Connector
|
|
Example 4 shows an example of using the RMI connector, which is a slight modification of Example 3.
|
Code Sample 4: SimpleAgent.java
|
<pre>import javax.management.*;
import java.lang.management.*;
import javax.management.remote.*;
public class SimpleAgent {
private MBeanServer mbs = null;
public SimpleAgent() {
// <em>Get the platform MBeanServer</em>
mbs = ManagementFactory.getPlatformMBeanServer();
// <em>Unique identification of MBeans</em>
Hello helloBean = new Hello();
ObjectName helloName = null;
try {
// <em>Uniquely identify the MBeans and register them with the MBeanServer</em>
helloName = new ObjectName("SimpleAgent:name=hellothere");
mbs.registerMBean(helloBean, helloName);
<strong>// <em>Create an RMI connector and start it</em>
JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:9999/server");
JMXConnectorServer cs = JMXConnectorServerFactory.newJMXConnectorServer(url,
null, mbs);
cs.start();</strong>
} catch(Exception e) {
e.printStackTrace();
}
}
public static void main(String argv[]) {
SimpleAgent agent = new SimpleAgent();
System.out.println("SimpleAgent is running...");
}
}</pre>
|
To execute this application, do the following:
- If you want to execute the application on J2SE 1.4, you need to change the line
mbs = ManagementFactory.getPlatformMBeanServer();.
to mbs = MBeanServerFactory.createMBeanServer("SimpleAgent");
- Compile the revised
SimpleAgent.java from Code Sample 4.
- Start the rmiregistry on port 9999 (
prompt> rmiregistry 9999).
- Run
SimpleAgent (prompt> java SimpleAgent).
- While
SimpleAgent is running, run jconsole and
then use the Advanced tab and enter the information as shown in the
following figure.
|
Figure 4: Configuring jconsole for remote management
|
6. Once you are connected, you can browse the MBeans and manage them using the MBeans tab as shown in Figure 5.
|
Figure 5: Browsing and managing remote MBeans
Share And Enjoy:These icons link to social bookmarking sites where readers can share and discover new web pages.
Keywords: jmx tutorial,
jmx MBeans,
java jmx,
jmx ObjectName,
jmx mbean,
jmx jboss,
jmx api,
tomcat jmx,
SNMP jmx,
jmx example,
jmx timer,
jmx weblogic,
jmx monitoring,
jmx sun,
jmx jar,
websphere jmx,
jmx console,
jmx jconsole,
jmx notification,
jmx implementation,
jmx client,
jmx agent,
jmx sample,
jmx connector,
jmx invoke,
jmx monitor,
jmx rmi,
jmx configuration,
jmx standard,
implementation management,
jmx adaptor,
remote client.
|
|
| HTML Quizes |
|
|
| XML Quizes |
|
|
| Browser Scripting Quizes |
|
|
| Server Scripting Quizes |
|
|
| .NET (dotnet) Quizes |
|
|
| Multimedia Quizes |
|
|
| Web Building Quizes |
|
|
| Java Quizes |
|
|
| Programming Langauges Quizes |
|
|
| Soft Skills Quizes |
|
|
|