|
Summary: The Service Grid Management Framework centralizes the management of Service Grid components distributed across the network.
OverviewTraditionally, massively distributed systems such as those enabled by the Service Grid are notoriously difficult to manage. The user has had to manage each node of the distributed system individually. The Service Grid introduces a management System to solve the challenges of managing nodes on the network.
How it WorksThe Focal Server uses Jini Discovery to discover remote JMX MBeanServers on the network. A proxy MBean is registered at the Focal Server for each remote MBean of each discovered MBeanServer. The proxy forwards all MBean attribute and operation requests to the remote MBean via standard JMX Remoting. The remote MBeanServer is also monitored for MBean registration changes. The proxy MBeans are then adjusted to match the remote MBeanServer. Focal Server RequirementsThe Focal Server requires that participating remote MBeanServers be available over the network and be registered with either a Jini Lookup Service or have its URL available manually. Using JMX Standard MBeansAll built-in MBeans are implemented as JMX Standard MBeans. Therefore, all MBeans have matching interfaces with names ending in MBean, for example, <class name>MBean. Moreover, Mbeans that support JMX Notifications should implement the NotificationEmitter interface. Service GridThe Service Grid is instrumented using the above guidelines. Both the GSMs and GSCs expose MBean interfaces and are registered on startup by default. In the GSCs, all ServiceBeans and Watches are automatically registered as MBeans too. Below is a list of MBeans:
ServiceBeanAdapter implements NotificationEmitter, making all Service Beans capable of sending JMX Notifications. Sub-classes should add their MBeanNotificationInfo to the protected mbeanNoticationInfoList member. Notifications must then be sent using the NotificationBroadcasterSupport, that is returned by the protected method getNotification-BroadcasterSupport(). End-User ServiceBeansThe end-user ServiceBeans can extend the standard ServiceBean MBean interface by providing their own MBean interface, for example, MyMBean. The ServiceBean must then extend ServiceBeanAadapter and implement MyMBean. It is the user's responsibility to implement MyMBean interface keeping the instrumentation guidelines in mind. POJO SupportLike ServiceBeans above, end-user, POJO-style, Service Grid services must implement a MBean interface. The Service Grid dynamically generates a sub-class of the ServiceBeanAdapter, which also implements all the of the POJOs interfaces. As a result, the JMX framework supports POJOs as if they were direct extensions of ServiceBeanAdapter described above. JMX Enabled SpaceAlthough the Space exposes a tremendous amount of administrative information and operations, it is not currently JMX enabled. The effort to JMX enable the Space largely resembles the instrumentation of POJOs. It is very important to ensure the right JMX MBeanServer, which is facilitated by using the provided JMXUtil, is used. Next should be the task of simply creating JMX Standard MBean interfaces that match the whole or the subset of current Space administrative functionalities. Spring JMX SupportThe JMX support in Spring provides the capability to integrate a Spring application into a JMX infrastructure. Ensuring interoperability with this feature in Spring is on the roadmap, but out of scope for the first release of the Focal point server. Command Line InterfaceThe Command Line Interface(CLI) feature is set generally intersect that of the JMX Framework. These include the listing of available services on the network, administrative tasks such as starting and stopping services, and introspection of service properties. However, the CLI is arbitrarily extendable. It's likely that there are current and future CLI functions that is or will be beyond pure management focus of the JMX Framework. Therefore, the two efforts remain independent. Focal Server Jini ConfigurationUsing Jini Configuration to configure the Focal Server adds the flexibility to fine tune the Server, and supports the registration of end-user MBeans and Adapters. Performance ImpactIn general JMX is pull-based, meaning whatever the overhead that is needed in order to return the JMX data is only needed when JMX calls for it. This usually results from the operator refreshing the JMX frontend screen or periodically pulled by scripts for automated monitoring. |
Wiki Content Tree
Your Feedback Needed!
We need your help to improve this wiki site. If you have any suggestions or corrections, write to us at techw@gigaspaces.com. Please provide a link to the wiki page you are referring to.
Add Comment