www.enhydra.org
 
 
FRONT PAGE

Introducing the Lutris EAS 4
Management Console

David H. Young, Lutris Technologies

One of the Lutris value adds in EAS that is not part of the Enhydra open source family is LMC, the Lutris Management Console. LMC was designed to monitor and manage Lutris EAS servers and its EAS services as well as Web applications including Enhydra style applications, WARs and EARs. LMC and the Services Architecture speak the management language of JMX. In particular, they use the JMX MBean interface to exchange and manipulate information. One of the exciting aspects of the Services Architecture is that every facility/service consists of at least one MBean, meaning that all aspects of the Lutris EAS environment have been instrumented for management.

One of the compelling uses of LMC is as a learning tool for understanding how Lutris EAS is organized as a hierarchy of facilities, services and applications. My goal in the article is to simply bring out some of the subtle and not-so-subtle aspects of LMC in order to set you on your with with this impressive new management tool.

The Lutris Services Architecture automatically generates a single MBean when a service is created using the TAP interface. (Developers of EAS Services can add additional MBeans for enhanced management view of their service iplementations.) The result is that every service is manageable. LMC was created for us humans to be able to view, configure and alter the properties of these MBeans through a Swing (Java Foundation Class) graphical application.

Facilities, Services and the Services Architecture

In this discussion, I'll often refer to services and facilities. A quick definition of these terms is in order. A facility is the lowest common denominator in the construction of services and applications. A service composes one or more facilities. The service represents a meaningful description of capability that can be used by other services or applications. Reflecting one of the most powerful features of the Lutris Services Architecture is the fact that you can install, instantiate, version or remove any one of these facilities and/or services in a run-time setting.

With all of this flexibility to be leveraged, you will see why the creation of LMC and its feature set were essential to the management of this industry-leading architecture platform.

Getting Started

Getting started with LMC involves two steps: Starting the Lutris EAS application server and then connecting LMC with the instance of the running server. The graphic below focuses on the "Server" pulldown menu, from which every option you need is provided for starting and connecting to the server. Some of these features can also be accessed from toolbar icons.

The dialog for locating and starting the server is displayed below. The box with the ellipses will generate a file/directory dialog box for locating the server if one is not listed by default, or you want to locate another server.

As I mentioned, some of the menu commands are offered as convenient toolbar icons. Launching the connection dialog is one of them. In the connection dialog, there are options provided for taking different ways of identifying the server instance or instances to which you want to connect. One of them includes a Search method for viewing the environment for running servers.

Explorer Area

If you are familiar with the Window's Explorer tool, then you'll recognize the general view that LMC provides. In addition to the main menu bar and the toolbar, LMC supports three different areas of activity. The Explorer area presents different views of expandable and contractable hierarchies of objects. Objects represent everything from old-style Enhydra applications to facilities, services, MBeans, MBean attributes and something called Virtual MBeans, a Lutris innovation. The Explorer Area is shown in the screenshot below.

As you'll discover by simply moving your cursor around the Explorer, the use of tooltips makes the information contained within each object more available to you. Context-sensitive operations that are available on selected objects of the hierarchy become apparent in the form of pop-up menus when you click on the right button of your mouse. Be sure to keep this in mind throughout your exploration of LMC. A lot of hidden functionality is accessible to you simply by right-clicking your mouse.

The Workspace Area delivers the details of the object you selected in the Explorer window. In most cases, the selected object represents an MBean. In the screenshot above, I've selected the ContMgr (Container Manager) MBean associated with the Web Container Service facility group, the attributes of which are shown in the workspace window. Within the Workspace window, you can monitor or even modify attributes within the MBean. Permissions to do so are provided on a per-attribute basis.

The Info Area features some of the more intriguing capabilities. The "Status History" tab displays run-time messages transmitted from the connected EAS server. It also will display error messages if, for example, you entered an illegal value in an MBean's attribute field. These error messages are "live links" related to the affected attribute and give you the ability to rollback the attribute to a previously legal value.

The Toolbox tab also demonstrates the dynamic nature of LMC. It gives you the ability to click and drag references from the Workspace onto the toolbox window. For instance, you could drag the MBean graphic at the top of the workspace into the toolbox. In essence, you create a visual shortcut similar to the Window's shortcut feature. But there's even great granularity provided. You can do the same operation at the attribute area. Say, for example, you are interested in the attribute dealing with the number of servlet containers available in the Web Container Service. I've dragged this attribute from the worksapce into the Toolbox where it will remain until I remove the shortcut. This behavior persists across sessions of LMC. To help you organize your collection of saved shortcuts, the Toolbox features 4 sub-tabs to which you can apply your own organizational methodology.

LMC Configuration

The Explorer, Info and Workspace areas are all windows in their on right. Using the main menu's View command, you can "separate" each area from the main console where you can then organize them as independent windows. LMC persists this configuration across invocations of LMC, therefore leaving your layout in the same orientation in which you left it.

You can also define the behaviors of the the Explorer and Workspace. The Preferences dialog above can be activated by using the main menu path "Edit->Preferences..." Play with the different radio button options in order to see the kinds of effects that might suit your working style, including MBean-per-tab or stack of Mbean cards.

Virtual MBeans

Not all Workspace items are representations of MBeans. The example below demonstrations the concept of "Virtual MBeans," a Lutris innovation that gives the developer the ability to create "management views" that incorporate different data sources. I've selected a "FacilityGrp" called Kernel Services. It consists of four facilities, loader, socket, thread and time. Kernel Services is not an MBean. Instead it is a Virtual MBean created to present this logic view of related facilities.

If you're not sure when you're looking at a Virtual MBean, the give away is appearance of the 3 icons to the left of the Workspace (the triangle, ? and graphing icons).

Qualifiers

A limitation of the MBean interface is that they simply publish the information behind their field and method signatures. To create a more meaningful management picture, Lutris intorduced the concept of Qualifers. Qualifers are a new feature in EAS. Qualifiers are added during deployment. Developers can use Qualifiers to enhance the management picture of their service. Through the use of Qualifers, a developer can make their application a friendlier application to management, reducing support complaints from their customers.

A Qualifier may, for example, give the range of values on a "CheckLevelObject" field/attribute in an MBean. Qualifier gives you ability to do context-sensitive tooltip or perform range checking for simple min and max values.

It's now time for you to launch the Lutris Management Console. Remember some of the points of interest I've collected in this article, particularly the use of tooltips and exploring hidden options with the click of the right mouse button.

 
TOP

Lutris Technologies    Legal Notices    Privacy Policy