No Content Page No



Download 156.98 Kb.
Date28.05.2018
Size156.98 Kb.
#50784

Autonomic Computing

Index

No

Content

Page No

1

Introduction

2

2

Need of Autonomic Computing

3

3

Characteristics

5

4

Conceptual Model

12

5

Advantages

13

6

Applications

15

7

Conclusion

16

Introduction

Autonomic Computing refers to the self-managing characteristics of distributed computing resources, adapting to unpredictable changes whilst hiding intrinsic complexity to operators and users.

Autonomic computing was implemented by IBM in 2001. Autonomic computing is a self-managing computing model named after, and patterned on, the human body's autonomic nervous system. An autonomic computing system would control the functioning of computer applications and systems without input from the user, in the same way that the autonomic nervous system regulates body systems without conscious input from the individual. The autonomic nervous system monitors your heartbeat, checks your blood sugar level and keeps your body temperature close to 98.6°F without any conscious effort on your part. In much the same way, autonomic computing capabilities anticipate IT system requirements and resolve problems, with minimal human intervention. As a result, IT professionals can focus on tasks with higher value to the business.

The goal of autonomic computing is to create systems that run themselves, capable of high-level functioning while keeping the system's complexity invisible to the user. The main focus of autonomic computing is how to make system components self-configuring and self-managing.

Many industry leaders, including IBM, HP, Sun, and Microsoft are researching various components of autonomic computing.

Need of Autonomic Computing

Managing complex systems has grown too costly and prone to error. People under such pressure make mistakes, increasing the potential of system outages with a concurrent impact on business. The following points will reveal more about need of autonomic computing.

It is now estimated that one-third to one-half of a company’s total IT budget is spent preventing or recovering from crashes.

● Nick Tabellion, CTO of Fujitsu Softek, said: “The commonly used number is: For every dollar to purchase storage, you spend $9 to have someone manage it.”

● Aberdeen Group studies show that administrative cost can account for 60 to 75 percent of the overall cost of database ownership (this includes administrative tools, Installation, upgrade and deployment, training, administrator salaries, and service and support from database suppliers).

● When you examine data on the root cause of computer system outages, you find that about 40 percent are caused by operator error, and the reason is not because operators are not well-trained or do not have the right capabilities. Rather, it is because the complexities of today’s computer systems are too difficult to understand, and IT operators and managers are under pressure to make decisions about problems in seconds.

● A Yankee Group report estimated that downtime caused by security incidents cost as much as $4,500,000 per hour for brokerages and $2,600,000 for banking firms.

● David J. Clancy, chief of the Computational Sciences Division at the NASA Ames Research Center, underscored the problem of the increasing systems complexity issues: “Forty percent of the group’s software work is devoted to test,” he said, and added, “As the range of behavior of a system grows, the test problem grows exponentially.”



In a survey made on causes of outrages in four areas, most frequently found outrages are:

  • For systems: operational error, user error, third party software error, internally developed software problem, inadequate change control, lack of automated processes.

  • For networks: performance overload, peak load problems, insufficient bandwidth.

  • For database: out of disk space, log file full, performance overload.

  • For applications: application error, inadequate change control, operational error, nonautomated application exceptions.

This results in the need for self-managing systems and new development approaches that can deal with real-life complexity and uncertainty. The challenge is to produce practical methodologies and techniques for the development of such self-managing systems, so that they may be leveraged to deal with failure and recover easily.

Characteristics of Autonomic Computing
The Autonomic Computing System must have the following characteristics.

  • To be autonomic, a computing system needs to “know itself”- and comprise components that also possess a system identity.

  • An autonomic computing system must configure and reconfigure itself under varying and unpredictable conditions.

  • An autonomic computing system never settles for the status quo- it always looks for ways to optimize its workings.

  • An autonomic computing system must perform something similar to healing- it must be able to recover from routine and extraordinary events that might cause some of its parts to malfunction.

  • A virtual world is no less dangerous than the physical one, so an autonomic computing system must be an expert in self-protection.

  • An autonomic computing system knows its environment and the context surrounding its activity, and acts accordingly.

  • An autonomic computing system cannot exist in a hermetic environment.

  • Perhaps most critical for the user, an autonomic computing system will anticipate the optimized resources needed while keeping its complexity hidden.

Among these, four fundamental properties are very important and they are as follows,

  • Self Configuration

  • Self Healing

  • Self Optimization

  • Self Protection



Figure 1. Main characteristics of Autonomic Computing

1) Self-Configuration

Autonomic computing systems should have the ability to adapt automatically to the dynamically changing environments. The growing complexity brings the operating environment of computing systems unpredictable, and makes the computing systems brittle, uncertain. To address these problems, an autonomic computing system should be aware of its operating conditions, have the ability to predict trends and adapt itself to this changing environment. Two different levels of adaption are, in system level a new system component should be able to configure itself into an existing infrastructure automatically, and the rest system components will adapt to its presence much like a new cell in the body or a new person in a population. For example, with this level of adoption a new computing node with special functions will be seamlessly added into a large computing network. In component level, each component is again a self-managing system (autonomic element), and should be able to configure itself” on-the fly.

Autonomic System can dynamically adapt to changing environments. Self-configuring components adapt dynamically to changes in the environment, using policies provided by the IT professional. Such changes could include the deployment of new components or the removal of existing ones, or dramatic changes in the system characteristics. Dynamic adaption helps ensure continuous strength and productivity of the IT infrastructure, resulting in business growth and flexibility.

2) Self-Healing

Autonomic computing systems should have the ability to repair failed components without the disruption of system services. Systems and critical services must not be crashed, disrupted even under the extreme conditions. To achieve it, autonomic computing systems must have the ability to recovery from an unexpected situation automatically. In this process of recovery, the information of components may be at first diagnosed, failed components will be localized using some mechanisms and then they will be isolated , fixed and reintroduced with the minimum of human’s intervention. Through this property autonomic computing becomes more robust and powerful.

Autonomic System can discover, diagnose and react to disruptions. Self-healing components can detect system malfunctions and initiate policy- based corrective action without disrupting the IT environment. Corrective action could involve a product altering its own state or effecting changes in other components in the environment. The IT system as a whole becomes more resilient because day-to-day operations are less likely to fail. Self-Healing is concerned with ensuring effective recovery when a fault occurs. This means successfully identifying the fault and then, where possible, repairing it. Also, there should be minimal disruption to users, avoiding loss of data and significant delays in processing.

3) Self-optimization
Autonomic computing systems should have the ability to monitor and tune resources automatically. The above properties self configuration and self-healing will make autonomic computing powerful, but thinking of that, can an autonomic computing system always be powerful? The answer is obviously NO. To keep autonomic computing always powerful, an autonomic computing system need to continually maximize resource utilization efficiently, like the brain modifies its circuitry during learning. This process may be accomplished using some advanced feedback functions and parameter negotiations. Some existed technologies like logical partitioning, dynamic workload management, and dynamic server clustering are the examples of this property.

Autonomic System can monitor and tune resources automatically. Self-optimizing components can tune themselves to meet end-user or business needs. The tuning actions could mean reallocating resources—such as in response to dynamically changing workloads—to improve overall utilization, or ensuring that particular business transactions can be completed in a timely fashion. Self-optimization helps provide a high standard of service for both the system’s end users and a business’s customers. Without self-optimizing functions, there is no easy way to divert excess server capacity to lower priority work when an application does not fully use its assigned computing resources. In such cases, customers must buy and maintain a separate infrastructure for each application to meet that application’s most demanding computing needs. Self-optimization means that a system is aware of its ideal performance, can measure its current performance against that ideal and has strategies for attempting improvements.



4) Self-Protection
Autonomic computing systems should have the ability to anticipate, detect, identify and protect against attacks from anywhere. The security issue nowadays is a key issue for all systems, autonomic computing will not be an except. System components should be able to incorporate themselves to defend as a whole against large-scale attacks. In order to protect against unauthorized resource accesses and misusing resources, they should define and manage user accesses to all sharing and their own resources. Their communication channels should also be protected from eavesdropping and traffic analysis.

Autonomic System can anticipate, detect, identify and protect against threats. Self-protecting components can detect unfriendly behaviors as they occur and take corrective actions to make themselves less unprotected. The unfriendly behaviors can include unauthorized access and use, virus infection and proliferation, and denial-of-service attacks. Self-protecting capabilities allow businesses to consistently enforce security and privacy policies. A self-protecting system will defend itself from accidental or malicious external attack. This means being aware of potential threats and having ways of handling those threats. This may include self-healing actions if an attack is successful, and perhaps some self-optimization to increase protection. Self-configuring is a system’s ability to readjust itself automatically to changing circumstances. This may simply be in support of ongoing development or to assist in self-healing, self-optimization or self-protection.



Control loops
A basic concept that will be applied in Autonomic Systems are closed control loops. This well-known concept stems from Process Control Theory. Essentially, a closed control loop in a self-managing system monitors some resource (software or hardware component) and autonomously tries to keep its parameters within a desired range.

According to IBM, hundreds or even thousands of these control loops are expected to work in a large-scale self-managing computer system.





Figure 2. Control loop


  • An autonomic manager monitors data from multiple sensors in a system

  • Analyzing the gathered information

  • Planning and executing based on information


Conceptual model
A fundamental building block of an autonomic system is the sensing capability (Sensors Si), which enables the system to observe its external operational context. Inherent to an autonomic system is the knowledge of the Purpose (intention) and the Know-how to operate itself (e.g., bootstrapping, configuration knowledge, interpretation of sensory data, etc.) without external intervention. The actual operation of the autonomic system is dictated by the Logic, which is responsible for making the right decisions to serve its Purpose, and influence by the observation of the operational context (based on the sensor input). This model highlights the fact that the operation of an autonomic system is purpose-driven. This includes its mission (e.g., the service it is supposed to offer), the policies (e.g., that define the basic behavior), and the survival instinct. If seen as a control system this would be encoded as a feedback error function or in a heuristically assisted system as an algorithm combined with set of heuristics bounding its operational space.


Figure 3. Conseptual model of autonomic computing

Advantages of Autonomic Computing
Immediate benefits will include reduced dependence on human intervention to maintain complex systems accompanied by a substantial decrease in costs. Long-term benefits will allow individuals, organizations and businesses to collaborate on complex problem solving.
Short-term I/T related benefits


  • Simplified user experience through a more responsive, real-time system.

  • Cost-savings - scale to use.

  • Scaled power, storage and costs that optimize usage across both hardware and software.

  • Full use of idle processing power, including home PC's, through networked system.

  • Natural language queries allow deeper and more accurate returns.

  • Seamless access to multiple file types. Open standards will allow users to pull data from all potential sources by re-formatting on the fly.

  • Stability, High availability, High security system, fewer system or network errors due to self-healing.


Long-term, Higher Order Benefits


  • Realize the vision of enablement by shifting available resources to higher-order business.

  • Embedding autonomic capabilities in client or access devices, servers, storage systems, middleware, and the network itself. Constructing autonomic federated systems.

  • Achieving end-to-end service level management.

  • Collaboration and global problem-solving. Distributed computing allows for more immediate sharing of information and processing power to use complex mathematics to solve problems.

  • Massive simulation - weather, medical - complex calculations like protein folding, which require processors to run 24/7 for as long as a year at a time.

Applications of Autonomic Computing


  • Enterprise applications

  • Clouds and grids

  • Server load Balancing

  • Process allocation

  • Monitoring Power Supply

  • Automatic updating of Software and Drivers

  • Pre-failure Warning

  • Memory Error Correction

  • Automated System Backup and Recovery

  • Internet services

  • Data center or large-scale system management

  • Embedded and mobile systems

  • Energy management

  • Sensor networks, especially issues related to autonomous, distributed management

  • Other applications of autonomic computing to real problems in science, engineering, business and society.

Conclusion
Autonomic Computing is solution of today’s increasing complexity in computing systems. It helps for developing Self managing systems. Decrease in Human interaction with the system, there by reduces the occurrence of operator errors.

References


  • http://www.techopedia.com/definition/191/autonomic-computing

  • http://www.research.ibm.com/autonomic/index.html

  • http://www.research.ibm.com/autonomic/overview/benefits.html

  • http://www.research.ibm.com/autonomic/overview/elements.html

  • http://searchcio-midmarket.techtarget.com/definition/autonomic-computing

Page


Download 156.98 Kb.

Share with your friends:




The database is protected by copyright ©ininet.org 2024
send message

    Main page