Introduction

The Java Management Extensions defines architecture for software and network management in the Java programming language. This book will cover the JMX specification and show you how resources can be managed using JMX.

What is JMX?

JMX is a unified framework to instrument the disparate pieces of Java code in a modern IT infrastructure. Before JMX, there was no standardized approach in the Java programming language to start, manage, monitor, and stop different software components or applications. Management of software has been achieved through an ad-hoc collection of procedures and custom management code. JMX promises to remove the need for expensive application-specific management solutions by defining an architecture that allows more generic management applications to be built.

Why JMX for J2EE?

The Java 2 Enterprise Edition is a complex, distributed, service-based enterprise platform. It consists of many different kinds of resources that are dynamically created, distributed, moved across nodes, redeployed, and destroyed. The management of such a platform calls for an isolation layer between the management applications and the managed resources. The management architecture must be generic enough to allow a wide variety of different kinds of resources and components to be managed. The management architecture must be able to cope with the dynamics and distribution of the platform and provide a management model that allows increasingly long uptimes and 24×7 service. JMX can provide all this.

Part I: Java Management Extensions Specification

The first part of this book will cover all the aspects of the JMX specification. Several examples will be implemented to demonstrate how to build management components, discuss the different types of components the JMX specification defines, and look at the management architecture established by the JMX implementations.

After finishing the first section of the book, you should be familiar with the concept of managed beans (MBeans). You will understand the different approaches to implementing such managed beans, how to control their life cycle, and how the managed beans are able to communicate with each other and with other management applications. You will also understand the role of an agent in the management architecture and how it is used to decouple the managed resources from the management applications.

You will also learn about the standard services defined in the specification and how they can be used when implementing resources. The standard services include functionality for scheduling events, loading MBeans over the network, monitoring the managed resources, and creating relationships between different management components.

MBeans are used to represent resources that can be managed. In Chapter 1, “Getting Started,” you will start right off with a classic Hello, World example and walk through instrumenting a resource. You will also be shown, with help of a code example, how the management interfaces are created. You will learn to deploy the MBean and will see how it can be accessed via a management application.

Chapter 2, “Architecture,” will give you a detailed look at the management architecture the JMX specification defines. You will see where the different parts of the architecture, the agent, the MBeans, the management applications, and the various connectors and protocol adaptors fit.

Chapter 3, “Standard MBeans,” Chapter 4, “Dynamic MBeans,” and Chapter 5, “Model MBeans,” describe the different types of MBeans in detail, covering all the aspects of the resource instrumentation. Standard MBeans, Dynamic MBeans and the Model MBeans will be covered, including examples of implementing each type of MBean.

In Chapter 6, “MBean Server,” and Chapter 7, “Standard Agent Services,” you will concentrate on the JMX agent layer, taking an in-depth look at the different components that form the agent and covering all the standard agent services that the specification defines.

After you have finished Part I, “Java Management Extensions Specifications,” you will have gained all the necessary information to build JMX-compliant management solutions as defined in the specification.

Part II: JMX in the J2EE Platform

In the second part of the book, you will concentrate on the distributed services level of JMX and how they can be implemented with the help of the J2EE platform. In most cases, you will go into detailed implementation of features that are discussed in Part I, extending the ideas and functionality present in the specification.

Part II will start by building a specialized Model MBean implementation in Chapter 8, “XMBean: Model MBean Implementation.” You will see how many of the features of Model MBeans can be implemented. Specifically, you will implement a Model MBean that is able to retrieve its management interface from an external source, in our case, from an XML file.

Chapter 9, “Connectors and Protocol Adaptors,” concentrates on the basics of JMX distributed services level—the connectors and protocol adaptors. You will implement a basic RMI connector and look at some of the existing legacy integration options through an SNMP adaptor.

In Chapter 10, “JMX Distribution Layer with J2EE Services,” you will move on to more advanced distribution implementations for JMX. Specifically, you will leverage the J2EE platform to implement location transparency for MBeans, build an asynchronous connector with JMS, and build another synchronous connector with SOAP.

Chapter 11, “JMX for the Administrator,” will cover some of the future directions in management and focuses on the work done by the JSR-77 expert group to define a management model for the J2EE platform.

In Chapter 12, “JMX as Server Architecture,” you will see how JMX can be used as a core infrastructure to implement application servers. You will take a detailed look at how JBoss, the open source J2EE server, leveraged the architecture and modularity provided by JMX to implement a fully-modular server architecture.

After you are finished with the book, you should have a very solid understanding of the JMX specification and how to implement management solutions on the JMX architecture. In addition, you should have a solid view of how to use the JMX with the J2EE platform and how the future of the J2EE management will look.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.118.12.50