As integration software becomes a mission-critical element of the enterprise infrastructure, the ability to manage it accordingly becomes of paramount importance. Partnering with Hewlett Packard, webMethods has helped define the Open Management Interface (OMI), which is fast becoming the lingua franca for systems management solutions. OMI is a Web-service based specification that provides unprecedented interoperability among existing systems management solutions. For the first time, operations staff can use their existing management consoles to get an end-to-end, enterprise-wide view of all managed resources, including their integration systems. This article gives you a deep-dive on one of the most useful applications of Web services to date, managing integration systems with the Web service-based OMI specification.
The OMI Specification
The Open Management Interface is a management specification jointly authored by Hewlett-Packard and webMethods. The intent of OMI was to provide an easy, open way for systems management vendors and other interested parties to access and manage the resources associated with an integration platform and it's associated business processes. What has been developed is a generic and extendable interface, accessed as a set of web services (i.e. via SOAP, XML and HTTP). Through this interface 3rd party applications can manipulate a set of OMI objects as managed resources. The OMI specification defines a set of standard attributes, operations and notifications for each type of OMI managed resource as well as the relationships between OMI managed objects. The OMI specification has been endorsed by the four leading System Management Vendors (SMVs) and incorporated into their product lines. These products are HP OpenView, CA Unicenter, BMC Patrol and IBM Tivoli.
Characteristics of Managed Objects
OMI-managed objects within the integration system landscape include servers, brokers, adapters, web services, and business processes and have these characteristics:
- Status. This represents the current working state of the object.
- Attributes. These represent various statistics and configuration information about the object; for example, how many times a web service has been executed and how long each execution took.
- Operations. These are the management actions that can performed on the object, for example, start, stop, and restart.
- Notifications. These represent the set of events that can be generated by the object to notify operations staff of some important change in the objects behavior; for example, a server has just crashed.
- Relationships. These represent the relationships that this object has with other objects in the environment. For example, an server might be associated with one or more business processes (and vice versa).
As business processes and integration become more and more complex, the need to "manage by association" becomes increasingly important. This means that you need to know and understand not only the current state of the each component itself, but also how this component relates to other resources in the integration platform. Through OMI, management solutions can provide details of the relationships between every integration component and its environment. Thus operation staff can, from one end, find every business process that relies on a particular integration component for correct operation, and from the other, find every resource that is required by a particular business process in order for the business process to function correctly. This type of relationship information becomes a fundamental requirement when trying to find the "root cause" of a complex business process outage.
The Open Management Interface itself contains approximately 12 SOAP operations that are used to manipulate a set of managed objects. Some of the main operations include:
- GetRootObject - returns the top most managed object available.
- GetObjectDescription - returns the definition (meta-data) associated with an object.
- GetObjectRelations - returns all relationships associated with a given object.
- GetAttributeValues - returns the current values associated with an object.
- RegisterNotificationListener - receives all new notifications (events) that are generated.
- InvokeOperation - executes a management operation (such as start or stop) associated with an object.
Here is an example of the SOAL XML used to invoke the GetRootObject operation:
<?xml version="1.0" encoding="UTF-8" ?> <Envelope xmlns="https://schemas.xmlsoaporg.org/soap/envelope/"> <Header> <omiHeader xmlns="urn:omi-org:api"> <version>1.0</version> </omiHeader> </Header> <Body> <getRootObject xmlns="urn:omi-org:api"> </getRootObject> </Body> </Envelope>
And here is the associated SOAP return message:
<?xml version="1.0" encoding="UTF-8" ?> <Envelope xmlns="https://schemas.xmlsoaporg.org/soap/envelope/"> <Body> <objectName xmlns="urn:omi-org:api"> object-name </objectName> </Body> </Envelope>
How OMI Works with Enterprise Management Solutions
Since OMI is a Web service-based protocol, any management console can interact with an OMI-enabled object via its WSDL interface. This abstracts the console from any system-specific complexity.
Figure 1 - The separation between the console and the resources that are being managed.
Enterprise management consoles normally interact with the managed environment in a number of different ways, in order to gather the information required. OMI makes this information available is an easy and consistent way. Some of these interactions include:
- Discovery. The management console, through a series of OMI calls, can discover all managed objects in the environment. OMI defines a "containment tree" that can easily be "walked" through calls to the getObjectRelations function.
- Event Processing. Normally one of the first tasks of any management console is to consolidate events (notifications) from all managed resources and provide a unified view of these events. OMI provides a simple function that allows the management console to listen and receive all (or a filtered set of) notifications from the integration platform.
- Fault Detection. Fault detection is one a management console's primary functions. Since any change to the status of a managed object is reflected in a status change notification, so management consoles can easily detect any failure condition and notify operations staff as appropriate.
- Fault Correction. Fault correction is often a very complex task. Problems occur when the failure of one component leads to the failure of many other components (imagine a computer going down, causing the failure of all software components on it). This causes "event storms" - large numbers of events coming in to the management console. Operations staff can become swamped with problems and find it difficult to know where to begin the correction process. The ability to automatically sift through these events, looking for the "root cause" of such failures can mean the difference between solving the problem in a few minutes and solving it in a few hours. OMI provides a complete set of relationship information for all managed objects. Management consoles use this information to perform "root cause analysis" and pinpoint important failures quickly.
- Performance Analysis. Apart from keeping the environment running, the next most critical function of a management console is to be able to measure and report on the performance of the system. OMI provides a set of metrics associated with each managed object. Management Consoles can use the GetAttributeValues function to query managed objects for the current value of specific metric attributes and use these values as part of threshold calculations, store them and produce historical graphs for trending and capacity planning or use them to produce reports on throughput or service levels.
Figure 2 shows a service view from the HP OpenView management console. The screen not only shows webMethods infrastructure objects, such adapters and brokers, webMethods business processes and their steps, but also non-webMethods objects, such as an SAP system. SAP is not managed through OMI, but is managed directly by OpenView. In this case an SAP instance has failed. More importantly, the effect of this failure on the business is quickly apparent. Through the OMI relationships, OpenView has been able to depict that the failure of SAP will also cause the failure of various webMethods components, and cause the failure of a particular business process.
Figure 2 - HP OpenView Management Console
Benefits of OMI
OMI uses a standard set of Web services to manage the entire integration system and has a number of benefits:
- Leverage existing systems management investment - Because of the interoperability of Web services, managed objects that implement the OMI specification can easily plug into whatever management solution is already in place. This prevents the need to introduce another console into the IT management process, eliminating training costs and dramatically shortening the learning curve. This reduces the total cost of ownership for the integration platform while extracting more value from the systems management investment.
- Faster "business root cause" analysis - For the first time, a single management interface can monitor business processes in addition to all system resources. OMI bridges the gap that existed between the business process layer and the physical resources and enables correlation across these layers. This leads to faster "business root cause" analysis - i.e. easier fault detection, correction and more accurate reporting all the way up to the business process layer . Faults that could have taken hours to find can now be detected and corrected in seconds, leading to much higher uptime and thus a much greater return on the initial investment.
- Inter-enterprise management - OMI allows companies to extend their management visibility across firewall boundaries. This is becoming an increasingly difficult problem to solve as more companies merge or form strategic partnerships such that important business processes span company boundaries.
Managing Integration Systems with webMethods Manager
The webMethods Manager Server is a full implementation of an Open Management Interface (OMI) Server. The Manager Server hosts packages that contain a standard set of OMI services, and a set of webMethods specific managed objects used to monitor and manage the webMethods Integration Platform. Components of the integration platform, such as integration servers, packages, Web services, brbuiness processes, are exposed to webMethods Manager as managed objects via the OMI interface. webMethods Manager provides of the following value-added services for managed objects in the webMethods integration platform:
- Discovery: Automatic discovery of resources at run-time.
- Monitoring: Status and health of resources in real-time.
- Management: Ability to manage resources from webMethods and a variety of system management vendor platforms, both proactively and reactively and take corrective action. Visualization tools provide a view of all integration components deployed worldwide to help operations staff quickly resolve issues and optimize business processes.
- Analysis: Recognize trends that can indicate performance bottlenecks and correlate infrastructure failures to the business processes that they affect.
Through the use of these sophisticated management products, operations staff can finally get a complete end-to-end, enterprise-wide view of all managed resources. From the router, through the operating system and the applications that run on them (such as CRM and ERP), all the way up to the business processes that span and integrate the enterprise, operations staff need to know how these resources relate to each other and the rest of the organization. This is an exciting new trend in management solutions, drastically reducing the number of different management products required by on organization, while increasing the overall effectiveness of the solution provided. It is only through webMethods Manager and OMI that the integration platform can truly be part of such grand management vision.
Copyright 2003. Originally published by webMethods, reprinted with permission. Learn how to do Web services-based integration with webMethods, download a free evaluation, demos, tutorials, forums, real-world customer architecture case studies.
For more information:
- Looking for free research? Browse our comprehensive White Papers section by topic, author or keyword.
- Are you tired of technospeak? The Web Services Advisor column uses plain talk and avoids the hype.
- For insightful opinion and commentary from today's industry leaders, read our Guest Commentary columns.
- Visit our huge Best Web Links for Web Services collection for the freshest editor-selected resources.
- Visit Ask the Experts for answers to your Web Services, SOAP, WSDL, XML, .NET, Java and EAI questions.
- Couldn't attend one of our Webcasts? Don't miss out. Visit our archive to watch at your own convenience.
- Choking on the alphabet soup of industry acronyms? Visit our helpful Glossary for the latest lingo.
- Discuss this article, voice your opinion or talk with your peers in the SearchWebServices Discussion Forums.