Java and JMX: Building Manageable Systems

Java and JMX: Building Manageable Systems

by Heather Kreger, Ward Harold, Leigh Williamson
     
 

ISBN-10: 0672324083

ISBN-13: 9780672324086

Pub. Date: 12/28/2002

Publisher: Addison-Wesley

Java is now used with increasing frequency to develop mission-critical applications. Using Java Management Extensions (JMX) is the key to managing those applications. As JMX is increasingly accepted into the fields of embedded systems, enterprise systems, and telephony, it is clear that all Java developers will encounter JMX before long.

Java™ and JMX

Overview

Java is now used with increasing frequency to develop mission-critical applications. Using Java Management Extensions (JMX) is the key to managing those applications. As JMX is increasingly accepted into the fields of embedded systems, enterprise systems, and telephony, it is clear that all Java developers will encounter JMX before long.

Java™ and JMX: Building Manageable Systems is the definitive guide to JMX, combining an introduction to the technology with extensive coverage that will make this book a favorite reference. Much more than just an explanation of the JMX specifications, this book can drastically reduce a reader's JMX learning curve by explaining how to develop management requirements and apply JMX to them. The book's coverage includes:

  • A management primer for Java programmers and architects
  • A historical perspective on the evolution of JMX and its relation to other management standards, including SNMP, CIM/WBEM, TMN, and CMIP
  • Development of JMX Manageable Resources with Standard and Dynamic MBeans
  • Development with Model MBeans as customizable generic instrumentation using both the JMX APIs and XML files
  • MBeanServer, including the MBean registry and object naming scheme, the generic MBean interface, and the query mechanism
  • JMX Monitors and Notifications
  • MBeanServer Services including the timer, relationship, and dynamic loading, along with custom services for XML services, HTTP adapters, RMI connectors, and security exposures and permissions
  • JMX best practices, including deployment patterns, instrumentation patterns, federation patterns, and best practices
  • JMX integration into J2EE and the JSR077 management models in J2EE 1.4
  • Using JMX to manage Web services from the perspective of service providers, registry providers, and users

Written with an unparalleled degree of in-the-trenches familiarity and full of practical examples and working sample code, Java™ and JMX is a must-have introduction, technological guide, and reference for Java architects and developers.

0672324083B12052002

Product Details

ISBN-13:
9780672324086
Publisher:
Addison-Wesley
Publication date:
12/28/2002
Edition description:
New Edition
Pages:
592
Product dimensions:
7.32(w) x 9.05(h) x 1.33(d)

Table of Contents

Preface.

Part I. JMX Introduction.

1. Management Concepts.

Progress of Management.

Why Invest in Management?

The Natural Evolution of Management.

Management Architectures.

Managed Resource.

Agent.

Subagent.

Midlevel Manager.

Management System.

Management Technologies.

Proprietary Technologies.

Standard Technologies.

Managing the Lifecycle.

Management Disciplines.

Distribute.

Install.

Configure.

Monitor.

Control.

Managed Resource Responsibilities.

Management Data.

Management Operations.

Management Instrumentation.

Management Patterns.

Event Generator.

Noninterruptible.

Queryable.

Operational.

Management Applications.

Distribution Applications.

Inventory Applications.

Topology Applications.

Configuration Applications.

Operations Applications.

Event and Automation Applications.

Monitoring and Performance Applications.

Summary.

General References.

Notes.

2. Introduction to JMX.

Why We Need JMX.

Choosing a Management Technology.

Dealing with Diversity.

Being Managed by Multiple Management Applications.

Supporting Application-Specific Management Systems.

Which Applications Should Be Manageable?

Complex Applications.

High-Volume Applications.

Mission-Critical Applications.

Corporate Applications.

Applications with Expectant Customers.

The Goals of JMX.

Simple API.

Dynamic Management.

Isolation.

Generic Management.

History.

JMAPI.

JDMK.

JMX.

The Specification and Compliance.

The Reference Implementation.

JMX Overview.

JMX-Managed Resources.

Mbeans.

JMX Agents.

JMX Adapters.

Adapter Tools.

Quick Tour of JMX.

todd, the Time of Day Daemon.

todd Management.

toddÕs Mbeans.

Incorporating an MbeanServer.

Monitoring todd.

Browser Control.

Summary.

Notes.

Part II. JMX Details.

3. All about Mbeans.

MBean Fundamentals.

The Management Interface.

The Introspection Algorithm.

MBean Construction.

Standard Mbeans.

Dynamic Mbeans.

Active Mbeans.

Open Mbeans.

Design Guidelines.

Summary.

4. Model Mbeans.

Introduction.

The Simplest Model MBean Example.

The ModelMBean Interface.

DynamicMBean.

PersistentMBean.

ModelMBeanNotificationBroadcaster.

Managed Resources.

ModelMBeanInfo.

Descriptors.

Model MBean Descriptors.

Attribute Descriptors.

Constructor Descriptors.

Operation Descriptors.

Notification Descriptors.

Behavior of the Model Mbean.

Caching.

Values and Validation.

Delegation.

Persistence.

Logging.

Miscellaneous Descriptors.

XML Service: Priming ModelMBeanInfo from XML Files.

Using Model Mbeans.

Creating Static Model Mbeans.

Creating Dynamic Model Mbeans.

Adding Custom Descriptors.

Overriding the RequiredModelMBean Class.

Common Mistakes with Model Mbeans.

Caveats.

Transactionality.

Remoteness.

Summary.

XML File Example.

Notes.

5. The MbeanServer.

The MBeanServerFactory Class.

Object Naming.

Object Name Domains.

Object Name Key Properties.

The ObjectName Class.

The ObjectInstance Class.

The MBeanServer Interface.

MBean Lifecycle Methods.

MBean Access Methods.

MBeanServer Methods.

The MBeanServerDelegate Mbean.

Finding Mbeans.

Query Expressions.

Query Scope and Pattern Matching.

MBeanServer Query Methods.

Notifications.

Summary.

6. Monitors and Monitoring.

The JMX Monitor Service.

The Monitoring Package Structure.

The Monitor Mbean.

MonitorNotification.

Concrete Monitors.

Monitoring ApacheÕs Status.

Canonical Usage Pattern.

StringMonitor.

CounterMonitor.

GaugeMonitor.

Summary.

7. JMX Agent Services.

Timer Service.

The Notification Queue.

Timer Notifications.

The Timer Class.

Dynamic MBean Loading Service.

The MLET Tag.

MLet Examples.

The MLet API.

Relation Service.

A Simple Example: The SessionPool Relation.

The RelationService Class.

JMX Connectors.

Connector Mbean.

Connector Client Proxy.

Summary.

Securing JMX.

JMX Security Exposures.

Permission-Based Security Fundamentals.

Permissions.

SecurityManager.

Policy.

JMX Permissions.

MbeanServerPermission.

MbeanTrustPermission.

MbeanPermission.

Using JMX Security.

A Simple Process Management Application (SPMA).

Running with Security Enabled.

Policy Configuration.

Summary.

9. Designing with JMX.

MBeanServer Deployment Patterns.

Daemon.

Component.

Driver.

Instrumentation Patterns.

Applications as Mbeans.

MBeans on Behalf of Applications.

Publish-Only Mbeans.

Facades for Distributed Applications.

MBean Registration and Lifecycle.

Registration by Application.

Registration by Third Party.

Registration by Management Adapter.

Registration by MBeanServer Bootstrap.

Best Practices.

MBean Granularity.

Application Self-Management.

Resource Schema.

Notifications and Logging.

Federation Options.

Summary.

Part III. Application of JMX.

10. J2EE and JMX.

Java 2 Enterprise Edition.

J2EE Management.

Management Tool Access: The MEJB.

J2EE Management Models.

The Base Managed-Object Model.

The Management Domain Model.

The J2EE Application Server Model.

J2EE Application Component Models.

J2EE Server Runtime Components.

Standard Management Functions.

State Management.

Event Generation.

Performance Monitoring.

Stats Interface Details.

Application-Specific Extensions.

Areas Missing from J2EE Management.

The Vision.

Sample JSR 77 Code.

Summary.

Notes.

11. Web Services and JMX.

Web Services Overview.

Service-Oriented Architecture.

Web Service Stack.

Web Service Registry Management.

Registry Owner.

Registry User.

Web Service Execution Environment Management.

Execution Environment Owner.

Execution Environment User.

Web Service Management.

Web Service Owner.

Web Service User.

Summary.

Code Listings.

UDDIRegistryClientManagerMBean Implementation.

WebServiceRuntimeManagerMBean Implementation.

WebServiceManagerMBean Implementation.

StockQuote Service WSDL Document.

Notes.

Appendix. JMX in Products.

JMX Agent Implementations.

JMX 1.0 Reference Implementation from Sun Microsystems.

JDMK 4.2 from Sun Microsystems.

TMX4J 1.0 from Tivoli Systems.

AdventNet Agent Toolkit Java/JMX Edition.

AdventNet ManageEngine.

MX4J.

JMX Managers.

Tivoli Web Component Manager.

Dirig Software.

AdventNet Middleware Manager.

AdventNet Web NMS.

Vigor Soft hawkEye.

JMX-Enabled Products.

IBM WebSphere 5.0.

IBM Web Services Tool Kit 3.1.

IBM WebSphere Voice Server.

IBM WebSphere Business Components Composer.

BEA Systems WebLogic Server 7.0.

IONA iPortal.

IONA Technologies PLC: Orbix E2A XML Bus Edition 5.3.

Hewlett-Packard OpenView.

Hewlett-Packard Core Services Framework.

Jboss.

Sonic Software SonicXQ.

Pramati Server from Pramati Technologies.

Sybase EAServer 4.0.

Sun Microsystems: Sun ONE Application Server.

Sun Microsystems: Sun ONE Portal Server.

Compiere Open Source ERP & CRM.

Notes.

Index. 0672324083T05022003

Customer Reviews

Average Review:

Write a Review

and post it to your social network

     

Most Helpful Customer Reviews

See all customer reviews >