Part VILegacy Features
This part describes features of the Java Dynamic Management Kit (Java DMK) that
have been superseded by newer features, but that have been retained for purposes
of backwards compatibility. Most of these features have been superseded by
the implementation of the Java Management Extensions (JMX) Remote API in Java DMK 5.1.
The old remote management applications described in this chapter are still
fully functional, however, as are the old implementations of cascading and
heartbeat.
In Part III, Remote Management Applications, we saw how to manage agents programmatically
using the new connectors defined by JMX Remote API. In this part, we present
the older protocol connectors and proxy MBeans you can use for managing agents
programmatically.
Java DMK defines the APIs needed to develop distributed management applications
in the Java programming language. As of release 5.1 of Java DMK,
the connectors defined by the JMX Remote API are the standard means for remote
applications to establish connections with agents. However, in previous versions
of Java DMK, connections were established through protocol connectors
over remote method invocation (RMI), hypertext transfer protocol (HTTP), or
secure HTTP (HTTPS). The principle, however, remains the same: a connector
client object exposes a remote version of the MBean server interface, the
connector server object in the agent transmits management requests to the
MBean server and forwards any replies.
The legacy connectors and proxies described here provide an abstraction
of the communication layer between agent and manager, but they also provide
other mechanisms. Notification forwarding with configurable caching and pull
policies lets you dynamically optimize bandwidth usage. The connector heartbeat
monitors a connection, applies a retry policy, and automatically frees the
resources when there is a communication failure. Finally, the connector server
in an agent can act as a watchdog and refuse unauthorized requests based on
the type of operation.
The implementation of JMX Remote API in Java DMK has also superseded
the discovery and cascading services provided with previous versions of Java DMK.
The legacy cascading and discovery services are also described in this part.
This part contains the following chapters:
Chapter 21, Legacy Protocol Connectors shows how the legacy protocol connectors establish a connection between a management
application written in the Java programming language and a Java dynamic management
agent. Agents are identified by an address and port number; all other details
of the communication are hidden. All connectors also implement the heartbeat
mechanism to monitor the connection.
Chapter 22, Notification Forwarding in Legacy Connectors shows how notification
forwarding extends the concept of notification listeners to the
manager side. This chapter covers how manager-side listeners can register
with agent-side broadcasters. The example then shows how the connector client
and server interact to provide both pull and push modes for forwarding notifications
from the agent to the manager.
Chapter 23, Legacy Connector Security presents the security features that can be enabled for a given legacy connection.
The HTTP-based legacy connectors include a password mechanism that refuses
unauthorized connections. Context checking and the general filtering mechanism
can implement a complex algorithm for allowing or disallowing management requests
to an agent. Finally, the HTTPS connector encrypts and protects data as it
transits over the network between connector client and server components.
Chapter 24, Legacy Proxy Mechanism describes how
legacy MBean proxies represent MBeans so that they are
easier to access. A proxy object exposes the interface of its MBean for direct
invocation. It then encodes the management request which it forwards to the
MBean server and returns any response to its caller. Specific proxies can
be generated for standard MBeans, but dynamic MBeans can only be accessed
through generic proxies, similar to their DynamicMBean
interface.
Chapter 25, Legacy Cascading Agents shows how cascading
agents allow a manager to access a hierarchy of agents through
a single point-of-access. The subagents can be spread across the network,
but their resources can be controlled by the manager through a connection
to a single master agent. MBeans of a subagent are mirrored in the master
agent and respond as expected to all management operations, including their
removal. No special proxy classes are needed for the mirror MBean, meaning
that every MBean object can be mirrored anywhere without requiring any class
loading.
|