L'informatique en nuage (Cloud Computing, traduit par infonuagique par les Canadiens francophones) est un service d'hébergement informatique en réseau dont la première apparition fut le lancement par Amazon de son offre Amazon Web Services (AWS) en 2006. Il s'agissait alors pour Amazon de commercialiser la puissance de calcul inutilisée des serveurs déployés de par le monde pour son propre usage. Ces serveurs n'étaient utilisés qu'à 10 % de leur capacité, afin de pouvoir faire face aux pointes saisonnières, notamment lors des fêtes de fin d'année.
L'idée d'une offre de services informatiques détachée, grâce au réseau, des caractéristiques techniques de son implémentation avait été formulée quelques années plus tôt, par exemple par des chercheurs tels que Michel Volle .
L'originalité de l'informatique en nuage, par rapport aux offres traditionnelles d'hébergement de données, de sites Web ou de serveurs de calcul, repose sur les cinq caractéristiques suivantes :
-
déploiement et arrêt des services à la demande, en self-service, généralement par une interface Web, quasi instantanément ;
-
accès par réseau à haut débit ;
-
mutualisation de ressources non localisées : infrastructures, réseau, logiciel, stockage ;
-
allocation et désallocation rapide des ressources (« élasticité ») ;
-
facturation à la consommation, typiquement heure par heure.
Cette souplesse est permise par la disponibilité de quatre technologies déjà bien connues, mais dont les performances ont accompli récemment des progrès considérables : l'informatique distribuée, un réseau à haut débit omniprésent, le système de noms de domaines (DNS), et des plates-formes efficaces pour machines virtuelles. Quelques remarques sur ces technologies :
-
la nécessité d'un réseau rapide et omniprésent est évidente ;
-
la disponibilité de systèmes efficaces de virtualisation, dont une analyse détaillée sera donnée dans cet article, permet de déployer facilement, et même dans certains cas automatiquement, de nouveaux serveurs à la demande, alors que s'il s'agissait de machines physiques, il y faudrait toute une logistique de transport, de distribution d'énergie et d'infrastructure réseau ;
-
l'usage de techniques perfectionnées de gestion du DNS confère à cette répartition dans l'espace (physique et topologique) la souplesse nécessaire ;
-
une fois que l'on a déployé de nombreuses machines virtuelles, les principes de l'informatique distribuée sont indispensables pour les faire coopérer de façon cohérente. Le livre de Sir Charles Antony Richard Hoare est la référence sur les principes de l'informatique distribuée.
L'informatique en nuage peut être offerte selon trois formes :
-
IaaS (Infrastructure as a Service) : le client se voit livrer une machine (virtuelle) nue, c'est-à-dire sans système d'exploitation installé, mais avec de l'espace disque et une ou plusieurs interfaces réseau (virtuelles) ; il installe sur cette machine le système et les logiciels de son choix, et fait son affaire des mises à jour, de sécurité notamment ;
-
PaaS (Platform as a Service) : le client reçoit une machine virtuelle dotée du système d'exploitation qu'il aura choisi sur le catalogue du fournisseur, ainsi que de quelques programmes utilitaires (base de données, serveur Web par exemple) ; c'est le fournisseur qui assurera les mises à jour des logiciels qu'il aura installés, cependant que le client sera responsable de la gestion des données et des logiciels d'application qu'il aura installés lui-même ;
-
SaaS (Software as a Service) : le client reçoit les droits d'accès à un système entièrement configuré avec les logiciels choisis sur le catalogue du fournisseur (par exemple, paie, messagerie, blog, wiki ou gestion financière), il n'a plus qu'à les utiliser avec ses propres données.
Grâce à la virtualisation des serveurs et du réseau, l'utilisateur de services en nuage ne sait où se trouvent ni ses données, ni l'ordinateur qui les exploite, et d'ailleurs leur emplacement physique peut changer à tout instant, même en cours de travail.
La plupart des services en réseau destinés au grand public ou aux entreprises, tels que les Google Apps, Facebook, Dropbox, etc., fonctionnent en nuage : on ne sait où sont ni les données, ni les ordinateurs qui les créent et qui les transforment.