• Aucun résultat trouvé

2.2 Maîtrise énergétique

2.2.5 Gestion de l’énergie dans les systèmes virtualisés

Comme expliqué dans [BGDG+10], les systèmes de cloud computing permettent des

manipulations spécifiques pour la maîtrise énergétique. Nous proposons ici quelques travaux liés à ces manipulations, en commençant par la modélisation des consomma- tions des serveurs.

32CHAPITRE 2. GESTION ÉNERGÉTIQUE DE L’INFORMATIQUE DANS LES NUAGES Consommation des serveurs

La maîtrise énergétique des centres est permise tout d’abord par la modélisation des consommations des serveurs. Une quantité importante de travaux ont été réalisés sur ce sujet, chaque nouvelle technologie de serveurs demandant de nouveaux travaux de modélisation. Il est ainsi possible d’après [Bel00] de définir précisément l’activité dans un serveur en utilisant les compteurs de performances, et de modéliser la relation entre l’activité d’un serveur et sa consommation. Différents méta-modèles de consommation sont comparés dans [RRK08].

En plus de l’activité du serveur, les technologies de gestion de l’énergie sont inté- grées à des méta-modèles, telles le DVFS [HF05] dans [HM07] ou les états d’énergie des serveurs dans [GHBK11, GHBK12].

Le passage d’un centre physique à un centre virtualisé demande de mettre en relation la consommation d’un serveur non plus seulement avec son activité mais ausssi avec l’activité de ses VM, comme effectué dans [KAGS11] et [KZL+10]. La virtualisation permet alors de nouvelles techniques de gestion de l’énergie. Ainsi, [TYNW07] propose la gestion des états d’énergie dans un système virtualisé, tandis que [IMK+13] propose des niveaux d’énergie à faible latence et leur intégration dans les machines virtuelles.

Ces travaux de modélisation des consommations d’un centre ont permis de définir des algorithmes d’allocation des nouvelles tâches d’un centre prenant en compte sa consommation totale.

Placement des nouvelles tâches et consommation du centre

Le placement des nouvelles tâches, ou tâches entrantes, dans un centre a été d’abord effectué avec des algorithmes de type "first-fit", c’est à dire en attribuant les nouvelles tâches sur des serveurs dans un ordre prédéfini. Ces algorithmes ne considéraient aucun problème de consommation, aussi dès 2001 les problèmes de dissipation de la chaleur étaient évoqués [PBB+01] dans les centres HPC.

Dans ces centres de types HPC, le placement des tâches entrantes se fait sans connais- sance de leur activité et ne peut donc pas en déduire d’effet sur la consommation des serveurs. Dans ce cas, les approches possibles sont des approches par à-priori réduisant la consommation du centre dans sa globalité. Ainsi [MCRS05] s’intéresse à la mo- délisation des points chauds dans un centre pour attribuer des priorités de placement des serveurs, produisant un algorithme que [BF07] évalue sur un centre réel. Par la suite, [TGV07] intègre la notion de système de recirculation de l’air dans un algorithme de placement dynamique des tâches. La priorité d’attribution des serveurs aux tâches de- vient ainsi dynamique, et après une phase d’observation se passe de sondes thermiques et énergétiques.

Dans le même temps, l’hétérogénéité des serveurs dans un centre, c’est à dire la pré- sence de différents modèles de serveurs, donc de capacités (RAM, CPU) et de consom-

2.2. MAÎTRISE ÉNERGÉTIQUE 33 mations différentes, permet dans [SBP+05, NIG07] de déterminer des algorithmes de

placement des tâches réduisant la consommation des serveurs.

Ces algorithmes permettent d’attribuer de nouvelles tâches dans un centre, d’autres travaux permettent d’améliorer l’état d’un centre en déplaçant les tâches dans celui-ci Principes de la ré-allocation

Dans les centres traditionnels, l’allocation d’une tâche à un serveur est définitive. La virtualisation permet à l’administrateur de déplacer une VM déjà démarrée d’un serveur originel à un serveur cible, sans stopper l’exécution de cette VM.

La migration d’une VM permet d’augmenter les ressources disponibles pour celle- ci en la migrant vers un serveur ayant plus de capacités de calcul. Elle permet aussi, au contraire, de regrouper plusieurs VM sur un seul serveur. Ce dernier objectif, ap- pelé aussi consolidation des serveurs, permet de réduire la consommation du centre en éteignant les serveurs peu utilisés.

Comme présenté dans [KBKK06], la migration d’une VM est soumise à des contraintes et l’administrateur doit prendre les bonnes décisions. Le principal soucis est d’éviter la surcharge des VM déjà présentes sur le serveur cible, on ne peut alors migrer une VM vers ce serveur que s’il dispose de suffisamment de mémoire et de capacité CPU libre pour l’accueillir. Si les activités CPU ou réseau du serveur sont trop importantes, la qualité d’exécution des VM qu’il héberge sera dégradée, par exemple avec des temps de réponse trop importants. Ces travaux présentent un algorithme de consolidation des serveurs, et d’amélioration de la qualité d’exécution des VM, par l’observation des ac- tivités des serveurs et de métriques de qualité des VM.

Si le framework proposé dans [VAN08a] permet de réduire la consommation d’un centre, il met aussi en exergue la difficulté de déterminer la consommation réelle d’un serveur dans un centre virtualisé. En particulier, il est difficile de déterminer le coût des actions de management. D’après les auteurs, il n’est cependant pas nécessaire d’avoir une connaissance totale de la consommation des serveurs. En effet la comparaison des efficacité de ceux-ci permet déjà d’obtenir des résultats probants. Ces travaux intègrent non seulement des modèles d’utilisation des ressources, mais aussi de consommation électrique, de rupture de contrats de service et de coût des migrations dans un frame- work à portée générique. Ils montrent ainsi l’intérêt d’avoir un système modulaire, où différents problèmes peuvent être considérés conjointement.

Les modèles plus complexes d’utilisation et de réservation du CPU par les VM uti- lisés dans des systèmes industriels sont pris en compte dans [CKS09]. Ces travaux pro- posent plusieurs algorithmes de gestion des VM, dans lesquels la consommation des serveurs est constante si le serveur est allumé et les serveurs sont triés par efficacité énergétique en CPU.

Dans le contexte HPC, [VAN08b] propose de migrer les VM en considérant des modèles de consommation des serveurs. D’après ces travaux, la consommation d’un

34CHAPITRE 2. GESTION ÉNERGÉTIQUE DE L’INFORMATIQUE DANS LES NUAGES serveur est liée à sa charge CPU, il est donc possible de mettre en relation consom- mation du centre et charges CPU des serveurs. Cependant la couche de virtualisation entre les VM et le serveur physique implique une surcharge CPU, surcharge d’autant plus importante que les VM accèdent à la mémoire. Ces travaux nécessitent donc des schémas d’activité des VM du centre, des modèles de surcharge de virtualisation, et la connaissance des caractéristiques logicielles et électriques des serveurs. Ils ne sont donc pas utilisables dans le cas de gestionnaires de IaaS qui ne connaissent pas les relations entre VM.

Enfin, les travaux présentés dans [VBG09] considèrent non seulement la consom- mation des serveurs, mais aussi du système de refroidissement grâce à un modèle de re-circulation d’air. Ils proposent ainsi des algorithmes pour réduire la surcharge de refroidissement dans le centre due à cette re-circulation. Différents modèles de consom- mation des serveurs et climatisations sont utilisés, indiquant ainsi que l’amélioration d’un centre réel passe par l’analyse et l’adaptation des modèles aux observations.

Limites

À notre connaissance, aucune solution ne permet de faire de la gestion modulaire d’un centre virtualisé, bien que des travaux se soient essayés à une approche multi-critères. De plus, beaucoup de travaux se focalisent sur des centres homogènes en VM ou en serveurs, ce qui a du sens dans un centre de type HPC mais peu dans un centre virtualisé réel hébergeant des VM aux activités disparates.