• Aucun résultat trouvé

CHAPITRE 1 INTRODUCTION

1.2 Éléments de la problématique

Dans le contexte du modèle de service IaaS, bien que les offres d’hébergement des applications soient de plus en plus nombreuses, le processus d’allocation de ces dernières aux data centers demeure un problème relativement complexe à solutionner.

Ce qui fait la force de ce nouveau paradigme informatique, soit la disponibilité des res- sources physiques, en constitue également une grande faiblesse, particulièrement au niveau du processus d’allocation des VMs et du trafic associé. Contrairement à la mise en place d’un réseau physique où le concepteur est libre de faire certains choix, dans le cas de l’as- signation des applications, l’enjeu principal, pour le fournisseur, revient à devoir conjuguer avec l’infrastructure physique sous-jacente, déjà existante, en développant des mécanismes afin de maximiser l’utilisation de l’éventail des moyens qui s’offrent à lui. Ce manque certain de latitude ajoute un degré de difficulté au processus d’assignation des applications, car le fournisseur est contraint de se limiter à la quantité de ressources disponibles.

Dans le contexte particulier de l’optimisation de l’empreinte carbone à l’échelle d’un Inter- Cloud, où les data centers sont alimentés par différentes sources d’énergie, renouvelables ou

non, la minimisation de l’énergie ne saurait nécessairement traduire une réduction de l’em- preinte carbone. En effet, dans le cas d’un data center alimenté par une énergie verte, la consommation énergétique peut être très élevée alors que l’empreinte carbone est quasiment nulle, tandis que lorsque la source d’énergie est semi ou non verte, l’impact écologique de- vient intimement lié à la consommation énergétique. Dans ce dernier cas de figure, minimiser l’énergie consommée induirait une réduction de l’empreinte carbone dudit data center. Par ailleurs, ce problème de consommation énergétique excessive s’explique, en général, par le fait que, dans le but de faire face aux besoins sans cesse fluctuants des utilisateurs, les sites d’hébergement se tiennent toujours prêts en gardant presque la totalité des ressources en état d’attente latente, alors que, la plupart du temps, seulement 50% des capacités de calcul sont réellement sollicitées. Ceci conduit à un gaspillage qui peut facilement s’élever à environ 90% de l’énergie consommée. Aussi, bien qu’à la puissance des serveurs s’ajoute également la consommation non négligeable des ressources réseau et du système de refroidissement, dans le but de réduire l’impact énergétique des data centers non verts, l’approche la plus courante consiste à s’attaquer à un sous-problème à la fois, afin de contourner la complexité du problème global.

Dans ce contexte, les premiers efforts ont porté sur les méthodes de consolidation des VMs afin de minimiser le nombre de serveurs actifs. Le processus s’assimile alors à un problème de Bin Packing (Garey et Johnson, 1990). Toutefois, compte tenu de l’hétérogénéité des équipements dans un data center, cette approche ne se révèle pas être viable, et le problème de réduction de l’énergie des nœuds de calcul a été attaqué en considérant les caractéristiques énergétiques de ces derniers, l’objectif étant de réduire, de préférence, la puissance totale consommée par ces équipements.

Par ailleurs, alors que le concept de virtualisation des serveurs semble permettre une écono- mie d’énergie, en facilitant la consolidation de plusieurs VMs sur un même support physique, il est également à l’origine de différents problèmes lorsque vient le temps de procéder à ce regroupement des VMs. En effet, sachant qu’une consolidation aveugle peut engendrer des conflits lors de l’accès aux ressources physiques, entraînant ainsi une dégradation de per- formance des applications consolidées, une augmentation de leur durée d’exécution et de l’énergie consommée, la principale difficulté de ce processus revient à déterminer l’empla- cement idéal pour chaque type de machine en question. À cet effet, il devient primordial d’identifier les particularités de l’application s’exécutant sur la VM, de manière à déterminer le type et l’importance des ressources nécessaires au bon fonctionnement de cette dernière, de même que les paramètres de performance auxquels elle est particulièrement sensible. De plus, avec le Cloud Computing, et particulièrement l’externalisation des ressources, des problèmes

relatifs à la sécurité, à la territorialité et à la fiabilité peuvent également survenir. En ce sens, les clients, soucieux quant à l’intégrité et à la confidentialité de leurs informations, peuvent également imposer des contraintes de co-hébergement ou de localisation de leurs applications. Avec le cooling qui représente environ 30% de la consommation énergétique, nombreux sont les travaux qui ont tenté d’optimiser l’efficacité énergétique à l’intérieur d’un data center. Plusieurs techniques de gestion thermique ont donc été mises en place afin de réduire l’impact du cooling sur la facture énergétique dans un data center, allant de la réduction du taux de recirculation de la chaleur, à la minimisation des points chauds. Plus récemment, l’American Society of Heating, Refrigerating and Air Conditioning Engineers (ASHRAE) a démontré qu’une manière simple et efficace de réduire la puissance du CRAC consistait à augmenter la température fournie par ce tel système, jusqu’aux limites de fonctionnement autorisées pour les équipements informatiques. Toutefois, cette technique ne prend pas en compte le comportement dynamique des ventilateurs des serveurs dont la puissance augmente au cube de la température fournie par le CRAC, ce qui peut, à un certain point, annuler les gains d’énergie associés au cooling à température élevée.

Par ailleurs, la grande popularité du Cloud facilite l’hébergement d’un grand éventail d’appli- cations, allant des applications encapsulées dans une unique machine, aux applications plus complexes, se répartissant sur plusieurs VMs distinctes. Dans le contexte de ces dernières applications, l’interaction entre les entités composant ces applications introduit un trafic de données non négligeable dans le réseau, entraînant ainsi une consommation énergétique des équipements réseau, et particulièrement des commutateurs. Ainsi, à l’instar des travaux an- térieurs portant sur la puissance des serveurs, plusieurs chercheurs ont tenté de résoudre le problème de consommation énergétique dans le réseau en essayant d’abord de réduire le nombre de commutateurs utilisés. Dans un second temps, en raison des différents types d’équipements, ils ont de préférence abordé la question en considérant le profil énergétique de ces éléments.

En général, ces problèmes sont traités de manière isolée avec l’objectif d’intégrer les solutions partielles au problème global. Toutefois, la méthode d’optimisation séquentielle et/ou isolée ne saurait s’appliquer dans le contexte du placement des applications. En effet, l’approche séquentielle ne peut être utilisée, car aucune hiérarchie, quant à l’ordre d’optimisation des dif- férentes phases, impliquant que la configuration issue de l’optimisation d’une étape antérieure serve d’entrée à la phase suivante, n’a été définie, à l’instar des réseaux classiques. Quant à l’optimisation isolée, elle suppose l’existence de mécanismes d’intégration des résultats issus des différentes phases. Toutefois, non seulement de tels mécanismes n’existent pas actuelle- ment, mais le processus d’intégration peut se révéler impossible du fait que l’optimisation

isolée peut résulter en des configurations incompatibles.

D’autre part, comme démontré dans les réseaux classiques (St-Hilaire et al., 2006), il existe diverses interactions qui ne sont pas considérées lorsque les problèmes sont résolus indivi- duellement. Plus particulièrement, dans le cas de la minimisation de l’énergie totale, une optimisation de la puissance des nœuds de calcul peut conduire à une configuration introdui- sant un routage de trafic sous-optimal ; de même, l’optimisation de l’impact des ressources réseau peut résulter en des schémas non faisables, où le placement des VMs devient impossible en raison des limites des ressources physiques. Quant à l’optimisation de l’efficacité énergé- tique dans un data center, une augmentation de la température interne ne saurait se faire sans tenir compte du comportement dynamique des ventilateurs face à la variation de tem- pérature, car un tel mécanisme aveugle peut aller jusqu’à annuler les gains liés à l’économie du cooling à haute température. De plus, face au problème d’empreinte carbone à l’échelle d’un InterCloud, le problème devient encore plus complexe, car en plus de la puissance totale de chaque data center, il importe également de considérer le facteur d’émission de chacun. Considérant la nature hétérogène des équipements, le processus d’assignation ne consiste pas à placer les VMs et le trafic associé dans les data centers les plus verts d’abord, mais de considérer le problème dans son ensemble en assignant les applications aux équipements les plus éco-énergétiques, via une consolidation intelligente, tout en respectant les exigences de performance et de sécurité imposées par les clients.

Le problème de placement des VMs et de leur trafic dans un InterCloud, dans le but de minimiser l’empreinte écologique d’un tel environnement est un problème difficile à résoudre. Bien que la décomposition en sous-problèmes semble être moins complexe à mettre en œuvre, aucun mécanisme d’intégration n’a jamais été développé, sans oublier que ce dernier ne nous assurerait pas forcément de l’optimalité de la solution finale. Ainsi, la planification des applications est, en réalité, beaucoup plus complexe qu’elle ne semble le paraître, et seule une optimisation conjointe des différents sous-problèmes permettrait d’obtenir la configuration de coût minimal.

Par ailleurs, ce mécanisme de placement des applications se doit d’être un processus continu, en raison de la variabilité des charges. Naît alors la nécessité de développer des mécanismes automatiques d’assignation des applications aux data centers. De manière générale, différentes méthodes de résolution sont utilisées pour solutionner ce genre de problème. Des approches automatiques ont été privilégiées au détriment de la résolution manuelle, car, en raison des mises à jour et surtout des problèmes de grande taille, il est très difficile, voire même impos- sible, d’évaluer l’éventail de toutes les possibilités à la main. Pour ce qui est des méthodes exactes, elles ont la particularité d’aboutir à la solution optimale, cependant, le temps de

calcul peut être extrêmement long. Une manière efficace de répondre à ces problèmes revient donc à développer des heuristiques qui permettent d’avoir un bon compromis entre la qualité des solutions et le temps d’exécution.

De ce fait, afin de tenir compte des différents enjeux auxquels il est important de faire face dans le processus d’assignation des applications aux data centers, une optimisation conjointe est fortement suggérée. Ce modèle global tendrait à ajouter un peu plus de réalisme au pro- blème de localisation des applications dans les data centers, car un placement optimal ne peut s’effectuer efficacement sans tenir compte des éléments influençant l’impact environnemental des data centers, tout en considérant les interactions, conflictuelles ou non, pouvant exister entre ces entités, ce qui amène obligatoirement à effectuer certains compromis. Plus concrè- tement, dans le but de minimiser l’empreinte carbone dans un environnement InterCloud, les questions relatives aux data centers à considérer, à la valeur optimale de leur température de fonctionnement, aux VMs à consolider, aux performances et contraintes de localisation à intégrer, ou encore au trafic à router, doivent être analysées. Ainsi, la mise en œuvre d’un tel modèle global est un travail assez laborieux, mais aura le mérite de fournir d’excellentes solutions.

Les divers éléments de la problématique énoncés ci-dessus nous ont donc amenés à nous poser les questions suivantes :

— comment modéliser, à l’aide d’équations mathématiques, la consommation énergétique à l’intérieur d’un data center nous permettant de considérer les interactions conflic- tuelles entre les différents éléments énergivores ?

— notre modélisation est-elle en mesure de bien refléter la réalité du processus de place- ment des applications dans le Cloud, en considérant les différentes exigences liées aux applications, afin d’éviter toute dégradation de performance ?

— comment modéliser les contraintes de co-hébergement et de localisation relatives à la sécurité, à la territorialité et à la redondance des applications ?

— sommes-nous en mesure de proposer un modèle de programmation mathématique global permettant de placer des VMs et leur trafic dans un environnement InterCloud, en minimisant l’empreinte écologique d’un tel environnement, tout en tenant compte des exigences des clients ?

— saurons-nous mettre en œuvre des méthodes de résolution approximatives nous per- mettant d’obtenir un excellent compromis entre le temps d’exécution et la qualité des solutions obtenues ?

Ainsi, nombreuses sont les questions qui nous ont portés à énoncer les principaux objectifs de recherche présentés à la section suivante.