samedi 19 mars 2016

Formes et intérêts du Cloud computing

Le Cloud Computing ou "informatique dans les nuages" prend diverses formes ayant toutes des aspects communs mais également chacune leur spécificité et intérêt. Nous allons expliquer tout ça de la façon la plus simple possible.

Nous avons abordé un certain nombre de sujets préliminaires dans les deux articles listés ci-après ; il peut être utile d'en prendre connaissance en préalable :

Les formes de Cloud Computing

Les 3 formes les plus connues sont, par ordre d'apparition, SAAS, PAAS, IAAS. Une forme plus récente est DAAS.

Dans les 4 formes courantes, AAS signifie "As A Service". Il s'agit donc d'offrir (enfin de vendre, faut pas déconner non plus) un service dont la nature, on l'aura deviné, est précisé par la première lettre. 

S pour Software, logiciel en Français : ici on offre un logiciel répondant à un certain besoin. Nous sommes déchargés du besoin d'acheter, installer, et administrer un ordinateur (plusieurs si on veut de la Haute Disponibilité), un OS, un logiciel. On a juste à utiliser le logiciel accessible via une url dans son navigateur.

P pour Platform : ici on offre une plateforme d'exécution, c'est à dire un logiciel serveur ou un ensemble de logiciels serveurs, sur lequel on peut déployer ses propres applications grâce à une console d'administration accessible via une url dans son navigateur. On est déchargé du besoin d'acheter, installer, et administrer un ordinateur (plusieurs si on veut de la Haute Disponibilité), un OS, un ou des logiciels serveurs (un serveur web, un serveur d'application, un serveur de base de données ...) et selon les offres d'intégrer des composants à ces serveurs (plugins, frameworks de développement intégrés, fonctions optionnelles ...).

I pour Infrastructure : ici on offre une plateforme de virtualisation sur laquelle on pourra créer autant de machines virtuelles que nécessaire (dimensionnées selon ses choix, avec l'OS de son choix), selon ses besoins du moment, voire selon les offres bénéficier de fonctionnalités de provisionning automatique (installation automatique de logiciels serveurs). On est déchargé de l'achat, installation, administration etc. de la plateforme de virtualisation.

Illustration des différents modèles de Cloud
Ce diagramme montre les différentes couches d'un SI virtualisé, avec en gris les parties dont il est possible de se décharger selon le mode de Cloud pratiqué. La première pile "on premise" correspond au cas où il n'y a pas de recours au cloud, donc tout est en bleu pour montrer qu'on gère chacune des briques. La dernière pile "SAAS" correspond au cas où on loue le logiciel et donc tout est en gris puisqu'on ne gère plus aucune brique.


D pour Desktop (bureau en Français): ici on offre un environnement de bureau (tel que vous l'obtenez en installant par exemple Windows sur un PC chez vous) accessible via Internet. On peut ainsi trouver son environnement de bureau où qu'on soit, pour peu qu'on ait un accès Internet, et sur n'importe quel système d'exploitation, pour peu qu'il soit supporté (c'est le cas de tous les systèmes courants) et qu'on ai installé un petit logiciel localement. Cette forme est plus récente et fait appel à des technologies un peu différentes des 3 précédentes, nous la détaillerons plus loin. Une bonne présentation en Français est disponible sur le site de la société virtuelbureau.com

Le PAAS connait de multiples déclinaisons selon la nature de la plateforme proposée en location, ce qui amène certains à créer diverses déclinaisons où le P est remplacé par l'initiale du type de serveur proposé.

Les aspects communs, avantages

Le premier aspect est l'utilisation d'Internet comme infrastructure réseau. D'où le terme de "Cloud Computing". Les informaticiens ont en effet l'habitude de représenter Internet sous la forme d'un nuage dans les diagrammes d'architecture réseau ; le nom vient de là.


Le second aspect est qu'il s'agit d'un modèle économique basé sur la location au lieu de l'achat, et dont les coûts sont corrélés à l'usage qu'on fait du service : plus on les utilise, plus on paye, moins on les utilise, moins on paye (mais il y a toujours un montant fixe minimum).

Ce second aspect est essentiel : 
  • il permet d'ajuster les coûts au niveau de l'activité
  • il permet de démarrer une activité (nécessitant un logiciel, ou une plateforme d'exécution, ou encore de la puissance de traitement) sans investissement initial important
  • il permet de tester des idées : en effet puisque l'investissement initial n'est plus obligatoire, on peut lancer quelque chose, et si ça ne fonctionne pas, tout simplement arrêter sans grande conséquence (pas de matériel coûteux à revendre à perte, pas de personnel à recaser ou licencier ...).

Autre point essentiel de nos jours et toujours lié au modèle de location : on remplace des investissements par des charges d'exploitation, ce qui a pour effet de changer la structure du bilan (moins de capital immobilisé), et d'offrir une rentabilité financière à court terme plus attrayante pour des investisseurs (on parle bien ici de la nature financière du capitalisme "moderne", opposée à l'approche patrimoniale classique). C'est la même logique qui pousse les grandes entreprises à vendre leur bâtiments et à louer des locaux. 

Un autre aspect essentiel est que ces mécanismes offrent la possibilité aux PME d'accéder à des technologies auxquelles elles ne pourraient prétendre pour la plupart. Les technologies modernes impliquent en effet des coûts élevés notamment du fait de la multitude de spécialistes coûteux requis pour faire tourner une infrastructure informatique de pointe, et ces coûts cumulés constituent une barrière d'entrée infranchissable sans un solide portefeuille.

Enfin dernier aspect très important de nos jours : la réduction du "time to market". Le temps nécessaire entre une idée et sa concrétisation est très fortement diminué ce qui permet de réagir plus vite aux tendances, avant ses concurrents, et de prendre des parts de marché. Au lieu d'acheter et/ou recruter matériel, logiciel et personnel, on va sur une console d'administration, on fait 3 clics de souris et c'est bon (en réalité c'est un poil plus compliqué mais c'est l'idée générale).

Les aspects communs, inconvénients

Parlons maintenant des inconvénients, car bien sur toute médaille à son revers.

Le premier est lié à la prédictibilité des dépenses : il est en effet très difficile parfois d'estimer à l'avance combien va coûter le service. Si dans le cadre du SAAS c'est assez simple (par exemple, vous allez payer un forfait annuel par utilisateur, et vous connaissez votre nombre d'utilisateur), c'est moins vrai dans le cas du PAAS et surtout du IAAS. Les modèles de facturation proposés par les opérateurs sont très complexes et les opérandes délicates à évaluer. Le recours à des prestataires spécialisés est ici plus que recommandé. Dans tous les cas, la facilité de mise en oeuvre des services implique une grande rigueur dans le suivi qui en est fait, pour éviter d'exploser les compteurs.

Un second est lié à la complexité de la contractualisation avec les opérateurs. En effet, il va falloir définir des niveaux de services garantis (SLA : Service Level Agreement) et des mécanismes de pénalités associés en cas de non respect. En effet, si vous faîtes reposer votre business sur une plateforme exploitée par des tiers, vous voulez être rassuré sur le fait que vous n'allez pas rester sans site de vente en ligne pendant 48H car la femme de ménage a débranché la prise électrique de votre serveur le samedi matin (bien sur aucun risque mais l'image est belle). Et non seulement ce n'est pas simple, tant du point de vue technique que juridique, mais le rapport est déséquilibré car vous avez en face de vous des opérateurs de très grande taille opérant à l'échelle mondiale (Google, IBM, Amazon, Microsoft etc.).

Un autre inconvénient encore est lié au fait que vos données vont être hors de vos murs, et stockées quelque part hors de votre contrôle... 

Outre le côté psychologique de la chose, certaines données sensibles font l'objet de réglementations qui interdisent par exemple qu'elles sortent du pays ou de l'union européenne. Par ailleurs, certaines entreprises sont bizarrement très attachées à la confidentialité de leur fichier client (dingue non !). Si il existe aujourd'hui des acteurs nationaux, force est de reconnaître que tous les plus grands acteurs sont américains... (ils déploient aujourd'hui des datacenter en Europe, encore un point à vérifier avant de contractualiser). Ce dernier point, en ces périodes marquées par les espionnages de la NSA, n'est pas à négliger.

Dernier inconvénient : l'utilisation d'Internet comme infrastructure réseau amène des limitations techniques qui interdisent certains usages, en particulier dans le cas où on a des échanges de données entre le SI interne et une partie externalisée dans le cloud (problème de latence ou de bande passante insuffisante ou non garantie).

Focus SAAS

Le modèle n'est pas nouveau. Il était auparavant appelé ASP (Application Service Provider) mais il a été rebaptisé suivant les tendances marketing du moment.

Les premiers domaines concernés ont été les services tels que la messagerie et les agendas partagés. 

En effet, il n'y a aucune plus-value pour une petite entreprise à financer la gestion de ce type de plateforme en interne ; les moyens étant généralement limités,  il est préférable de les concentrer sur des outils plus orientés cœur de métier. En outre, le petit nombre de boites mails à gérer rapporté au coût de gestion de l'infrastructure ne permet pas nécessairement d'atteindre le point mort en terme de rentabilité (bref, ça coûte moins cher de payer pour un service dans le cloud).



Aujourd'hui on trouve une offre importante en matière de CRM (Customer Relationship Management, GRC Gestion de la Relation Client en Français), de gestion RH, de logiciels comptables, d'ERP (Enterprise Resource Planning, PGI Programme de Gestion Intégrée en bon Français), de suite bureautique plus récemment (Office 365 chez Microsoft par exemple qui propose la suite Office en mode SAAS).

La plupart des éditeurs proposent aujourd'hui leur offre dans le mode SAAS (à la location donc) en alternative à la vente de licence traditionnelle (souvent rebaptisé "on premise").

De nombreux particuliers utilisent des services SAAS sans le savoir pour le stockage de leur photos de vacances ou de leurs fichiers sur Internet : DropBox, GoogleDrive, OneDrive pour ne citer que les plus connus sont des services SAAS.

Focus PAAS

C'est probablement l'offre la moins hétérogène ce qui est assez logique vu la multitude d'environnement serveurs et de stacks applicatives (empilement de frameworks, librairies, technologies) qui existent de nos jours.

Les offres PAAS sont à examiner de près car elles imposent toujours des contraintes importantes en matière d'architecture logicielle et de pratique de développement ; ici encore c'est assez logique, afin de garantir un certain niveau de service les opérateurs doivent s'assurer que les logiciels développés par vos soins et hors de leur contrôle respectent certains principes (afin de pouvoir être load-balancés par exemple, ou encore ne pas effondrer les moteurs de base de données, ou tout simplement s'intégrer harmonieusement dans leur infrastructure).

Focus IAAS

Certaines solutions techniques utilisées par les grands opérateurs de domaine pour leur offre sont accessibles en Open Source.

Elle sont notamment utilisées par des sociétés nationales qui peuvent ainsi élargir leur offre d'hébergement traditionnel (location de matériel dédié ou de m2 dans leurs datacenter) ; ce marché est en plein développement (OVH, Ikoula, Gandi etc.).

Il existe également de nombreux acteurs de plus petite taille à considérer : spécialisés sur certaines domaines d'activité (le réseau des ARSOE dans le cas de l'informatique agricole par exemple), ou hébergeurs visant les PME, ils présentent l'avantage d'être plus souples, adaptables, réactifs, et de proposer des prestations complémentaires liées à l'exploitation des plateformes (les grands acteurs du Cloud ont des offres totalement industrialisées et ne font pas d'exploitation au delà bien sur du minimum de supervision système requis).

Elles sont également utilisées par des grands groupes, qui ont des moyens financiers importants et des DSI très développées, pour exploiter des clouds privés. Rappelons qu'un cloud privé est la même chose que ce qui est proposé par les fournisseurs de solutions IAAS pour leur offre de cloud public, mais installé par l'entreprise dans son datacenter privé et administré par ses soins. Le modèle économique change mais les avantages techniques subsistent (flexibilité, time to market, élasticité, support de la haute disponibilité etc). 

Un Cloud privé hébergé et exploité en externe par un sous traitant est une autre option possible. La différence avec un Cloud public est alors que les serveurs de VM utilisés pour héberger l'infrastructure de virtualisation sont totalement dédiés, ce qui peut rassurer certaines entreprises.

Les deux solutions phares sont CloudStack et OpenStack

Nos inénarrables technocrates Français (rappelez vous Coluche : "donnez leur le Sahara à gérer, dans 5 ans ils achètent du sable") ont voulu créer une offre de Cloud Public National (avec plein de majuscules partout, ça fait plus Français, Meussieur !). L'idée n'était pas mauvaise, il s'agissait de ne pas dépendre d'acteur Américains et de favoriser l'économie Française. Mais bien évidemment ils ont géré l'affaire comme des branques et après avoir  claqué quelques dizaines ou centaines de millions dans le vide, ont fini par abandonner le projet... de toute façon à chaque fois que l'état veut se mêler d'informatique ... Pour plus de détail, voir ce lien sur le projet Andromède.

Focus DAAS

Revenons à la préhistoire de l'informatique : toute la puissance de calcul était centralisée sur un ordinateur unique (mainframe) et les utilisateurs disposaient d'un simple terminal passif (un écran et un clavier).

Dans ce type d'architecture, chaque action de l'utilisateur au niveau de son terminal (appui sur le clavier, action avec la souris) est transmise côté serveur et c'est le serveur qui traite le signal. Si l'action utilisateur implique une modification du contenu affiché à l'écran, alors le serveur envoie un message à l'écran côté client (en fait à un petit programme qui s'exécute côté client et qui gère l'écran) qui se rafraîchit en conséquence.  Le message décrit simplement les zones de l'écran à mettre à jour.

Ce type d'infrastructure est toujours présent dans l'informatique distribuée moderne (serveur X11 sous Linux/Unix, bureau distant Windows etc.). La société Citrix qui commercialise des solutions spécialisées dans ce domaine reste un acteur très important car ce type de solutions, bien que très minoritaire aujourd'hui, présente des avantages indéniables et est irremplaçable dans certains contextes.

Le DAAS est en fait une utilisation de ces solutions d'infrastructure au travers d'Internet. Au lieu d'installer un serveur capable de gérer ce type d'interactions, l'entreprise (ou le particulier) utilise simplement un service localisé quelque part sur Internet (dans le cloud) et bâti sur la virtualisation des postes clients. Côté client, l'installation d'un petit logiciel peu gourmand en ressources est nécessaire. Ce logiciel étant disponible pour de nombreux OS et matériels, on peut retrouver son bureau Windows et exploiter des logiciels lourds sur des machines très peu puissantes et fonctionnant sous d'autres OS (rappelez vous, les traitements sont exécutés côté serveur, ce sont donc les ressources du serveur qui sont sollicitées, pas celle du client qui ne fait qu'envoyer les frappes clavier, et analyser les messages de mise à jour d'écran reçus en retour pour rafraîchir l'affichage).

Comme toujours ce type de solution a des avantages et inconvénients mais sa combinaison avec les technologies de virtualisation en étend encore l'intérêt, en particulier pour les TPE et PME.

Pour finir, le DAAS c'est comme le SAAS sauf que le service consommé, au lieu d'être une simple application en interface web, est un bureau graphique classique avec toutes ses fonctionnalités (installation de logiciels, paramétrage personnalisé etc.). 

Ce type de solution est encore peu connu mais le marché semble amené à se développer. En plus des acteurs traditionnels sur ce marché, Amazon a lancé une offre, et Microsoft a un projet dans les cartons.

Conclusion

Voilà, j'espère que les choses sont claires. 

L'économie du Cloud est encore quelque chose de relativement récent, le taux d'adoption est sans doute moins rapide que le souhaiteraient les grands acteurs du marché mais vu les milliards qu'ils investissent dans ce domaine, et les avantages de la technologie, on peut difficilement douter que ce soit une tendance lourde.

L'usage interne de la virtualisation et la consommation d'applications en mode SAAS ont mis pas mal d'années à entrer dans les mœurs ; mais aujourd'hui c'est devenu très courant. Nul doute pour moi que PAAS et IAAS suivront le même chemin.