De nombreux grands comptes se sont désormais lancés dans le Cloud public : les outils de gestion de la relation client (CRM), les solutions de collaboration et de communication sont des illustrations flagrantes de la démocratisation du SaaS. L’utilisation de VM ponctuelles et rapidement provisionnées, avec ou sans couche logicielle, pour des besoins de développement ou de R&D est aujourd’hui largement répandue.
Jusqu’à présent, les principales motivations d’adoption du Cloud computing sont les coûts (économie et modèle) et la flexibilité apportée (rapidité de provisioning, élasticité à la demande). L’étape suivante pour ces entreprises consistera sans aucun doute à se recentrer davantage sur leur cœur d’activité et à apporter plus d’innovation. Voici quelques exemples de cas d’usage de demain.
Le Cloud computing comme incubateur
L’un des usages émergents est l’utilisation du Cloud public en tant qu’incubateur. Prenons le Big data par exemple : le Cloud est une excellente opportunité pour les entreprises qui souhaitent éprouver et expérimenter ces nouvelles technologies pendant un Proof-Of-Concept (POC), quitte à rebasculer ensuite sur un hébergement on-premise pour la phase de mise en production.
Auparavant, réaliser un POC nécessitait d’investir sur des infrastructures, de contractualiser pour disposer de licences de test, de prendre en compte les délais de mise en œuvre. Désormais, les fournisseurs Cloud proposent des offres prêtes à l’utilisation immédiatement et facturées selon l’usage qui en est fait.
Le modèle économique Cloud se prête parfaitement à ce cas d’usage et favorisera demain l’innovation technologique.
Le Cloud comme promesse d’une meilleure qualité de service
La disponibilité des applications critiques reste un enjeu majeur des DSI aujourd’hui. Les infrastructures utilisées doivent pouvoir répondre aux aléas qui surviennent, tels que les incidents ou les pics de charge. C’est l’une des promesses du Cloud, qui se concrétisera demain grâce à plusieurs leviers.
Prenons l’exemple du Plan de Reprise d’Activités (PRA) permanent. Il s’agit de répliquer l’application plusieurs fois et de simuler en continu, via un loadbalancer, la perte de l’une d’elles. Ce mécanisme permet de garantir une meilleure disponibilité du service.
Autre exemple, pour les sites web worldwide, il sera possible de répliquer les infrastructures sous-jacentes dans les différents datacenters du fournisseur et de diriger les utilisateurs qui s’y connectent en fonction de leur localisation géographique. Cette fois-ci, c’est le temps de réponse qui sera optimisé.
Dernier exemple, les entreprises commencent à implémenter des applications pour lesquelles l’infrastructure qui l’héberge pourra d’elle-même s’étendre ou se réduire en fonction des connexions réelles, voire s’éteindre en période d’inactivité. Ce mécanisme de « scale up / scale down » permet à la fois de réduire les coûts (dans un modèle de facturation à l’usage), mais également de garantir une disponibilité optimale en cas de forte activité. Cela se traduit techniquement par l’évolution des ressources même des serveurs ou de leur nombre, en fonction des socles installés dessus, mais nécessite surtout des applications dont le design est spécialement étudié pour.
Une accélération du cycle de vie des applications
Côté PaaS, de nombreuses évolutions sont encore à venir, visant principalement à réduire le time-to-market des applications, via une simplification de leur déploiement.
L’approche par containers est un premier levier visant à répondre à cet objectif. Le marché s’oriente vers des plates-formes capables d’exécuter du code quel que soit le serveur d’application sous-jacent. Cela est rendu possible par l’utilisation de containers, qui embarquent le code, l’application et les binaires du serveur d’application, et sont exécutables sur tout environnement d’exécution. Des solutions se développent pour faciliter la création et la gestion de ces containers, Docker par exemple.
Ainsi les entreprises n’auront plus à choisir entre des offres PaaS proposant un serveur d’application ou un autre, l’utilisation de containers permettra d’exécuter le code quel que soit l’environnement utilisé. L’approche par containers est un premier levier visant à faciliter le déploiement d’applications sur les offres PaaS.
Le second moyen qui se démocratise est l’utilisation d’un gestionnaire de configuration qui permet d’automatiser le déploiement de composants logiciels. Cette industrialisation peut se faire à l’aide d’outils comme Chef, Puppet, CFEngine… et apporte de nombreux bénéfices. Ces outils en pleine expansion permettront ainsi d’accélérer le cycle de mise en production des applications pour suivre plus facilement les évolutions applicatives demandées plus fréquemment par les Métiers.
Cela ne pourra toutefois pas se faire sans une adaptation du cycle de vie des applications, pour adosser les usines logicielles aux offres PaaS qui les hébergent, et une adaptation de l’organisation et des processus existants. C’est justement l’objectif de l’approche appelée « DevOps », qui se caractérise par une coopération étroite entre la maîtrise d’œuvre, les équipes chargées des développements, et celles de l’exploitation. Il n’y a par exemple pas d’intérêt à ce qu’une nouvelle fonctionnalité soit demandée chaque semaine et effectivement développée, si les mises en production de l’application ne sont prévues que tous les 6 mois. L’objectif de cette méthode est donc de prendre en compte dès le lancement d’un projet applicatif les besoins fonctionnels en amont, afin d’aligner ensuite les fréquences de mise à disposition de nouvelles fonctionnalités et celles de mise en production.
De nombreux cas d’usage seront rencontrés demain et les exemples présentés ici n’ont pas tous le même degré de maturité : il existe déjà quelques POC réalisés sur des plateformes Cloud, alors que la mise en œuvre du mécanisme de « scale up / scale down » reste aujourd’hui une promesse difficilement réalisable. Quant à l’évolution du cycle de vie des applications, et à l’industrialisation de leur déploiement, on voit que cela se fera une période plus longue, car une transformation des processus, des compétences et des équipes au sein de la DSI seront également nécessaires.