Thèse soutenue

Allocation de ressources par une approche hybride apprentissage automatique et optimisation pour l’hébergement et l’infogérance de services web

FR  |  
EN
Auteur / Autrice : Etienne Leclercq
Direction : Céline RouveirolFrédéric Roupin
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 17/10/2022
Etablissement(s) : Paris 13
Ecole(s) doctorale(s) : École doctorale Galilée (Villetaneuse, Seine-Saint-Denis)
Partenaire(s) de recherche : Laboratoire : Laboratoire informatique de Paris-Nord (Villetaneuse, Seine-Saint-Denis ; 2001-....)
Jury : Examinateurs / Examinatrices : Frédéric Roupin, Jonathan Rivalan, Samir Loudni, Zacharie Ales
Rapporteurs / Rapporteuses : Samir Loudni, Jérôme Malick

Mots clés

FR  |  
EN

Résumé

FR  |  
EN

L'un des principaux défis du cloud computing est la gestion des ressources, qui s'inquiète principalement de la planification des charges de travail et du placement des services sur l'infrastructure. Ces dernières années, l'émergence de la virtualisation légère, à travers les conteneurs, a remis en avant le problème d'allocation des ressources, en introduisant notamment l'élasticité. Cette notion nouvelle pour la virtualisation a entraîné de nouvelles contraintes pour ce problème d'allocation, comme l'absence de connaissance a priori sur les ressources effectivement consommées par les individus. Pour répondre à cette problématique et obtenir une gestion optimisée du placement de conteneurs sur une infrastructure, une méthodologie en deux étapes est développée, combinant des techniques d'apprentissage non supervisé et d'optimisation. Une heuristique de placement offline est développée, utilisant un clustering des conteneurs en fonction de leur profil de consommation, afin d'obtenir une première solution de placement prenant en compte ces profils. Cette solution de placement est mise à jour dans le temps par un système de boucle, combinant l'évolution du clustering avec des techniques d'optimisation dans un mode online. Le clustering est lui aussi maintenu à jour grâce à des méthodes d'optimisation en fonction de l'évolution de consommation des conteneurs. Nous implémentons notre méthode sous la forme d'une librairie Python appelée Continuous Optimization for Time Series (COTS), dont l'interface d'entrée paramétrable permet son utilisation et évaluation dans différents contextes de jeux de données et de configurations. À travers la définition et la comparaison de plusieurs critères liés au domaine de l'hébergement en micro-services nous évaluons l'efficacité de notre méthode par rapport à l'état de l'art. Nous montrons ainsi une amélioration de l'efficacité énergétique allant de 5% à 30% en fonction des contextes métiers. Globalement, en considérant l'ensemble des critères, les performances sont améliorées en moyenne de 9,1% par notre méthode. Une analyse détaillée de ces résultats et de divers indicateurs métiers ou algorithmiques précise le comportement de notre méthode et son utilisabilité sur différents scénarios hérités d'environnements de production réel