Autonomic administration middleware

Host laboratory:
IRIT (Institut de Recherche en Informatique de Toulouse)

2 rue Charles Camichel
BP 7122

autonomic system, administration, J2EE, clusters, grid.


Today's computing environments are becoming increasingly sophisticated. They involve numerous complex software that cooperate in potentially large scale distributed environments. These software are developed with very heterogeneous programming models and their configuration facilities are generally proprietary. Therefore, the administration of these software (installation, configuration, tuning, repair …) is a much complex task which consumes a lot of resources:
·    human resources as administrators have to react to events (such as failures) and have to reconfigure (repair) complex applications,
·    hardware resources which are often reserved (and overbooked) to anticipate load peaks or failures.
A very promising approach to the above issue is to implement administration as an autonomic software. Such a software can be used to deploy and configure applications in a distributed environment. It can also monitor the environment and react to events such as failures or overloads and reconfigure applications accordingly and autonomously. The main advantages of this approach are:
·   Providing a high-level support for deploying and configuring applications reduces errors and administrator's efforts.
·   Autonomic administration allows the required reconfigurations to be performed without human intervention, thus saving administrator's time.
·   Autonomic administration is a means to save hardware resources as resources can be allocated only when required (dynamically upon failure or load peak) instead of pre-allocated.
The goal of this project is to design and prototype an environment for developing autonomic administration software. Our works in this domain allowed us to identify the following key design choices:
·   A component model. The administrated environment should be modelized as a component-based software architecture which provides means to configure and reconfigure the environment. The same model should be used for developing the administration software itself, thus enabling self-administration.
·   A system representation which provides a consistent and reliable view (snapshot) of the whole administrated system.
·   Control loops which link probes to reconfiguration services and implement autonomic behaviors.
A first prototype has been developed and is operational. It has been used for the administration of clustered J2EE applications. These applications rely on very complex software (e.g. Apache, Tomcat, Jonas, Mysql) and their deployment and administration was greatly facilitated by the use of the prototype.
We are also investigating the use of this prototype for the administration of scientific (computation intensive) application on a large scale-grid infrastructure (the french national Grid'5000 platform).

Many contributions are expected in this project, as extensions to the current prototype, developments of new autonomic administration policies, studies with different administrated environments.

Technologies involved in the project:
- Java language or object-oriented programming.
- component-based middleware
- J2EE technologies
- cluster or grid environment.

Contact: Daniel Hagimont
Web :
Email :
Phone : (+33) 561 588 383 (GMT+1)
Fax : (+33) 561 588 306