The TUNe Autonomic Management System Daniel Hagimont Professor - INP Toulouse Researcher – IRIT Laboratory
Motivations Management of cluster or grid infrastructures Installation, deployment, configuration Reconfiguration (load peaks, failures, attacks...) Problem Complexity => errors Hand made => low reactivity
Application use case 1 Web tier Database tier AJP13 mod_jk plugin - Presentation tier Tomcat JDBC L4-switch Tomcat Users Clustered J2EE Web servers RUBiS: an eBay like benchmark
Application use case 2 DIET distributed load-balancer over a Grid
Approach Autonomic management software High level formalisms for administration Definition of autonomic behaviours Component-based management Encapsulate (wrap) managed elements in components Managed a distributed software infrastructure as a component architecture
Fractal component model Primitive/composite/shared components Client/server bindings Introspection, adaptation interfaces ADL (Architecture Description Language)
Management layer
... <component name="apache1" definition="fr.jade.resources.apache.ApacheResourceType">... - Users Deployment - ADL
Repair/optimizing Managed Application QoS Manager sensors actuators Reconfigure Failure Manager sensors actuators Repair
Yes, but... Administrators are not developers Component models' interfaces (ADL, API) are complex Higher level formalisms to manipulate the component architecture
Higher level formalisms CDL description WDL descriptions RDL descriptions
Administration policies CDL : Configuration Description Language Similar to UML class diagrams Intensional (rather than extensional) WDL : Wrapping Description Language Textual descriptions RDL : Reconfiguration Description Language Similar to UML state diagrams
Simple repair scenario Failure
Without autonomic repair
With autonomic repair
Dynamic sizing MySQL Databases... Tomcat Servlet Containers C-JDBC database cluster middleware
Autonomic sizing on the database tier
Autonomic sizing on the servlet tier
Conclusions Addressed issue Administration of distributed software infrastructures Legacy software Deployment et reconfiguration Complexity and reactivity Contributions Languages and tools for autonomic administration Experiments with real applications Perspectives Metamodels and specialized editors (Eclipse/EMF) Administrations policies coordination