The Java Dynamic Management Kit relies on Java Management extensions (JMX) principles to manage resources. In order to ensure that your resource is a manageable resource, you need to make sure that it adheres to the JMX specification, as the JMX instrumentation level provides a specification for implementing JMX manageable resources. Manageable resources are implemented as Managed Beans, or simply MBeans. An MBean is a manageable resources that conforms to certain design patterns and may be any resource you wish to manage (for example, an application, an implementation of a service, a device, a user, and so forth). These resources are developed in Java, or at least offer a Java wrapper, and have been instrumented so that they can be managed by JMX-compliant applications. For more information regarding MBeans, please refer to "MBeans".
The Java Dynamic Management Kit 4.1 implements the v1.0 public release 2 of the Java Management Extensions Specifications (JMX). JMX defines an architecture, design patterns, APIs, and services for application and network management, all under a single umbrella specification. The Java Dynamic Management Kit 4.0 was the first commercial product to implement the first public release of the Java Management extensions specifications (JMX). For more information regarding JMX, see the Java Management Extensions specifications document provided with the Java Dynamic Management Kit 4.1.
One of the greatest advantages of the Java Dynamic Management Kit is that it allows you to manage resources from a remote location. Thus, you can manipulate proxy objects which transparently map onto MBeans in a remote agent.
You can access all remote JMX manageable resources by:
Getting an attribute value.
Changing an attribute value.
Invoking an operation.
Receiving a notification emitted by a manageable resource.
The manager can also add new remote JMX manageable resources by:
Using existing Java classes already loaded in the agent.
Using new classes downloaded from an arbitrary location.
The Java Dynamic Management Kit greatly simplifies the development of management applications by providing multi-protocol communication between the manager side and the agent side. Devices or applications can be managed directly via a basic Web browser or through an existing SNMP management application. An extensible set of protocol adaptors (for example, HTTP, SNMP) and connectors (for example, HTTP/SSL, RMI) are provided to allow developers to adapt their applications to the local communication environment.
To create brand new agents, use a managed object generator (proxygen), which is provided with the Java Dynamic Management Kit. With this tool, you can create applications with automatically-generated remote access modules that handle communication support and protocol transparency. Simply put, you can create a proxy object for each JMX object you wish to manage remotely.
The Java Dynamic Management Kit 4.1 also provides a toolkit for developing SNMP agents and managers, including the mibgen compiler, which takes as input a set of SNMP MIBs and generates standard MBeans that implement the MIBs.