Thèse soutenue

Amélioration de l'utilisation de ressources mémoires pour les machines virtuelles
FR  |  
EN
Accès à la thèse
Auteur / Autrice : Yohan Pipereau
Direction : Gaël ThomasMathieu Bacou
Type : Thèse de doctorat
Discipline(s) : Informatique, données, IA
Date : Soutenance le 14/12/2023
Etablissement(s) : Institut polytechnique de Paris
Ecole(s) doctorale(s) : École doctorale de l'Institut polytechnique de Paris
Partenaire(s) de recherche : Laboratoire : SAMOVAR - Services répartis, Architectures, Modélisation, Validation, Administration des Réseaux - Institut Polytechnique de Paris / IP Paris - Département Informatique / INF - Architecture, Cloud continuum, formal Models, artificial intElligence and Services in distributed computing / ACMES-SAMOVAR
Etablissement opérateur d'inscription : Télécom SudParis (France)
Equipe de recherche : Architecture, Cloud continuum, formal Models, artificial intElligence and Services in distributed computing / ACMES-SAMOVAR
Jury : Président / Présidente : Brice Goglin
Examinateurs / Examinatrices : Pierre Sens, Romain Rouvoy, Stella Bitchebe
Rapporteurs / Rapporteuses : Pierre Sens, Romain Rouvoy

Résumé

FR  |  
EN

Les centres de données reposent largement sur les machines virtuelles comme unité de déploiement afin de garantir une isolation forte entre deux déploiements. L'introduction de la virtualisation a permis une amélioration significative de l'utilisation des ressources d'un datacenter par rapport à la location d'une machine physique pour chaque utilisateur. Malgré ce gain, les machines virtuelles offrent toujours un gain d'utilisation de ressources plus faible que l'isolation fournie par le système d'exploitation à travers des processus. Deux phénomènes expliquent le gain relatif des machines virtuelles : au moment de l'allocation d'une VM, un orchestrateur traduit l'allocation en une requête d'allocation de plusieurs ressources sur plusieurs serveurs. Le problème que doit résoudre l'orchestrateur afin de trouver un placement optimal des VMs est NP-difficile, imposant à l'orchestrateur l'utilisation d'heuristiques de placement qui laissent une part de ressource inutilisées sur chaque serveur. De plus, durant l'exécution de la VM, la consommation mémoire augmente à mesure que les accès sont effectués et la différence entre allocation mémoire et utilisation mémoire résulte en un ensemble de ressource mémoire qui ne peuvent être utilisé sans risque de crash de VMs. Dans un premier temps, nous proposons un prototype permettant d'accéder aux ressources mémoires inutilisées sur d'autres serveurs. Notre solution est transparente pour les applications s'exécutant dans une VM et offre une réservation à grain fin des ressources mémoires distantes. Dans un second temps, nous présentons les résultats de notre étude des techniques existantes permettant d'ajuster la capacité mémoire d'une VM sur la mémoire qu'elle utilise. Notre travail montre que les solutions actuelles implémentées au niveau de l'hyperviseur introduisent une dégradation des performances des VMs ainsi que des temps de réponse élevés empêchant le partage des ressources mémoires par plusieurs VMs. Nous proposons une solution utilisant les informations disponibles dans la VM pour adapter rapidement leurs capacités mémoires.