JMX Update - PowerPoint PPT Presentation

About This Presentation
Title:

JMX Update

Description:

Developed through the JCP JSR 160. Standard support via RMI ... http://www.onjava.com/pub/a/onjava/2002/03/27/jsr77.html ... www.admc.com/blaine/howtos/jmx ... – PowerPoint PPT presentation

Number of Views:95
Avg rating:3.0/5.0
Slides: 24
Provided by: david1499
Learn more at: http://www.sacjug.org
Category:
Tags: jmx | com | discover | jcp | rr | update | www

less

Transcript and Presenter's Notes

Title: JMX Update


1
JMX Update
  • Scott Molenaar
  • ScottMolenaar_at_null.net
  • 11/08/2004

2
Original Slides Created by
  • David Moran
  • dmoran_at_nc.rr.com
  • 10/20/03

3
Agenda
  • Overview
  • Managed Beans
  • Services
  • Remote API
  • J2EE Management
  • Implementations
  • Future Directions
  • Demo

4
Benefits
  • JMX is an API to for managing java applications.
  • Abstract the instrumentation for management
    information to a common interface to facilitate
    integrated management.
  • Distribute management by moving management
    functions to the agents.
  • Real-time deployment of services and updates.
  • Possible to use to manage any application or
    device (via JNI or SNMP etc..)

5
JMX Architecture
6
MBeanServer
  • The core of the agent. It provides a registry for
    MBeans.
  • Allows clients to discover and execute operations
    exposed by the MBeans
  • Makes available various services to facilitate
    management (I.e. monitoring, scheduling, etc)
  • Use ObjectName class to register objects with
    the MBeanServer

7
Instrument your resources as MBeans
  • MBean stands for managed bean
  • MBeans can represent a physical device or an
    application
  • You decide which attributes and methods you want
    to expose for management.
  • Use design patterns similar to JavaBeans
  • MBeans are exposed in an agent.

8
Standard MBeans
  • The simplest MBean
  • Provides a static representation of a manageable
    resource.
  • Implements a management interface of attributes
    and methods that a device or application exposes
    for management.

9
Notifications
  • Can be used to inform registered listeners with
    important events or state changes.
  • Similar to the java event model
  • Register once to all types of notifications
  • Can supply a filter to say which notifications it
    is interested in.

10
Dynamic MBeans
  • Useful if the management interface is not stable.
  • The management interface is defined at runtime.
  • Developer is responsible for checking the
    validity of the invocations.

11
DynamicMBean Interface
ltltInterfacegtgt DynamicMBean
getAttribute(String attribute) setAttribute(Attrib
ute attribute) getAttributes (String
attributes) setAttributes(AttibuteList
attributes) getMBeanInfo() invoke(String
actionName, Object params)
12
Model MBeans
  • Most flexible and thus most complicated MBeans
  • Extension of the dynamic MBean
  • Developers do not write an MBean class
  • The agent must supply the RequiredModelMBean and
    the Management Interface is defined outside of
    the Bean via setter methods.
  • Features include persistence, logging, and
    attribute caching.

13
Connectors/Adapters
  • A connector makes a Java Management Extensions
    (JMX) API MBean server accessible to remote Java
    technology-based clients.
  • Adapters are similar to connectors except they
    provide protocol translations (I.e. SNMP, HTML,
    etc.)

14
Agent Services
  • Mlet (Management Applet) Dynamically adds class
    files to the server either locally or from a
    remote location.
  • Relation Service Allows the definition of
    relationships between MBeans
  • Monitors Observe MBean attributes and emit
    notifications when values change.
  • Timers Emits user defined notifications at
    specific times.

15
JMX Remote API
  • Adds remote capability to the JMX spec
  • Makes the JMX agent accessible from outside the
    JVM.
  • Developed through the JCP JSR 160
  • Standard support via RMI
  • Optional support via TCP Sockets (JMXMP)
  • API is as close as possible to the API defined by
    the JMX API.
  • Also support discovery/lookup services and
    defines security between the client and server.
  • As with RMI code must handle communication
    exceptions

16
J2EE Management
  • An MBean can get data directly from an EJB by
    invoking its access methods.
  • An MBean can receive data being pushed from an
    EJB.
  • Registers and Deletes an MBean with a JMX agent
    upon creation and destruction of an EJB

17
J2EE Management Spec JSR77
  • This specification represents a model of the J2EE
    application server, and its subcomponents, that
    all J2EE-compliant application vendors are
    required to expose
  • Requires JMX
  • Part of J2EE 1.4 spec
  • Specifies the MEJB, which is a session bean, to
    expose the agent to remote clients.

18
Available JMX Implementations
  • Sun JDK1.5
  • JBOSS JBOSS-MX
  • MX4J
  • XMOJO
  • Commercial implementations available
  • Weblogic
  • Adventnet
  • XtreamJ
  • WebSphere Tivioli

19
Future Directions
  • Use of metadata
  • Persistence
  • Reliable event handling
  • Master-agent/sub-agent functionality
  • Manageability for J2EE apps

20
Examples
  • MX4J - Dynamic MBean Example (CacheMBean) MC4J
    Console
  • XMOJO - Model MBean Example (ServerInfo) XMOJO
    Web based console
  • JBoss XMBean Example (CacheMBean)
  • JBoss Web based console MC4J Console
  • JDK1.5 Standard MBeans and JConsole

21
Books
  • JMX in ActionBenjamin G. Sullins,
    Mark WhipplePublisher Manning Publications
    Company
  • JMX Managing J2EE with Java Management
    ExtensionsMarc Fleury, Juha Lindfors
  • Publisher Sams
  • Java and JMX Building Manageable
    SystemsHeather Kreger, Ward K. Harold,
    Leigh Williamson, Ward HaroldPublisher Pearson
    Education
  • Java Management ExtensionsJ. Steven Perry
  • Publisher O'Reilly Associates,
    Incorporated
  • JMX ProgrammingMike JasnowskiPublisher Wiley,
    John Sons, Incorporated

22
References
  • Sun JMX Page http//java.sun.com/products/JavaMan
    agement
  • JMX Forum jmx-forum_at_java.sun.com
  • JBOSS MX http//www.jboss.org/developers/projects
    /jboss/jbossmx.jsp
  • AdventNet www.adventnet.com
  • http//www.gartner.com/reprints/adventnet/108841.h
    tml
  • Interview with Chris Ebro http//www.theserverside
    .com/events/library.jsp
  • JSR77 Article
  • http//www.onjava.com/pub/a/onjava/2002/03/27/jsr7
    7.html
  • Original Slides http//www.trijug.org/downloads/JM
    XPresentation.ppt

23
References continued
  • MX4J Page http//mx4j.sourceforge.org
  • MC4J Page http//mc4j.sourceforge.org
  • XMOJO Page http//www.xmojo.org
  • Jconsole page http//java.sun.com/j2se/1.5.0/docs
    /tooldocs/share/jconsole.html
  • Tutorial Page http//www.admc.com/blaine/howtos/j
    mx/jmx.html
  • Article on JMX http//www.onjava.com/pub/a/onjava
    /2004/09/29/tigerjmx.html
Write a Comment
User Comments (0)
About PowerShow.com