Depuis 2015, les acteurs majeurs du Cloud ont lancé tour à tour leur offre « Serverless » ou infrastructure sans serveur, marquant une étape disruptive supplémentaire à l’égard des usages et des concepts communs d’infrastructures. Ce concept, encore abstrait pour beaucoup, pourrait révolutionner l’héritage laissé par des années de conception d’infrastructures monolithiques. Qu’il s’agisse d’un client, de ses prestataires et fournisseurs historiques, chacun devra effectuer sa transformation culturelle s’il souhaite suivre la tendance et enfin tirer les bénéfices du Cloud.
Mais l’adhérence au changement et l’énergie mise en œuvre pour accompagner ce nouveau concept restent les principales inconnues…
Le Cloud, de nombreuses promesses mais aussi beaucoup de défiance de la part des entreprises
Économies, haute disponibilité et gains de performances sont les promesses majeures affichées par les leaders du Cloud depuis quelques années. Pourtant, nous constatons que certaines entreprises font marche arrière et préfèrent le choix d’un modèle d’infrastructure « On-Premise » classique, voir hybride, ou celui d’un hébergeur traditionnel. Les arguments avancés pour expliquer cette stratégie appliquée sont notamment une meilleure maitrise des coûts et des environnements. Quant aux causes d’un renoncement, elles sont diverses : TCO partiel, coûts annexes non identifiés, défaut de conception de l’architecture Cloud, etc. Ces raisons trouvent souvent leur origine dans la façon d’envisager le Cloud : une projection à isopérimètre de l’infrastructure existante.
Si une migration de type « lift and shift » est tout à fait viable et fonctionnelle, elle ne permet pas de jouir pleinement des avantages qu’offrent les solutions de Cloud public et des services inhérents permettant de répondre aux exigences techniques et économiques.
Le « replatforming » : clé de voute d’une migration dans le Cloud réussie
Le concept de « replatforming » déjà applicable au travers des microservices et de la containerisation, se voit renforcé par l’arrivée des solutions « serverless ».L’intérêt du « serverless », outre ses caractéristique techniques et économiques, est de marquer une rupture franche dans la façon d’envisager la construction et la gestion d’une application dans le Cloud. Il impose de voir au-delà de nos standards historiques. Il faudra concevoir et gérer un maillage de fonctions et d’API à la place d’une architecture 3 tiers.
Ce type de service repose sur une nouvelle couche d’abstraction permettant aux utilisateurs de faire exécuter leur code applicatif par des unités de calcul sans avoir à administrer serveurs et systèmes d’opération, ces derniers étant gérés par le fournisseur de Cloud.Les unités exécutent différentes parties du code selon le type et le nombre d’évènements déclenchés. Ces services, évidemment élastiques, sont répartis et/ou répliqués sur différents points de présence afin d’assurer une haute disponibilité de l’application.
Les « temps de chauffe » observés montrent que, lorsque la charge déclenche la multiplication des ressources, les unités de calcul sont mises à disposition plus rapidement qu’une instance classique. Par conséquent, l’élasticité fait preuve d’une plus grande réactivité.
De plus, la segmentation du code d’une application sur différentes fonctions parallélise les efforts de calcul et permet, elle aussi, un gain de performances.
Un « plus » pour la sécurité
D’un point de vue sécuritaire, le découpage du code offre une diminution du risque. L’application n’est plus un point unique de défaillance mais un ensemble de points indépendant les uns des autres. Les failles et anomalies peuvent donc être contenues sur une partie de l’application seulement.La sécurité de ce type d’environnement s’appréhende aussi de manière différente : les contrôles devront être réalisés sur l’ensemble des API et des points d’entrée, en fonction du schéma de communication de l’application.
Par ailleurs, les méthodes de contrôle devront elles aussi être revues. Il faudra repenser la façon de vérifier la disponibilité de l’application.Économiquement, ce type de service applique le « pay as you go » dans son sens le plus stricte. Les unités de calcul ne sont facturées que lorsqu’elles s’exécutent.
Outre les services annexes, la base de données par exemple, aucun processus n’est nécessaire, en arrière-plan, pour assurer la capacité des unités de calcul à répondre aux évènements.Les fournisseurs de Cloud proposent, pour la plupart, la gratuité du premier million de requêtes. Au-delà, le montant est calculé sur le nombre de requêtes et de Go-seconde consommés.
A moins de disposer de métriques particulièrement précises, il sera très difficile d’estimer le montant des dépenses d’exploitation. Les décideurs financiers devront eux aussi participer à la transformation culturelle.Les fournisseurs de Cloud tels que AWS, Google ou Microsoft qui proposent déjà leur offre, présentent le « serverless » comme un axe stratégique majeur pour les années à venir.
C’est au tour des clients de suivre la tendance. Les chantiers sont nombreux : le recrutement des profils techniques, la formation des équipes techniques, le choix et les usages des outils comme des services, la révision des méthodologies et des processus, le choix des framework pour garantir une réversibilité potentielle, etc.
Le changement culturel a un coût et il faudra quelques années pour que toutes les entreprises puissent l’assumer. Un temps précieux qui devrait permettre à tous les acteurs de joindre la tendance.