SOA Web Services XML: Why WSDM Matters
The role of WSDM in distributed IT management
Aug. 3, 2005 08:45 AM
Events and Notifications
Besides querying for and configuring resources, a WSDM consumer can receive event notifications when certain changes occur to a resource. The notification mechanism allows management events to be transported in a consistent manner, relying on the specifications defined within WS-Notifications. The WS-BaseNotification and WS-Topics would be used for defining message patterns and categories for the appropriate publish-subscribe interactions.
A specific event can be described using the ManagementEvent tag. Listing 1 shows a simple example of management event where a resource is associated to that event (via the SourceComponent element). The Situation element is used to describe a specific type of event situation, status, time that the situation occurred, and a relevant event message. Consumers can thus more consistently receive updates of status changes to resources being monitored.
WSDM supports the discovery of resources through Advertisements and Relationships. With WSDM Relationships, you can model the associations that exist between system resources (e.g., a disk drive attached to a host computer). Relationships can be used to auto-discover a set of IT resources, given a root element specified with WS-Addressing. Querying the Relationship resource property of a resource identifies known relationships.
A consumer can be configured to receive notifications of new relationships through the RelationshipCreated topic. Another capability, WSDM Advertisement, makes it possible to notify a consumer when new resources are created.
With these capabilities, you can keep your inventory of IT resources and relationships up-to-date, thereby enabling real-time configuration management and better insight into the impact of IT on the business. To illustrate this even better, let's turn our attention to two WSDM-based case studies.
Case Study #1: Determining IT Impact on the Business
Today, there is an ever-growing complexity in managing Web services and business processes. Management needs for this type of system include the need to understand how business processes relate to the underlying IT infrastructure. If a business process is running slow, you may need to trace the root cause to a database problem. You may want to determine what business processes are impacted by infrastructure degradations. Or, you might want to determine what business users are impacted when a network is overutilized.
In these scenarios, you need to be able to adapt business processes more quickly when there are infrastructure failures, poor performance, etc. WSDM is one technology that can be used to solve this problem. For example, let's say we want to manage a set of business processes that have been developed. In this scenario, the following questions may need to be answered:
- How can we automatically discover changes in the business processes and map them to infrastructure elements?
- How do we allow configuration of this environment from an EMS?
- How do we provide impact analysis information back to the BPM provider (e.g., TIBCO, webMethods, etc.) in a standards-based way?
Given these requirements, let's think about how we might design a solution that uses WSDM-based technologies. First, we need to make it easy to query for and get updates on the management model exposed by the BPM tool. Specifically, we could build a WSDM gateway that could interact with the native management interfaces and translate them into WSDM-based interfaces. These WSDM-based interfaces would expose a specific management model and provide notifications on changes to that model and events when problems occur.
As Figure 5 shows, an EMS could then consume this WSDM interface via a WSDM-EMS bridge. The management system could consume the BPM model and dynamically update graphical views representing the underlying business services. This dynamic capability would provide an IT operator with a real-time view into the state and health of deployed business processes. Furthermore, since the operator is also monitoring the IT infrastructure, automated correlation could be performed between the business events and other operational events.
With this architecture, problems such as SLA violations could be handled in one of two ways:
- The management system itself could expose a WSDM interface so the BPM tool could subscribe to certain events. The BPM tool could thus get dynamic feeds from the management system indicating not only that a problem occurred, but also how that problem impacted its business processes. The BPM tool could then make real-time adjustments, such as reconfiguring the business process.
- With the WSDM interface exposed by the BPM tool, an operator could perform fine-grained configuration on these management resources directly using a diagnostic tool that understands how to query for and configure WSDM resources.
The end result is a flexible, configurable architecture that allows an EMS to interact with a WSDM-based resource as well as provide capabilities for fine-grained configuration and control, event notification and correlation, and dynamic views of the business services and their relationship to IT infrastructure.
Case Study #2: Managing Service-Oriented Architectures
In the second case study, let's turn our attention to the management of service-oriented architectures (SOAs). An SOA, which consists of loosely coupled services that are discovered, invoked, and composed, is one approach to address the many challenges of changing markets, new customer demand, and emerging technologies. However, organizations wishing to manage an SOA deployment must still address fundamental questions such as: