À propos des maillages de services

Un maillage de service est une couche d’infrastructure dans votre application qui facilite la communication entre les services. Les services de maillage offrent des fonctionnalités axées sur les aspects suivants : gestion du trafic, résilience, stratégie, sécurité, identité forte et observabilité des charges de travail. Votre application est dissociée de ces fonctionnalités opérationnelles pendant qu’ils sont déplacées par le service de maillage hors de la couche Application, au niveau de la couche Infrastructure.

Scénarios

Lorsque vous utilisez un maillage de service, vous pouvez activer des scénarios tels que :

  • Chiffrer tout le trafic dans le cluster : activez le protocole TLS mutuel entre services spécifiés dans le cluster. Cela peut être étendu à l’entrée et à la sortie au niveau du périmètre du réseau, et fournit une option sécurisée par défaut sans aucune modification nécessaire pour le code et l’infrastructure de l’application.

  • Lancements de versions Canary et par phases : spécifiez les conditions de routage d’un sous-ensemble de trafic vers un ensemble de nouveaux services dans le cluster. En cas de test réussi d’une version Canary, supprimez le routage conditionnel et augmentez progressivement le pourcentage du trafic vers un nouveau service. Au final, tout le trafic va être dirigé vers le nouveau service.

  • Gestion et manipulation du trafic : créez une stratégie sur un service qui limite tout le trafic à une version d’un service à partir d’une origine spécifique, ou une stratégie qui applique une stratégie de nouvelle tentative aux classes d’échecs entre les services spécifiés. Mettez en miroir le trafic en direct vers les nouvelles versions des services pendant une migration ou pour déboguer des problèmes. Injectez des erreurs entre les services dans un environnement de test pour tester la résilience.

  • Observabilité : obtenez des insights sur le mode de connexion de vos services et le trafic qui transite entre eux. Rassemblez des métriques, des journaux et des traces pour l’ensemble du trafic dans le cluster y compris pour les entrées/sorties. Ajoutez des fonctionnalités de traçage distribué aux applications.

Critères de sélection

Avant de sélectionner un service de maillage, veillez à bien comprendre vos exigences et les raisons pour lesquelles vous souhaitez en installer un. Posez les questions suivantes :

  • Est-ce que un contrôleur d’entrée suffisant pour mes besoins ? : Parfois, la mise en place d’une fonctionnalité telle qu’un test A/B ou une répartition du trafic à l’entrée est suffisante pour prendre en charge le scénario requis. N’augmentez pas le niveau de complexité de votre environnement si cela n’en vaut pas la peine.

  • Mes charges de travail et mon environnement peuvent-elles tolérer les surcharges supplémentaires ? : Tous les composants requis pour prendre en charge le maillage de service nécessitent des ressources telles que le processeur et la mémoire. Tous les proxys et les vérifications de stratégie associées ajoutent de la latence à votre trafic. Si vous avez des charges de travail qui sont très sensibles à la latence ou ne peuvent pas fournir de ressources supplémentaires pour couvrir les composants de maillage de service, vous devez reconsidérer l’utilisation d’un maillage de service.

  • Cela ajoute-t-il une complexité inutile ? : si vous souhaitez installer un maillage de service pour utiliser une fonctionnalité qui n’est pas critique pour les équipes métier ou opérationnelles, déterminez si la complexité supplémentaire de l’installation, de la maintenance et de la configuration en vaut la peine.

  • Cela peut-il être adoptée d’une manière incrémentiel ? : Vous pouvez adopter certains maillages de services proposant un grand nombre de fonctionnalités de manière plus incrémentielle. Dans ce cas, vous installez uniquement les composants nécessaires à votre réussite. Si vous constatez plus tard que d’autres fonctionnalités sont requises, explorez-les ultérieurement. Résistez à l’envie d’installer tout dès le début.

Étapes suivantes

Azure Kubernetes Service (AKS) propose officiellement des modules complémentaires pris en charge pour Istio et Open Service Mesh :

Il existe également des maillages de service fournis par des projets open source et des tiers qui sont couramment utilisés avec AKS. Ces services de maillage ne sont pas couverts par la politique de support AKS.

Pour plus d’informations sur le panorama des maillages de service, consultez Panorama des maillages de service de couche 5.

Pour plus d’informations sur les travaux de standardisation des maillages de service, voir :