Réduction de la consommation d’énergie dans les réseaux de transport de données et les infrastructures Cloud
Cloud
Historique
Plusieurs dates sont avancées dans la littérature comme marquant le début du Cloud. Mais plusieurs auteurs s’accordent sur le fait que même si on ne les appelait pas comme tel, la technologie Cloud a vu le jour depuis que l’utilisation de services à distance s’est développée. Selon [HESS 2013], l’idée de fournir un service informatique centralisé remonte aux années 1960, lorsque des services informatiques étaient fournis sur un réseau et utilisant la technologie « time-sharing » sur les mainframes. L’auteur indique qu’en 1966, l’ingénieur canadien Douglass Parkhill publiait son livre intitulé « The Challenge of the Computer Utility » [PARKHILL 7 1966], dans lequel il décrit l’idée d’une informatique comme un utilitaire public avec une installation centralisée à laquelle de nombreux utilisateurs distants se connectent via un réseau. Dans les années 80, les entreprises ont réalisé que les serveurs basés sur des ordinateurs normales pourraient être installés à moindre coût à la place des mainframes. Progressivement, ces mainframes ont été remplacés par des ordinateurs normales en raison aussi de la baisse des prix des ordinateurs personnels. Dans les années 90, avec le début de la globalisation de l’Internet, la mode qui permet à plusieurs ordinateurs d’accéder à un serveur refait surface. À cette époque des serveurs web avec une grande puissance étaient requis pour répondre aux multiples demandes des clients faites sur Internet. Depuis ce temps, de plus en plus de services sont offerts sur Internet et les utilisateurs de ces services demandent plus de capacité de stockage. De plus en plus, la logique des applications est déplacée vers des serveurs sur Internet à partir des ordinateurs personnels et cela grâce entre autres à l’augmentation de la vitesse d’accès aux réseaux et à la facilité d’accès. De nos jours, le calcul massif nécessaire peut être réalisé par des prestataires qui se consacrent à cela. Ainsi, plusieurs utilisateurs peuvent partager la même infrastructure, maximisant ainsi l’efficience de celle-ci et minimisant en même temps les coûts pour les utilisateurs. Cela a conduit à la mise en place de technologies comme les grilles de calcul et le Cloud. De nombreux experts soutiendraient que le Cloud provient des grilles de calcul [GORELIK, Master 2013]. Les objectifs principaux des deux architectures sont de réduire les coûts informatiques, d’accroître la flexibilité et la fiabilité. Il convient de noter que le Cloud fait un pas de plus, en ce sens qu’il s’appuie sur les technologies de virtualisation [Nurmi et al. 2009] [Buyya et al. 2009]. Cependant, bien qu’il existe de nombreuses similitudes entre le Cloud et les grilles de calcul, les méthodologies ne sont pas les mêmes. 8 Le terme informatique dans les nuages « Cloud Computinng » commence à apparaître au 21ème siècle [Mohamad HAMZE, Thèse doctorat 2015]. En effet, certains auteurs pensent que la discipline n’est apparue que dans les années 2000, comme une solution à un problème rencontré par Amazon c’est-à-dire le surdimensionnement de son parc de serveurs hors périodes de fêtes. Amazon avait décidé d’investir sur un groupement de machines, dimensionnées pour absorber les charges importantes des commandes faites sur son site pendant les périodes de fêtes. Ces serveurs étaient inutilisés pendant le reste de l’année et pour les rentabiliser, il décida de les louer à d’autres entreprises à la demande. Par la suite de nombreuses entreprises entrent sur le marché du Cloud telles qu’IBM, Microsoft et Google. Ensuite un certain nombre d’universités s’engagent à grande échelle sur des projets de recherche portant sur le Cloud.
Définition
Il n’existe pas une définition officielle ou formelle du Cloud Computing. Nous rencontrons dans la littérature plusieurs définitions du terme Cloud. Mais le terme Cloud fait référence à un nuage tel que nous avons l’habitude de l’utiliser dans les schémas techniques lorsque nous voulons représenter Internet. Mais mêmes si les experts ne sont pas d’accords sur sa définition exacte, la plupart s’accordent à dire qu’elle inclut la notion de services disponibles à la demande et extensible à volonté. Nous donnons ici quelques définitions parmi celles rencontrées dans la littérature : • Le journal Gartner définit le cloud comme suit: « Cloud computing is as a style of computing in which scalable and elastic IT-enabled capabilities are delivered as a service using Internet technologies1 .» • University of Berkeley, une des plus importantes université technique dans le monde définit le Cloud comme suit: «Cloud Computing refers to both the applications delivered as services over the Internet and the hardware and systems software in the data centers that provide those services »[Armbrust et al. 2009]. 1 https://www.gartner.com/it-glossary/cloud-computing 9 • L’encyclopédie informatique Wikipedia définit le cloud comme étant: « L’exploitation de la puissance de calcul ou de stockage de serveurs informatiques distants par l’intermédiaire d’un réseau, généralement Internet. Ces serveurs sont loués à la demande, le plus souvent par tranche d’utilisation selon des critères techniques (puissance, bande passante, etc.) mais également au forfait2 . ». • La version finale de la définition du Cloud pour le National Institute of Standards and Technology (NIST), publiée en Janvier 2017 est : « Le Cloud Computing est un modèle qui permet un accès réseau pratique et sur demande à un pool partagé de ressources informatiques configurables (par exemple, des réseaux, des serveurs, du stockage, des applications et des services) qui peut être rapidement approvisionné et disponible sans trop d’efforts de gestion ou d’interaction d’opérateurs. Ce modèle de cloud favorise la disponibilité et est composé de cinq caractéristiques essentielles, de trois modèles de service et de quatre modèles de déploiement3 . ». 2 https://fr.wikipedia.org/wiki/Cloud_computing 3 https://cloudhosting.tv/cloud-computing-2/final-version-of-nist-cloud-computing-definitionpublished.php La figure 2.1 est une interagir de manière transparente Cloud. L’avantage considérable entreprise où les serveurs sa capacité à maintenir particulièrement de forte demande, mais paie que ce qu’on utilise. de la puissance de calcul puissance de calcul mise
Caractéristiques
Le Cloud possède cinq allons dans la suite les présenter Figure 2.1: Cloud( ©Wikipedia) illustration du Cloud. Des terminaux hétérogènes transparente et on y retrouve les trois modèles considérable des Cloud par rapport à une infrastructure serveurs sont très souvent sous-utilisés est sa scalabilité, particulièrement ses fonctionnalités et ses performances aussi son extensibilité à la demande et son élasticité. utilise. Le Cloud permet également aux consommateurs calcul sans acheter du matériel ou des logiciels. On mise à notre disposition par des fournisseurs via Internet Caractéristiques cinq caractéristiques selon le NIST [Mell&Grance présenter : 10 hétérogènes peuvent de service du propre à une scalabilité, c’est-à-dire rformances en cas élasticité. On ne consommateurs d’acquérir On se sert de la Internet. Mell&Grance 2011]. Nous 11 • Accès à la demande et en libre-service par l’utilisateur: Dans le Cloud, le logiciel est accessible lorsque l’utilisateur le souhaite et il n’y a pas de recours à un administrateur informatique interne ni d’action du côté du fournisseur de service. En outre, pour atteindre des performances élevées en termes d’accessibilité, le Cloud est composé de centres de données situés à plusieurs endroits à travers le monde. • Accès Internet avec une large bande passante : Puisque les services demandés sont situés sur des serveurs distants, un accès à Internet est nécessaire. La construction du service peut poser problème lorsque l’application est utilisée depuis un lieu où la couverture réseau n’est pas bonne. Les techniques standardisées utilisées permettent de s’en servir aussi bien avec un ordinateur qu’un téléphone ou une tablette. • Accès à un pool de ressources : Les ressources informatiques du fournisseur sont mises en commun pour servir plusieurs consommateurs à l’aide d’un modèle multi-locataires avec différentes ressources physiques et virtuelles assignées de manière dynamique et réaffectées selon la demande du consommateur. Le consommateur n’a généralement aucun contrôle ni de connaissance sur l’emplacement exact des ressources fournies. Les ressources peuvent être des serveurs de stockage, des serveurs de calcul, de la mémoire ou de la bande passante. Cette caractéristique est évidente pour un utilisateur classique du web, mais l’environnement Cloud peut être facilement personnalisé et ajusté en fonction de la demande de l’utilisateur. Par contre, les environnements classiques mutualisés sont généralement statiques et plus difficiles à modifier. • Elasticité : L’utilisateur a accès à autant de ressources que nécessaire. Les ressources informatiques sont mobilisables rapidement, autrement dit, l’utilisateur peut ajouter par exemple de l’espace de stockage et d’autres utilisateurs en moins ordinateur. De même, stockage ou le no • L’utilisation est service consommée moyens techniques paramètres tels disque, les fonctions surveillée, contrôlée, du fournisseur que La figure 2.2 montre Cloud sur l’utilisation offre l’avantage de de la demande. Ce cas, les entreprises peuvent se rendre nécessaire. Figure 2.2: Différence entre le modèle de paiement classique et celui du Cloud[ moins de temps qu’il ne faut pour commander même, l’utilisateur peut aussi décider de diminuer nombre d’utilisateurs. est mesurée et facturée au détail: Dans le Cloud, consommée est mesurée à des fins de contrôle, d’adaptation techniques et de facturation. La facturation est liée que: l’heure d’utilisation, le nombre d’utilisateurs, fonctions utilisées etc. L’utilisation des ressources contrôlée, et signalée assurant ainsi la transparence que du consommateur. montre la différence entre le modèle classique et l’utilisation des ressources en fonction du temps. Le payer une capacité (RAM, processeur, disque) qu’en qui n’est pas le cas pour le modèle classique. Dans entreprises sont obligées d’investir sur une capacité maximale, rendre compte dans le temps que celle-ci n’est : Différence entre le modèle de paiement classique et celui du Cloud[HAMZE, Thèse doctorat 2015] 1 et installer un diminuer l’espace de Cloud, la quantité de d’adaptation des liée à l’usage de d’utilisateurs, l’espace ressources peut être tant au niveau le modèle du modèle Cloud qu’en fonction Dans ce dernier maximale, mais pas toujours : Différence entre le modèle de paiement classique et celui du 13
Architecture
Le Cloud Computing est basé sur l’offre de service. Nous pouvons noter principalement trois couches dans le modèle de service du Cloud. La figure 2.3 présente ces différentes couches de la moins visible aux utilisateurs finaux à la plus visible. Figure 2.3: Les couches du Cloud L’Infrastructure as a Service (IaaS) est gérée par les architectures réseaux. La couche Platform as a Service (PaaS) est destinée aux développeurs d’applications et la couche Software as a Service (SaaS) est le produit final pour les utilisateurs. La figure 2.4 constitue une abstraction du Cloud et montre les différentes interactions entre ses acteurs et ses composants. Le fournisseur de services « Vendor » peut fournir tout type de services. Les développeurs d’applications « developers » utilisent les ressources fournies au niveau des couches IaaS et PaaS pour construire des services pour les utilisateurs finaux « End Users ». Figure 2.4: Abstraction du Cloud Computing[Marinos 2009]
Software as a
Le logiciel en tant que repose sur la mise à la Internet. C’est le type de modèle de déploiement, en tant que service à la préoccupe pas de la mise permet de réduire un certain avantage, mais cela rend l’application et mis à part guise l’application. Comme : Abstraction du Cloud Computing[Marinos 2009] a Service (SaaS) que service, plus connu en anglais sous l’acronyme la disposition des utilisateurs plusieurs applications de service le plus utilisé dans le monde [Grevet 2009 nt, le fournisseur loue des applications clé en main demande au lieu de les facturer des licences. Le mise à jour et de la maintenance des logiciels et serveurs certain coût relatif aux logiciels et aux serveurs. C’est rend le client dépendant du mode de fonctionnement part quelques réglages, le client ne peut pas personnaliser Comme exemple d’applications de type SaaS, nous 14 : Abstraction du Cloud Computing[Marinos 2009] l’acronyme « SaaS » applications à travers 2009]. Dans ce main à ses clients Le client ne se serveurs et cela C’est certes un fonctionnement de personnaliser à sa nous pouvons citer 15 l’outil de traitement de texte collaboratif de Google, Google Docs4 et le logiciel de retouche d’image en ligne Adobe Photoshop Online
Platform as a Service (PaaS)
Le Cloud de type plateforme en tant que service « PaaS » met à la disposition des entreprises un environnement d’exécution rapidement disponible. Ce modèle de service est destiné principalement aux entreprises. Il est situé juste en-dessous du SaaS dans l’architecture puisqu’il permet de fournir aux développeurs des ressources pour leur environnement d’exécution. La gestion des applications est du ressort des entreprises, qui peuvent elles-mêmes s’occuper de leurs installations et configurations. Le maintien de la plateforme d’exécution de ces applications est de la responsabilité du fournisseur de Cloud. Le fournisseur met à la disposition du client le matériel des serveurs, les logiciels de base tels que le système d’exploitation et l’infrastructure de connexion, de stockage et de sauvegarde. C’est une architecture sans téléchargement ou installation de logiciels pour les développeurs, responsables informatiques ou utilisateurs finaux. Elle est également connue sous le nom de «cloudware» [Grevet 2009]. Comme exemple de plateforme de type PaaS, nous pouvons citer Google App Engine 6 , qui est une plateforme de conception et d’hébergement d’applications web et Azure Services Platform7 , qui est la plateforme applicative en nuage de Microsoft.
TABLE DES MATIERES |