Online Management of Jobs in Clusters using Virtual Machines
Gestion dynamique des tâches dans les grappes, une approche à base de machines virtuelles
Résumé
Resources Management Systems relying on a dynamic management of jobs can efficiently use resources in clusters. Indeed they provide mechanisms to manipulate online the state of the jobs and their assignment on the nodes. In practice, these scheduling strategies are hard to deploy on clusters as they can not necessarily handle the manipulation of the jobs and may have specific scheduling constraints to consider. In this thesis, we try to ease the development of resources management systems relying on a dynamic management of jobs. We based our environment on the use of virtual machines to execute the jobs in their legacy environments while providing the mechanisms to manipulate them in a non-intrusive way. Moreover, we propose an autonomous environment to continuously optimize the scheduling of jobs. Scheduling strategies are implemented using constraints programming which aims to model and solve combinatory problems. We validate our approach with the development of our prototype Entropy, which has been used to implement various scheduling strategies. The evaluation of these strategies show their capability to to solve present problems.
Les gestionnaires de ressources reposant sur une gestion dynamique des tâches permettent une utilisation efficace des ressources des grappes de serveurs. Ils mettent en oeuvre pour cela des mécanismes manipulant à la volée l'état des tâches et leur placement sur les différents noeuds de la grappe. En pratique, ces stratégies d'ordonnancement ad-hoc s'adaptent difficilement aux grappes. En effet, celles-ci ne permettent pas nécessairement une manipulation fiable des tâches et peuvent imposer des contraintes d'ordonnancement spécifiques. Dans cette thèse, nous nous sommes fixés comme objectif de faciliter le développement de gestionnaires de ressources basés sur une gestion dynamique des tâches. Pour cela, nous avons retenu une architecture à base de machines virtuelles qui exécutent les tâches des utilisateurs dans leur propre environnement logiciel tout en proposant les primitives nécessaires à la manipulation de celles-ci de manière non-intrusive. Nous avons également proposé une approche autonome optimisant en continu l'ordonnancement des tâches. Les stratégies d'ordonnancement sont implémentées au moyen de la programmation par contraintes qui permet de définir de manière flexible des problèmes d'ordonnancement et de les résoudre. Nous avons validé notre approche par le développement et l'évaluation du prototype Entropy, support pour l'implémentation de différentes stratégies d'ordonnancement. Celles-ci ont pu répondre efficacement à des problèmes concrets et actuels.
Fichier principal
Thesis-Fabien_Hermenier.pdf (2.95 Mo)
Télécharger le fichier
Thesis-Fabien_Hermenier-slides.pdf (1.03 Mo)
Télécharger le fichier
Format | Autre |
---|