Contributions à l'approvisionnement d'environnements virtualisés : la problématique des temps de démarrage des machines virtuelles et des conteneurs
Auteur / Autrice : | Thuy Linh Nguyen |
Direction : | Adrien Lebre |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique et applications |
Date : | Soutenance le 24/09/2019 |
Etablissement(s) : | Ecole nationale supérieure Mines-Télécom Atlantique Bretagne Pays de la Loire |
Ecole(s) doctorale(s) : | École doctorale Mathématiques et sciences et technologies de l'information et de la communication (Rennes) |
Partenaire(s) de recherche : | Laboratoire : Département Automatique, Productique et Informatique - Software Stack for Massively Geo-Distributed Infrastructures - Laboratoire des Sciences du Numérique de Nantes |
Jury : | Président / Présidente : Mario Südholt |
Examinateurs / Examinatrices : Adrien Lebre, Daniel Hagimont, María S. Pérez-Hernández, Ramon Nou | |
Rapporteur / Rapporteuse : Daniel Hagimont, María S. Pérez-Hernández |
Mots clés
Résumé
Le processus d'approvisionnement d'une machine virtuelle (VM) ou d'un conteneur est une succession de trois étapes complexes : (i) la phase d’ordonnancement qui consiste à affecter la VM / le conteneur sur un nœud de calcul ; (ii) le transfert de l'image disque associée vers ce nœud de calcul ; (iii) et l'exécution du processus de démarrage (généralement connu sous le terme « boot »). En fonction des besoins de l’application virtualisée et de l’état de la plate-forme, chacune de ces trois phases peut avoir une durée plus ou moins importante. Si de nombreux travaux se sont concentrés sur l’optimisation des deux premières étapes, la littérature couvre que partiellement les défis liés à la dernière. Cela est surprenant car des études ont montré que le temps de démarrage peut atteindre l’ordre de la minute dans certaines conditions. Durée que nous avons confirmée grâce à une étude préliminaire visant à quantifier le temps de démarrage, notamment dans des scénarios où le ratio de consolidation est élevé. Pour comprendre les principales raisons de ces durées, nous avons effectué en jusqu'à 15000 expériences au dessus de l’infrastructure Grid5000. Chacune de ces expériences a eu pour but d’étudier le processus de démarrage selon différentes conditions environnementales. Les résultats ont montré que les opérations d'entrée/sorties liées au processus de démarrage étaient les plus coûteuses. Afin d’y remédier, nous défendons dans cette thèse la conception d'un mécanisme dédié permettant de limiter le nombre d’entrées/sorties générées lors du processus de démarrage. Nous démontrons la pertinence de notre proposition en évaluant le prototype YOLO (You Only LoadOnce). Grâce à YOLO, la durée de démarrage peut être accélérée de 2 à 13 fois pour les VM et jusqu’à 2 fois pour les conteneurs. Au delà de l’aspect performance, il convient de noter que la façon dont YOLO a été conçu permet de l’appliquer à d’autres types de technologies devirtualisation / conteneurisation.