everythingpossible - Fotolia

Serverless : un coût de départ à bien anticiper

Avant qu’un responsable des achats IT se dote de solutions serverless, il doit pleinement comprendre le fonctionnement de la technologie et se préparer aux efforts de remaniement initial des applications. Une étape potentiellement coûteuse.

Toute technologie émergente s’accompagne inévitablement d’idées fausses et de battages médiatiques. Le serverless, aussi appelé Function as a Service (FaaS), ne fait pas exception.  

L’adoption de cette technologie se poursuivra en 2020. Avant de l’embrasser, les entreprises doivent comprendre son fonctionnement afin de formuler des objectifs réalistes quant à ses avantages et ses inconvénients, en particulier en ce qui concerne les coûts impliqués par le serverless.

Comment fonctionne le serverless ?

Le FaaS est une technologie qui permet à une organisation d’exécuter du code applicatif sans avoir à maintenir des piles matérielles ou logicielles sous-jacentes. Les plateformes Serverless doivent éliminer le besoin d’allouer des ressources de type RAM ou CPU à des applications ou des systèmes. L’infrastructure en question s’en charge de manière transparente. La plupart des déploiements FaaS se font aujourd’hui dans le cloud via des services tels qu'AWS Lambda, Google Cloud Functions et Azure Functions.

L'approche relativement peu interventionniste signifie que les équipes IT et de développement s’occupent moins de la gestion de l’infrastructure. Elles peuvent se concentrer sur la conception et le déploiement d’éléments de code. 

Ce type d’architecture peut se révéler particulièrement utile pour les applications web qui doivent s’adapter de manière imprévisible à des pics de trafic. Traditionnellement, les administrateurs systèmes se préparent à ce phénomène en sur-allouant des ressources, ce qui entraîne invariablement des coûts supplémentaires. Les FaaS éliminent le besoin de provisionner des ressources manuellement suivant les capacités variables requises par les workloads.  

Cette approche s’appuie sur le fait que les serveurs de la plupart des entreprises ne sont actifs que pendant un faible pourcentage de temps. Certains événements définis par les administrateurs déclenchent l’exécution du code serverless. Il remplit sa fonction programmatique, puis il s’arrête. Le FaaS doit accroître l’efficacité de l’infrastructure en faisant des besoins en RAM, en CPU, en appel d’API, des ressources accessibles à la demande.

Pour prendre en charge une architecture serverless, une entreprise a besoin d’une infrastructure spécifique. Elle doit maintenir des données au-delà de la durée d’exécution d’un bout de code. Ces informations persistantes peuvent être des résultats de l’exécution d’un élément de code serverless à stocker dans une base de données hébergée sur un serveur. Elles peuvent aussi correspondre à des assets comme les images présentes sur un site web stocké dans un système de fichiers.

Une appellation trompeuse

Le serverless n’élimine pas à proprement parler le besoin de serveurs physiques. Les fournisseurs de ce type de service allouent des ressources (Stockage, RAM, CPU, VM, etc.) suivant des fonctions programmatiques (appel de base de données via API, traitement algorithmique, etc.) nécessaires à l’accomplissement d’un workload. L’externalisation de ressources dans le cloud a donné naissance à cette appellation commerciale. Function as a Service est une bien meilleure dénomination.

Avantages et inconvénients financiers du serverless

Le coût du FaaS est un sujet très populaire, mais qui manque de clarté.

Les dépenses liées au serverless, contrairement à celles associées aux VM cloud traditionnelles, sont de nature dynamique. Elles sont calculées au millième de seconde lors de l’exécution du code, mais les utilisateurs paient uniquement pour le temps de calcul consommé. Cette architecture nécessite un type de micro-container qui se déclenche et s’arrête à la volée en quelques millisecondes (ms) pour encapsuler une fonction programmatique. Par exemple, AWS facture son service Lambda tous les 100 ms. Le prix varie selon le nombre de fois où se déclenche le code.

A contrario, les fournisseurs de cloud facturent les VM traditionnelles à la seconde ou à l’heure, selon leur type. Les organisations paient même quand ces VM sont inactives. En principe, le serverless coûte moins cher.

Si les plateformes serverless peuvent être rentables à long terme, pour de nombreuses entreprises, elles nécessitent parfois un remaniement du code. Il s’agit d’un effort considérable, potentiellement coûteux.

Les applications serverless dépendent généralement de composants indépendants plutôt que de monolithes. De plus, elles demandent souvent d’utiliser des langages de programmation spécifiques qui ne sont pas forcément les mêmes que ceux employés pour construire l’applicatif existant. Le code des applications FaaS est généralement publié et consommé via des appels API. Or, la refonte d’une solution n’est ni rapide, ni bon marché.

Le réoutillage peut être coûteux, et les organisations peuvent s'endetter sur le plan technique en faisant en sorte que les routines de code faiblement couplées fonctionnent sans faille.

Les startups, elles, peuvent clairement tirer un bénéfice rapide de l’utilisation du serverless. Elles sont beaucoup moins affectées par la refactorisation du code existant.

Les perspectives du serverless

Les organisations n’ont pas tout de suite compris les intérêts du FaaS. Elles ont également mis du temps à s’adapter à l’approche dynamique de programmation. En 2020, davantage d’entreprises évalueront les possibilités des plateformes serverless et commenceront le processus de migration. Toutefois, les grands groupes resteront prudents quant à son utilisation qui demande parfois de repenser totalement une architecture logicielle.

Le serverless n’est donc pas pour tout le monde. Il implique un coût de déploiement important en amont, des investissements conséquents pour combler une dette technique. C’est en étant conscient de cet aspect que les DSI doivent prendre leur décision.

Pour approfondir sur Applications et services

Close