Hidria.net » Blog » Comment expliquer simplement le Service Mesh ?

Comment expliquer simplement le Service Mesh ?

Les maillages de services ou Services Mesh accompagnent généralement les microservices, les applications cloud ainsi que les conteneurs. Il s’agit des moyens utilisés pour contrôler la communication entre les services d’un réseau. Que faut-il concrètement retenir d’un service Mesh ? Quel est son mode de fonctionnement ? Éléments de réponse !

Service Mesh : qu’est-ce que c’est ?

Un Service Mesh ou maillage de services est un moyen utilisé pour contrôler le partage des données entre les différentes parties d’une application. Comparativement aux autres canaux de gestion des communications, un Service Mesh s’apparente à une couche d’infrastructures dédiées directement intégrée dans l’application.

Aussi visible qu’elle soit, cette couche a essentiellement pour fonction d’indiquer le mode de fonctionnement ou d’interaction entre les différents éléments d’une application. C’est un détail qui va permettre d’optimiser les communications et donc de prévenir les éventuels temps d’arrêt pendant l’évolution de l’application.

Quel est le mode de fonctionnement d’un Service Mesh ?

Peu importe le paradigme de développement utilisé, l’architecture d’un Service Mesh utilise side-car comme instance de proxy. De façon plus précise, un maillage de service n’ajoute aucune autre fonctionnalité à l’environnement d’exécution d’une application donnée. Pour définir l’acheminement d’une commande d’un point à un autre, les applications ont toujours recours à certaines règles.

Un maillage de services est créé sous la forme de proxys réseau dans une application. Dans un conteneur, l’instance de proxy est jointe à chaque unité d’orchestration de conteneur ; ce qui n’est pas le cas au niveau d’une application de microservices. À leurs niveaux, un side-car est directement joint à chaque service.

Les instances de services ou de proxy peuvent traiter les tâches qui sont indépendantes du service comme la sécurité ou la surveillance. De par leur interaction, ces instances forment le plan de données dans un Service Mesh. Quant au plan de contrôle, il se charge de la gestion des tâches telles que la mise en œuvre de politique ou la création d’instances. Pour gérer une application, ce plan de contrôle peut se connecter à une ligne de commande ou à une interface graphique.

Quels sont les avantages d’un service Mesh ?

Les avantages d’un Service Mesh sont principalement :

  • une communication simplifiée pour les conteneurs et les microservices ;
  • la présence des fonctions de sécurité telles que l’authentification et le chiffrement ;
  • le gain de temps en matière de test, de développement et de déploiement d’une application ;
  • la limitation des erreurs de communications, etc.

Il convient de préciser qu’en dehors de ces points positifs, un side-car est placé à côté d’un cluster. Cela permet de gérer efficacement les services réseau.

Un Service Mesh a-t-il des inconvénients ?

Bien qu’il présente un nombre important d’avantages, un Service Mesh n’est pas sans limites. En effet, parmi ses quelques points faibles, on recense l’augmentation du nombre d’instances en exécution pendant son utilisation. Aussi, les services Mesh ne résolvent pas toutes les problématiques. Par exemple, ils ne parviennent pas à assurer le mappage des transformations ou l’intégration avec d’autres systèmes ou services.

Malgré ces quelques limites, les services Mesh jouent un rôle important en matière de communication de services réseau.

Laisser un commentaire