Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Mike Dickson Tidal Software [email protected] Introduction • • • • • • • • From a little town called Gig Harbor, WA Married with 5 children Degree in CS from BYU Former Sun Java Instructor Bluestone HP Middleware HP Openview Now at Tidal Software Agenda • JMX Overview – JMX Definition – JMX MBeans Types – JMX MBean Server • JMX Implementation Architecture – Overall Architecture – Agent Architecture – Client Architecture • JMX Implementation Demo – Operations Views – Developer Views and Functinos • Please ask question all along JMX Overview • JMX – Java Management Extensions – How to manage resources like devices or applications the Java way – It is accomplished by “Instrumenting” your code – Very comprehensive and well thought out • Started with JSR 3! • Scope – Application Configuration – Statistics – State Changes of Systems JMX Overview • An MBean is a Java object that is instrumented to make Java systems manageable • They consist of: – – – – Attributes Methods Notifications Constructors • There are four types of MBeans: – Standard MBeans • Define Java Bean compliant Interface, then implement it • Static interface • Metadata is generated by the JMX Agent – Dynamic MBeans • Implement DynamicMBean interface – getAttibute, setAttribute, getAttributes, setAttributes, invoke, getMBeanInfo • More flexible and Dynamic • Developer creates the Meta Data JMX Overview – Model MBeans • Is a Dynamic MBean that uses Metadata Classes to describe features at the top of the slide • ModelMBean implements DynamicMBean • It is able to persist itself • Implements the ModelMBean interface – setModelMBeanInfo, setManagedResource • RequiredModelMBean is an implementation of this that must be in each JMX implementation – You don’t have to implement the ModelMBean interace just the meta data classes to describe your features – Open MBean • No specific interface that you have to implement other than DynamicMBean • The first three MBean types usually only describe the native Java data types and Strings They also allow arrays of those types • But what about complex data types? • Open MBeans “open” up MBeans to complex data types without the management application having to deal with user class file data types • They create a subclass of OpenType for attributes, methods, notifications, constructors JMX Overview • Notification Model – Same as the normal Java Event Model – Broadcaster and Listeners • MBean Server – – – – – Like a RMI server You register you MBeans The Server does not need to be in the same JVM Everything is an Interface Connectors(Agents) talk to the MBean Server to do their magic Tidal Intersperse – Architecture Standards-Based Interfaces Monitored Systems Java EE Cluster Java EE SOM JMX Client LDAP Browser Web Services Client SNMP Client Services JMS Persistence RDBMS Java SE VM .NET HPOV/Tivoli/… Web Service Database Tidal Intersperse – Agent Architecture Standard Object Model LDAP Services Persistence RDBMS JMS Bus JMX Server Agent Application Application Server Intersperse Middle Tier Tidal Intersperse – Client Architecture Standard Object Model LDAP Services Persistence RDBMS JMS Bus Intersperse Middle Tier JMX Implementation Demo • Intersperse 6.0