Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Channels ▼
RSS

Design

Use Embots to Implement Autonomic Computing


ACE
In order for autonomic systems to be effective, IBM stresses the need for the adoption of open standards. There is little hope for the seamless integration of applications across large heterogeneous systems if each relies heavily on proprietary protocols and platform-dependent technologies. Open standards provide the benefits of both extensibility and flexibility--and they are likely based on the input of many knowledgeable designers. As such, the widely used standards tend to come with all of the other benefits of a well thought-out design. Java has many advantages as the language for implementation of ACE, which includes its widespread industry use, platform independence, object model, strong security model, support for network computing and the multitude of open-source technologies and development tools available for the language.

WS-Management protocols are used for external communications and possess a natural synergy with the object model maintained by the autonomic manager. The Common Base Event (CBE) format is used for event information that flows between a MC and ACE. Tools exist to create adapters from CBE formatted events to a wide range of other formats.


Figure 4. ACE Architecture

Figure 4 shows that ACE is built using services, with a service-oriented-architecture, which can be plugged and unplugged dynamically; i.e. software hot swapping is supported. Services can be arranged in bundles, with bundle lifecycle management being the responsibility of the Open Services Gateway Interface (OSGi) standard.

OSGi is an effort to standardize the way in which managed services can be delivered to networked devices. It is being developed through contributions by experts from many companies in a wide variety of fields (such as manufacturers of Bluetooth devices, smart appliances, and home energy/security systems). An open specification is provided for a service platform so that custom services can be developed (in Java), deployed, and managed remotely.


Figure 5. Combining Policy

As shown in Figure 5, policies implemented within embots are designed to be combined. Combination of policies allows for the creation of control loops--an architectural requirement in Autonomic Computing. In the example shown in Figure 5, a resource escalation policy can be instantiated for disks, and that, combined with a chronic scenario policy can be used to drive capacity planning activities. Combination of policies is achieved through having one policy listen for changes in another. Reuse of policy--of general-purpose knowledge--is a key goal in Autonomic Computing. For example, the knowledge included in a disk cleanup policy should be applicable to Windows and Linux; however, the instrumentation required to implement it must be different.

EAF supports the previous statement through separation of the sensor and effector layers into two distinct facets and managed object modeling. This is shown in Figure 6, where an upward-facing component provides sensor and effector feedback information in a standardized format regardless of the managed element being managed. It is the managed object (e.g. a disk) that listens to the upward-facing sensor. Policies, in turn, listen for changes in the value of specific managed object attributes.

The downward-facing component of the layer is implementation-based and deals with the platform-specific details of instrumentation. By doing this, policy achieves the goal of reuse for the two environments by creation of distinct implementations of sensor and effectors for the two operating systems.


Figure 6. Sensor and Effector Layers

Summary
Server total cost of ownership continues to rise while server reliability and availability does not. Conventional client-server system management solutions have failed to deliver the availability normally expected of telecommunications products. The need for a new approach to systems management is therefore clear.

Recently, IBM's Autonomic Computing initiatives clearly identified the need for embedded, intelligent system management. ACE, with its embot concepts, delivers Autonomic Computing for client and server computers.

About the Authors: Jay Litkey: Is the CEO of Embotics. Before Embotics Jay founded Symbium, a venture capital funded company focused on Autonomic Computing and the automated management of IT infrastructure, where he managed business development and product management. Prior to that, Jay was the founding CEO of BlackholeTV, an Internet public video content aggregation and technology company. Jay is a frequent conference speaker, started his career at Nortel Networks in the design and development of high availability telecommunications management subsystems, and holds an Honors degree in Computer Science from Queen's University. He can be reached at: [email protected]

Tony White: Is the CTO of Embotics. Prior to Embotics, Tony served as CTO at Symbium, setting the technology vision and serving as principal architect. At Texar, as Chief Scientist, he built and managed an R&D group of 35 engineers. While at Nortel Networks he was the principal architect for the Expert Advisor, a multi-agent diagnostic system for X.25 networks. He has published over 70 papers on subjects that include Network and System Management, Multi-agent systems, Swarm Intelligence, and Autonomic Computing. He has been awarded 7 patents with several others pending. Tony can be reached at: [email protected]


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.