180 likes | 301 Views
Autonomic Computing. An Introduction Guenter Kickinger. Outline. Autonomic Computing in General – IBM’s perspective Technologies & Tools Autonomic Computing and the Grid What can AC do for us?. The Problem – Increasing Complexity of IT Systems.
E N D
Autonomic Computing An Introduction Guenter Kickinger
Outline • Autonomic Computing in General – IBM’s perspective • Technologies & Tools • Autonomic Computing and the Grid • What can AC do for us?
The Problem – Increasing Complexity of IT Systems • Complex systems require more and more skilled IT professionals to install, configure, operate, tune and maintain. • Difficulty of managing today’s computing systems goes well beyond the administration of individual software environments. New levels of complexity: • Integration of several heterogeneous environments into corporate-wide computing systems • Extension beyond company boundaries into the Internet • Architects are less able to anticipate and design interactions among components • Systems will become too massive and complex for even most system integrators to install
An Example Progress in Telephony
Autonomic Computing – The Solution (???) • Autonomic computing helps address these complexity issues by using technology to manage technology. • Term “autonomic” is derived from human biology – autonomic nervous system. • adjusts to many situations automatically without external help. • ANS monitors your heartbeat, checks your blood sugar level and keeps your body temperature close to 37, without any conscious effort on your part. • The vision: computing systems that can manage themselves given high-level objectives from administrators. • Manage complexity • “Know” themselves • Continuously tune themselves • Adapt to unpredictable conditions • Prevent and recover from failures • Provide a secure environment
Components of Self-Management • self-configuring • components adapt dynamically to changes in the IT system, using policies provided by IT professionals. • e.g. deployment of new components, removal of existing components • self-healing • environments can detect problematic operations and then initiate corrective action • system identifies and isolates a failed component. Comp. is taken offline, repaired or replaced. • self-optimizing • to make the best use of available resources even though these resources and requirements are constantly changing. • self-protecting • to allow authorized people to access the right data at the right time • to detect hostile or intrusive behaviour • to take autonomous actions to make the system less vulnerable.
Sensors Effectors Analyze Plan autonomic manager Knowledge Monitor Execute Sensors Effectors the autonomic element Element
autonomic manager collaboration customer order solution vendor relationship solution database resource database management server management
Technologies & Tools (1) • IBM Emerging Technologies Toolkit (ETTK) • software development kit for designing, developing, and executing emerging autonomic, web service, and grid-related technologies. • evolved from the Web Services Toolkit (WSTK) • includes a fully-functioning SOAP engine and embedded application server • provides • basic software components to experiment with and create Web services and autonomic programs • architectural overview of autonomic technologies, Web services, sample programs, utility services and tools for developing and deploying autonomic programs and Web services. • Technologies: WSDL, SOAP, WS-ResourceFramework
Technologies & Tools (2) • IBM Autonomic Computing Toolkit 2.0 • The IBM autonomic computing toolkit is a collection of • technologies, • tools, • examples, • scenarios, and • documentation that is designed for users wanting to learn about, adapt, and develop autonomic behaviour in their products and systems.
Technologies & Tools (3) • IBM Autonomic Computing Toolkit 2.0 • Technologies • Autonomic Management Engine • Generic Log Adapter (to translate product log messages into a Common Base Event data format) • Log and Trace Analyzer • Integrated Solutions Console • Solution Install • Tools • Integrated Solutions Console Toolkit • Resource Model Builder • Adapter Rule Editor
AC and the Grid • Grid as an enabling technology • The Grid provides the open protocols needed for AC, like OGSA, WS-RF • Autonomic Grid Applications • context-aware self-managing applications in widely distributed, heterogeneous Grid environments • Extending the Grid middleware by autonomic capabilities
What Can AC Do For Us? Help to make the interactive data analysis stable, in a heterogeneous Grid environment
Making Interactive Data Analysis Robust – Improving PROOF • Applying autonomic computing concepts, but dynamically at runtime rather than for system administration purposes • self-configuration • dynamic slaves • PROOF slaves leave (e.g. resources are not longer available) • PROOF slaves join (e.g. new resources become free) • if user aborts execution, all processes should be aborted too (Ctrl-C feature)
Making Interactive Data Analysis Robust – Improving PROOF • self-healing • analyse why processes are dying • e.g. error in selector script (DIV by 0) • find the best strategy to recover from the error • restart the process on another CPU? • what about intermediate results? • self-optimization • Learn from previous analysis sessions how to improve performance • self-protection • Analysis of possible threats has to be done • Security issues (authentication, encryption,…) • Protected environments for selector scripts
Conclusion • autonomic computing is a concept of self-managing IT systems, analogous to the autonomic nervous system of the human (animal) body • the principles of the autonomic computing can be used to make the interactive data analysis framework more robust (i.e. PROOF) • To do so, the IBM focus of AC – the self-management of an IT system infrastructure to reduce IT costs – has to be shifted to the self-management of the distributed interactive data analysis process