Le Cloud Computing

Le Cloud ComputingImpossible aujourd’hui de lire la presse spécialisée sans que l’on évoque le cloud computing. Beaucoup de solutions informatiques sont en effet basées sur ce concept, notamment pour la mobilité, les réseaux sociaux, la gestion de ces données personnelles, ou tout est volontiers mis dans « le cloud ». Or derrière ce concept « magique » désigné par un terme volontairement flou, se cache une multitude de solutions. L’objet de cet article est de démystifier les notions du cloud computing en expliquant quelques unes de ces implémentations : IAAS, PAAS et SAAS.

IAAS, PAAS et SAAS

Le cloud computing offre un modèle d’accès à la demande à des ressources informatiques partagées et configurables (des réseaux, des serveurs, du stockage, des applications et des services) qui peuvent être rapidement provisionnées et mises à disposition avec un effort minime de gestion et d’interactions avec le fournisseur.

La référence aux nuages évoque une dématérialisation de l’infrastructure informatique. L’idée est de proposer une capacité de traitement informatique sans se soucier des ressources physiques nécessaires à son maintient : ni sa localisation, ni sa puissance, etc. L’analogie avec la consommation d’électricité est parlante : nous consommons de l’énergie électrique de manière variable, de manière standardisée entre tous les fournisseurs d’électricité, sans savoir comment et où est produite cette électricité.

Schéma Cloud Computing

L’offre de Cloud Computing se décline en trois modèles distincts :

  • IAAS : Infrastructure as a Service : Cette offre propose la location d’une capacité informatique variable. Son niveau d’interface est de l’ordre du Système d’Exploitation (OS). Il est alors possible d’utiliser à sa guise en installant ses propres serveurs logiciels, ses bases de données, ses applications.
  • PAAS : Plateforme as a Service

Ce modèle offre un degré de sophistication plus élevé que l’offre IAAS : il fournit la plateforme matérielle, le Système d’Exploitation (OS) ainsi que tous les logiciels serveurs associés : serveur d’application, bases de données, d’intégration, les runtimes. Il s’agit donc d’une plateforme logicielle complète, sur laquelle il est possible de développer ou migrer ses propres applications. Ces systèmes s’appuient sur des environnements standardisés et multi-technologies (J2EE, .NET, PHP). Ces systèmes fournissent de plus un environnement complet d’exploitation en fournissant des solutions de load balancing, de surveillance, de supervision.

  • SAAS : Software as a Service

Ce modèle permet la location de services offerts par des applications réalisées par le fournisseur de la solution, et qui peuvent être consommés par les utilisateurs. Cette offre ne propose donc plus seulement des plateformes matérielles ou logicielles sur lesquelles nous pouvons déployer nos propres applications, mais fournit des applications prêtes à l’emploi, hébergées par l’opérateur de la solution. Il s’agit donc simplement d’utiliser des logiciels en ligne où tout est complètement transparent pour l’utilisateur.

La solution est intégralement prise en charge par le fournisseur de la solution : la création et la maintenance du logiciel, son hébergement, l’infrastructure matérielle, l’OS, la maintenance des logiciels “middleware” (serveur d’applications, base de données).

Le cloud computing comprend donc plusieurs modèles, permettant de s’adapter à chaque problématique, à chaque entreprise :

  • hébergement d’une solution propriétaire : l’utilisateur y installe ses logiciels middlewares, ses applications et ses données,
  • hébergement d’une application développée par l’utilisateur sur des standards de l’industrie informatique,
  • utilisation d’une solution logicielle complète proposée par le fournisseur d’offre cloud.

 

Le principe de toutes les offres de cloud computing est de s’appuyer sur :

  • les principes de mutualisation des ressources
  • la scalabilité des ressources
  • l’adaptation de la capacité à la demande
  • la facturation à l’acte.

 

Cas typiques d’utilisation

Besoin d’infrastructures spécifiques ou ponctuelles

Le cloud computing permet de répondre au besoin spécifique et/ou ponctuel de nouvelles infrastructures (disque, bande passante, puissance de calcul) en s’appuyant sur la mutualisation des ressources qui permet d’adapter la capacité louée à son besoin :

  • les pics de charges sont mieux gérés,
  • la réactivité du fournisseur pour gérer ces modifications est immédiate.

Les applications qui présentent des sollicitations spécifiques et ponctuelles sont particulièrement candidates aux offres de cloud computing.

  • Applications utilisées de manière ponctuelle, mais avec une charge maximum « raisonnable » : par exemple, application de paie utilisée uniquement en fin de mois, pointeuses de temps de travail ou pour des évènements particuliers et récurrents. Le reste du temps, l’application est très peu utilisée.
  • Applications avec forte sollicitation récurrente avec possibilités de pics de charges importants : applications de commerce pendant la période de solde ou Noël, de SMS au nouvel an, serveurs météo, d’information, ou tout autres applications fréquemment utilisées mais qui présentent des pics de charges lors d’un événement extraordinaire (exemple alerte météo sur les sites météo, application boursière lors des cracks, sites d’informations lors d’actualités importantes). Les variations fortes de charges peuvent s’étendre sur plusieurs minutes, plusieurs heures, plusieurs jours, la solution de cloud computing permet de répondre à ces besoins.
  • Applications généralement peu utilisées mais présentant des forts pics de charges à des périodes bien identifiées: ex : application de déclaration des impôts, d’infrastructure de gestion de votes lors d’élection, de paris lors d’évènements sportifs.

Le dimensionnement « traditionnel » de l’infrastructure hébergeant ces applications est très délicat avec 2 risques majeurs :

  • un surdimensionnement de l’infrastructure, dimensionnée pour les pics de charge, restera inutilisée la plupart du temps et générera des coûts importants alors que la plateforme restera globalement peu utilisée ;
  • un sous-dimensionnement de l’infrastructure, pour absorber la sollicitation moyenne par exemple, restera insuffisante lors des pics de charges.

Hébergement des applications

Les offres PAAS de cloud computing permettent de concentrer les efforts sur les services métiers offerts par sesles applications, en se déchargeant de leur hébergement. En effet, en appuyant ses les développements sur des standards de l’industrie, les applications pourront être hébergées par des fournisseurs d’offre PAAS : l’achat, l’installation, le paramétrage de matériel et de logiciels sont réalisés par le prestataire d’offre PAAS.

L’avantage est que chaque intervenant travaille sur son cœur de métier :

  • le prestataire PAAS maintient la plateforme (les runtimes, l’intégration SOA, les bases de données, le logiciel serveur, la virtualisation) et l’infrastructure (le matériel serveur, le stockage et les réseaux) ;
  • l’utilisateur maintient son application pour son métier. Il n’a plus à se soucier de son hébergement ni de l’infrastructure.

Les avantages sont multiples :

  • l’utilisateur garde la maîtrise de son logiciel et son cœur de métier, qui constitue souvent une richesse pour l’entreprise.
  • les investissements relatifs à l’infrastructure et à l’hébergement de l’application sont désormais effectués par le prestataire PAAS.

Externalisation d’applications non cœur de métier

Les applications d’entreprises sont généralement distinguées suivant leur participation au cœur de métier de l’entreprise et suivant leur dimension stratégique.

  • les applications cœur de métier : soigner pour un hôpital, enseigner pour une université, construire des produits pour une usine.

Ces applications constituent la richesse de l’entreprise, leur développement reste piloté par l’entreprise mais leur hébergement peut être externalisé sur des solutions Platform as a service.

 

  • les applications non cœur de métier mais stratégiques: essentielles à la compétitivité des entreprises: finances, compta, RH, moyens informatiques.

Ces applications ne constituent pas le cœur de métier de l’entreprise, mais restent stratégiques pour son fonctionnement. Ces applications – qui tendent à s’homogénéiser – sont adressées aujourd’hui par des solutions SAAS : messagerie / groupware, gestion des Ressources Humaines, Gestion Électronique de Documents, Bureautique, CRM.

Les solutions SAAS s’envisagent surtout pour les applications non cœur de métier : il s’agit d’externaliser une partie de ces applications utilisées par tous, mais dont les coûts de maintenance par l’entreprise trouvent un intérêt limité. L’entrée dans le monde du cloud computing pour les entreprises commence souvent par ces applications typiques et parfaitement matures : messagerie / wiki / groupware (applications standardisées pour toutes les entreprises), Gestion de la relation Client, la gestion des Ressources Humaines (la maintenance législative est réalisée par le prestataire SAAS), la GED, la Bureautique.

De plus, ces solutions de cloud computing répondent également parfaitement aux besoins de mobilité : les logiciels et les données sont stockés par l’intermédiaire d’une solution de cloud computing et différents dispositifs accèdent à ces données :

  • des clients mobiles peu puissants : smartphones, tablettes, netbooks, ordinateurs portables
  • des ordinateurs d’utilisateurs hors des locaux de l’entreprise (télétravail, mobilité) et/ou géographiquement dispersés sans que le SI de l’entreprise ne soit ouvert à l’extérieur.

 

Intégration avec l’existant

Pour toutes les offres, des ponts avec les SI des entreprises peuvent être mis en place. Divers systèmes permettent de faire communiquer de manière très sécurisée et très finement les applications déjà installées dans son SI avec les applications hébergées sur les plateformes de cloud computing.

Cette interconnexion entre le SI du client et la solution retenue traite les aspects suivants :

  • authentification unifiée des utilisateurs : les utilisateurs doivent s’authentifier de la même façon sur les applications du SI ou sur les applications du cloud computing. Pour cela, des solutions de SSO et de services d’identité peuvent être mis en place au sein de l’entreprise ou par l’intermédiaire de solutions spécialisées en SAAS.
  • échange de données entre applications : les applications du cloud computing doivent pouvoir utiliser quelques données du SI, ou permettre la réintégration des données générées par une application cloud computing dans les entrepôts du SI. Des solutions dites « ISB » pour « Internet Service Bus », déportent l’usage des ESB en entreprise vers des usages avec les solutions de cloud computing. Des interconnexions via des API propriétaires (http ou REST) restent possibles. Les communications sont sécurisées et chiffrées par SSL ou des bus encryptés.
  • intégration des interfaces au sein d’un portail unique : le portail d’entreprise doit à la fois intégrer du contenu d’entreprise et du contenu des applications en cloud computing. Pour cela, des solutions d’agrégation de contenus pour portail peuvent être mises en place au sein de l’entreprise ou par l’intermédiaire de solutions spécialisées en SAAS.
  • interconnexion de cloud: en cas d’utilisation par l’entreprise de plusieurs offres de cloud computing, il doit être possible d’échanger des informations entre offres de cloud computing. Les solutions les plus couramment mises en place se basent sur :
    • des accords entre fournisseurs de cloud pour créer un canal d’échange entre leurs applications,
    • des solutions dédiées proposées en mode SAAS (ISB ou MAAS : Middleware as a Service),
    • des solutions dédiées proposées en mode « appliance » logicielle voire matérielle.

 

Difficultés du cloud computing

Des freins à l’adoption du cloud computing sont souvent évoqués lorsque l’on aborde les solutions de cloud computing.

En premier lieu la sécurité. En effet, les données et les applications n’étant par définition pas matérialisées ni localisées, il existe alors quelques craintes à utiliser ces solutions, notamment concernant la perte, la corruption ou le vol de données.

Les acteurs de cloud computing répondent à ces craintes par :

  • des systèmes ultra-sécurisés :
    • au niveau physique par la sécurisation de leurs data-centers et de leurs locaux
    • par des mesures RH contraignantes : les exploitants sont recrutés sur des critères très précis
  • des procédures d’exploitation maitrisées :
    • sauvegardes et procédures d’exploitations sécurisées
    • procédures auditées et certifiées
  • des data-centers certifiés par les normes les plus exigeantes : SAS70 par exemple.
  • la nature du cloud :
    • les données et applications sont centralisées sur les serveurs et ne sont donc plus dispersées sur des terminaux, potentiellement non sécurisés et facilement sujets aux vols ou perdus ;
    • les flux de données sont plus facilement maîtrisés.

Les autres points pouvant être des freins à l’adoption des solutions de cloud computing et à prendre en considération avant l’utilisation sont :

  • les aspects juridiques, et notamment la localisation des données et les lois inhérentes au pays hébergeur en cas de transfert de données à l’étranger : les données sont protégées physiquement mais qu’en est-il au niveau légal ?
  • la réversibilité de fournisseur : des tentatives d’homogénéisation des offres de cloud computing débutent.

 

Conclusion

Les solutions de cloud computing sont basées sur la fourniture de ressources :

  • dématérialisées
  • dimensionnées au besoin,
  • facturées à l’acte.

 

Les offres de cloud computing sont matures et s’adaptent à de larges besoins et contraintes :

  • adaptation de la capacité aux variations de charges et absorption des pics de charges grâce au dimensionnement dynamique des ressources ;
  • infrastructures informatiques adaptées au plus grand nombre, quelle que soit la taille de l’entreprise ;
  • données et applications centralisées permettant éventuellement d’être accessibles à tous les utilisateurs, à tout moment, en tout lieu, et tous les terminaux fixes et mobiles ;
  • multiplication des environnements pour des usages différents (développement, recette, production) ;
  • infrastructure sécurisée ;
  • extension et complément du SI traditionnel grâce à des ponts entre le SI et les solutions cloud ;
  • multitude d’offres et de solutions en IAAS, PAAS, MAAS, SAAS…

Expert JEE

0 commentaires

votre commentaire

Se joindre à la discussion ?
Vous êtes libre de contribuer !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Inscription newsletter

Ne manquez plus nos derniers articles !