Le cloud computing

Publié le 13 janvier 2009 par Youssef Rahoui


Bien que le terme cloud computing soit relativement récent, ce qu'il y a derrière existe déjà depuis des années. Cloud computing (ou « informatique dans les nuages ») est une conception de l'informatique comme étant un service. C'est en quelque sorte un business model.

Nous constatons que de manière générale, il n'y a pas de consensus au niveau de l'industrie informatique sur une seule et unique définition du cloud computing.

Qu'il s'agisse d'un particulier ou d'une entreprise, un service est désiré, quelle que soit sa nature, le lieu, le moment, etc. Ce service est défini à partir du besoin de l'utilisateur. Cela implique plusieurs dimensions : rendu du service (le plus important), évolutivité, sécurité, pérennité, prix... Le cloud computing, c'est l'informatique vue comme un service.

Du point de vue de la société qui héberge ce service, elle doit mettre en œuvre les environnements matériels et logiciels afin de rendre ce service dans les conditions souhaitées par l'utilisateur. L'utilisateur final ne doit pas se soucier de ce qui se passe derrière.

À mon sens, une partie de ce concept prend sa genèse dans les projets de calcul scientifique. En effet, depuis des dizaines d'années, de nombreux laboratoires de recherche disposent de fermes de calcul afin de permettre à des scientifiques de divers domaines (mathématique, physique, médecine…) de faire fonctionner des algorithmes. Le scientifique propose son programme à une ferme de calcul dont il ne connaît pas nécessairement le lieu mais dont il connaît les services qu'elle peut lui rendre : puissance de calcul et par conséquent temps de traitement, capacité de stockage, etc.

La représentation de cette ferme de calcul planétaire n'est pas sans évoquer la définition de cloud computing. Sur une carte du monde, on voit un nuage de point représentant tous les postes effectuant une micro action. Peu importe l'importance de ce point, sa localisation, qui en est le propriétaire... Il rend le service à son échelle.

Récemment, une certaine frénésie s'empare du monde de l'informatique autour de ce concept, comme ce fut le cas pour le GRID... De nombreux acteurs se sont précipités pour présenter une offre nouvelle... ou pour repackager une offre existante avec un tampon « Cloud Computing Inside », histoire d'indiquer qu'ils sont dans le coup.

Aujourd'hui, l'offre peut être découpée en trois :

  • SaaS (Software as a Service). Applications disponibles en tant que service. Leur utilisation est transparente pour les utilisateurs, qui ne ce soucient ni de la plateforme, ni du matériel ni des évolutions. Nous retrouverons comme acteurs Google Apps, App Exchange de Salesforce, Microsoft Azure...
  • PaaS (Platform as a Service). Mise à disposition d'environnements techniques. L'approvisionnement de matériel et la montée en charge sont cependant transparents. Les acteurs sont ici Amazon Simple DB, Google App engine, Sun Caroline, Microsoft Azure...
  • HaaS (Hardware as a Service). Solutions de provisioning matériel simple et rapide. Acteurs : Amazon EC2/S3

Un autre type d'offre pouvant s'apparenter au cloud computing peut être cité, quoiqu'il soit bien proche des offres classiques. Il s'agit de l'outsourcing. De nombreux acteurs (IBM, ATOS, Capgemini, EDS...) proposent un service de gestion de l'infrastructure (infrastructure management) et de l'application (application management) adapté au besoin du client. Même si souvent dans ce cas le client garde la maitrise de l'infrastructure, il délègue la mise en œuvre et maintenance à un tiers. De ce point de vue, cela rejoint l'esprit du cloud computing.

Ainsi, en fonction des besoins, il est possible pour une entreprise de disposer d'un service technique performant en se souciant le moins possible de différents aspects : matériel, administration, sauvegarde, approvisionnement... L'informatique est vue comme un service (utility) et l'entreprise se concentre sur l'essentiel, son métier, ce qui fait sa valeur ajoutée. Les différentes offres citées plus haut permettent de positionner le curseur de la maitrise des environnements comme on le souhaite. Plus l'on descend, plus l'on garde la maitrise du système d'information.

PS : L'article dans sa version originale se trouve ici.