Résumé de la thèse
Les systèmes de virtualisations ou hyperviseurs jouent un rôle crucial dans la pile logicielle des plateformes de cloud computing. Leur conception et leur mise en oeuvre ont un impact significatif sur la performance, la sécurité et la robustesse des applications des utilisateurs du cloud. Les hyperviseurs dits de Type-I sont les plus efficaces, car ils offrent une meilleure isolation et de meilleures performances que leur homologue de Type-II. Pour la majorité des hyperviseurs de Type-I actuel (ex., Xen ou Hyper-V), l’hyperviseur s’appuie sur une machine virtuelle privilégiée (pVM). La pVM accomplit des tâches à la fois pour l’hyperviseur (ex., l’administration des VMs) et pour les VMs (gestion des entrées/sorties). Sur les architectures d’accès mémoire uniforme et non uniforme (UMA & NUMA), cette architecture basée sur la pVM pose deux problèmes : • (1) le dimensionnement et le placement des ressources de la pVM (CPU + mémoire) — En effet, un mauvais dimensionnement et placement des ressources de la pVM impacte fortement la performance des applications des VMs. Le problème est complexe, car il existe une forte corrélation entre les besoins de la pVM et les activités des VMs. Les solutions existantes sont soit des approches statiques qui débouchent à un sur/sous dimensionnement ou ne prennent pas en compte le placement des ressources dans une architecture NUMA.• (2) la tolérance aux pannes de la pVM — La pVM étant un composant central, elle représente un élément critique dont la zone de dommage en cas de défaillance est très large. Les approches existantes pour améliorer la tolérance aux pannes de la pVM offrent des faibles garanties de résilience ou génèrent des dégradations importantes.
Cette thèse propose plusieurs modifications à la pVM d’un point de vue architectural et logique afin de traiter les problèmes susmentionnés. Concrètement, cette thèse introduit :
1. Closer, un principe directeur pour la conception d’un OS adapté aux besoins de la pVM. Closer consiste respectivement à ordonnancer et allouer les tâches et la mémoire de la pVM au plus près des VMs cible. Étant une approche dynamique, il masque le besoin de dimensionner la pVM tout en gérant le placement des ressources sur une architecture NUMA avec sa stratégie de localité.
2. Deux nouveaux mécanismes qui réduisent les dégradations du "page flipping" (l’un des protocoles utilisés dans la virtualisation des E/S réseau) lorsqu’elle est utilisée sur une architecture NUMA. En sélectionnant avec soin les pages de la pVM qui seront utilisées lors du "page flipping" en fonction de leur emplacement, ces mécanismes réalisent de meilleures performances que le protocole de virtualisation réseau actuel.
3. Un ensemble de trois principes directeurs (désagrégation, spécialisation et proactivité) et des techniques d’implémentation optimisée pour construire une pVM robuste sans fortement dégrader les performances des applications des VMs.
Nous avons développé des prototypes d’hyperviseurs (en nous appuyant sur l’hyperviseur Xen) qui mettent en oeuvre les principes susmentionnés. Nous validons l’efficacité de nos prototypes en effectuant plusieurs évaluations avec une série d’applications bien choisies. Les résultats obtenus montrent de meilleures performances que les approches de l’état de l’art tout en observant de faibles dégradations de performance.
Cette thèse met en évidence l’importance de la pVM dans un environnement virtualisé et montre qu’elle requiert plus d’attention de la part de la communauté scientifique.
Mots-clés : Virtualisation, NUMA, hyperviseur, pVM, dimensionnement, résilience.
Le jury est composé de:
M. Pascal Felber, Professeur, Université de Neuchâtel, Rapporteur
M. Willy Zwanepoel, Professeur, Université de Sydney, Rapporteur
M. Marc Shapiro, Professeur, Inria, Examinateur
M. Renaud Lachaize, Maître de Conférence, Université de Grenoble Alpes, Examinateur
M. Alain Tchana, Professeur, ENS Lyon, Co-directeur de thèse
M. Noël De Palma, Professeur, Université de Grenoble Alpes, Directeur de thèse