Transcript JMX

Network Management
with JMX
Thu Nguyen
Oliver Argente
CS158B
JMX Overview

JMX - Java Management Extensions
– Technology for managing and monitoring
networks, systems, applications, and services
– Provides tools for building modular and dynamic
managing and monitoring solutions
– Cross-platform Alternative to SNMP
– Uses Java classes called MBeans to expose mgmt
interface of the managed devices
– JMX Manager
JMX Overview…

Benefits of JMX
– Scalability
– Compatibility
– Implementation Cost

Where is it used?
– web phones to set-top boxes to network devices
and servers

Who uses JMX?
– IBM, HP, AdventNet, Sun, Tomcat, Oracle
– J2EE vendors such as: JBoss, Enhydra, Weblogic
JMX Architecture (3 Layers)
Management
Applications

– Link between mgmt application and
JMX agent
– Making integration possible
– Where JMX Manager resides
Manager Level
Agent Level
Instrumentation
Level

Servers
Agent Level
– Contains JMX agents
– Has 2 components: MBean Server &
Agent Services
Managed Resources
computer Managed Resources
Manager Level

Instrumentation Level
– Defines manageable resources
– Has 3 components
Architectural Components
(Instrumentation Level)

MBeans (Managed Beans)
– central blocks of the instrumentation level
– Makes resources manageable by defining characteristics and
processes
– Employs dynamic class loading

Notification Model
– Can be manipulated to send critical messages
– Similar to SNMP Trap

MBean Metadata Classes
– Defines MBean components (i.e. attributes, operations, etc…)
– Also contains names, description, characteristics, etc…
Architectural Components
(MBeans)

Standard MBean
–
–
–
–
–

Java objects that conform to certain design pattern
Simpler and quicker to implement
Mgmt interfaces, operations, & attributes are static
Method names describe the mgmt interface.
Best used for setting up new manageable resources
Dynamic MBean
–
–
–
–
Generic methods are used for setting/getting attributes
Mgmt interfaces exposed at run time
Quite complex to implement
They can be used to access non-Java native resources
Architectural Components
(MBeans)

Model MBean
– Fully configurable and self describe at run time
– It’s an MBean template because it uses generic,
configurable MBean classes
– Gives managers additional info about managed
resources such as runtime & behavioral data.

Open MBean
– self defining and portable
– Can be managed by non-Java based mgmt
application.
Architectural Components
(Agent Level)

MBean Server
– Repository of MBeans
– Involved in the MBean registration

Agent Services – customizable objects
– Dynamic Class Loader – can load new
classes from any network location
– Monitors – Observes changes
– Timers – Scheduling mechanism
– Relation Services – defines relationship
between MBeans
JMX Connectors and
Protocol Adapters

Remote Monitoring with JMX Connectors
– Create point to point communication
– Consists of 2 components


Connector Server
Connector Client
– Connector Heartbeats

Protocol Adapters
– Provides view of an agent and its MBeans thru different
protocols.
– Accessing Non-Java Programs
– Software components residing on the server/managed devices
Hands-On Example of JMX

Router Management
– Program Demonstration
Network Management
with JMX
End of Presentation
Resources Used
Who uses jmx:
http://java.sun.com/products/JavaManagement/jmxadoption.html
http://www.javaworld.com/javaworld/jw-06-2001/jw-0608-jmx.html
http://java.sun.com/products/JavaManagement/wp/jmx.jpg
How jmx is used:
http://java.sun.com/developer/technicalArticles/J2SE/jmx.html