Gestion des microservices : pourquoi est-il temps d’adopter le service mesh ?
A l’ère de l’hyperconnexion et de l’internet industriel des objets, les entreprises modernisent leurs applications et délaissent de plus en plus le modèle traditionnel dit monolithique, pour l’architecture de microservices.
Les technologies conçues pour optimiser les performances des microservices, tel que le service mesh (maillage de services), connaissent un véritable boom. D’après Forrester et Gartner, cette plateforme chargée d’assurer la sécurité, le routage et la communication entre des applications microservices déployées dans des conteneurs, serait même l’une des tendances majeures du cloud computing ces prochaines années. Mais pourquoi est-il impératif pour les entreprises de s’interroger sur leur degré de maturité avant d’adopter cet outil ?
Service mesh : quèsaco ?Un service mesh est une couche d’infrastructure configurable directement dans les applications et ayant pour but l’optimisation de la gestion des microservices. En effet, si les microservices offrent une grande flexibilité, ils génèrent davantage de complexité et le maillage de services permet de simplifier les environnements de conteneurs applicatifs tout en optimisant les performances du réseau. Sa principale fonction consiste ainsi dans la gestion du trafic. Il aide à améliorer la connectivité entre les différents services afin de gagner en rapidité, en agilité et en fiabilité. Il permet également la découverte des services, l’équilibrage des charges, le chiffrement des données, l’authentification et l’autorisation au sein ou en dehors de l’application et la détection des pannes. Lorsqu’un problème est détecté, le service mesh agit comme un disjoncteur afin d’empêcher la propagation de la faille à d’autres services.
Ces fonctionnalités permettent aux entreprises d’améliorer la sécurité et la fiabilité de leurs applications, tout en optimisant la productivité des développeurs qui bénéficient d’une meilleure visibilité grâce aux outils de suivi et d’analyse.
Le service mesh convient-il à toutes les entreprises ?Si le service mesh se présente comme un levier essentiel au développement des applications du futur, cela ne signifie pas pour autant que chaque entreprise utilisant des conteneurs peut nécessairement l’adopter. Son déploiement demeure un processus complexe qui doit résulter d’une mûre décision puisqu’il nécessite, au préalable, un diagnostic exhaustif des besoins de l’entreprise, des objectifs à atteindre et des bénéfices escomptés.
En effet, bien qu’il offre un grand nombre d’avantages, le maillage de services peut présenter des inconvénients, notamment dans des environnements applicatifs de petite taille. Il implique un proxy supplémentaire pour chacun des services, ce qui ajoute de la complexité à l’architecture, et il peut être difficile à intégrer au cycle de vie des logiciels existants.
Les entreprises devraient donc atteindre un certain niveau de maturité dans la topologie des services avant de l’adopter.
En attendant de se familiariser avec le service mesh, elles
peuvent explorer d’autres alternatives afin d’atteindre leurs objectifs. A ce
titre, le système de gestion des applications conteneurisées Kubernetes fait
partie des solutions plébiscitées les plus efficaces et faciles à implémenter.
Il offre une couche réseau riche et un maillage L4 permettant la découverte du
service, l’équilibrage de la charge, le bilan de santé et le contrôle de
l’accès, ainsi qu’une large gamme de services additionnels.
Un simple équilibreur de charge ou une passerelle API peuvent également
répondre aux besoins de l’entreprise. A titre d’exemple, une passerelle API
permet l’ajout de l’authentification et la surveillance du routage des
demandes.
Ainsi, ces outils conviennent parfaitement à des équipes gérant un nombre restreint de microservices, liés par exemple à une application monolithique existante.
Lorsque les ressources grandissent et que les équipes gèrent des applications en développement, le besoin de contrôle et de visibilité sur le réseau s’accroit. Elles peuvent, par exemple, avoir besoin d’ajouter une limitation de débit ou un contrôle d’accès supplémentaire. Prises individuellement, ces opérations ne représentent pas une lourde tâche, mais à l’échelle d’un vaste réseau de mircroservices, elles peuvent devenir un fardeau pour les développeurs et les responsables d’exploitation. C’est alors que le service mesh entre en jeu. En facilitant la communication entre les services, il permet aux équipes de dépasser leurs contraintes techniques et d’optimiser la gestion et le développement des applications.
Quelles perspectives d’avenir pour le service mesh ?Si Netflix ou Twitter investissent massivement dans le maillage de service, cette technologie émergente reste extrêmement évolutive et nécessite des connaissances et un savoir-faire accrus, dont la plupart des entreprises ne disposent pas à ce jour. Par ailleurs, la majorité des projets sont encore des expérimentations et reposent sur des solutions "maison" adaptées à des besoins bien spécifiques. A ce stade, il est donc impossible de prédire l’évolution du service mesh ni quel acteur préemptera le marché, c’est pourquoi il est crucial de capitaliser sur l’aboutissement des technologies et le développement des compétences.
Ce qui est plus prévisible, c’est qu’à l’avenir de nouveaux vendeurs peu scrupuleux chercheront à tirer profit de l’essor du service mesh en inondant le marché de solutions inefficaces ou contrefaites. Les entreprises devront donc redoubler de vigilance et s’entourer de partenaires de confiance pour les conseiller.
Prendre conscience de ces enjeux et du fait de cette technologie nécessite une adaptabilité et une agilité continues sont donc les clés de la réussite.
Comme le souligne Gartner, la question n’est plus de savoir s’il faudra adopter le maillage de service mais plutôt quand l’adopter. Les entreprises doivent donc poursuivre les initiatives en cours et continuer à s’intéresser de près à cette technologie et déterminer le moment optimal pour "sauter le pas".