Ce document a été traduit à l'aide d'une technologie de traduction automatique. Bien que nous nous efforcions de fournir des traductions exactes, nous ne fournissons aucune garantie quant à l'exhaustivité, l'exactitude ou la fiabilité du contenu traduit. En cas de divergence, la version originale anglaise prévaut et fait foi.

Configurez les composants d’Istio pour la gestion du trafic

Rancher-Istio a cessé la prise en charge depuis Rancher v2.12.0 ; tournez-vous vers l’SUSE Application Collection d’Istio pour une sécurité renforcée (incluse dans les abonnements SUSE Rancher Prime). Des informations détaillées peuvent être trouvées dans cette annonce.

Un avantage central de la gestion du trafic dans Istio est qu’elle permet le routage dynamique des requêtes. Parmi les applications courantes du routage dynamique des requêtes, on trouve les déploiements canari et les déploiements bleu/vert. Les deux ressources clés dans la gestion du trafic d’Istio sont les services virtuels et les règles de destination.

  • Les services virtuels interceptent et dirigent le trafic vers vos services Kubernetes, vous permettant de diviser les pourcentages de trafic d’une requête entre différents services. Vous pouvez les utiliser pour définir un ensemble de règles de routage à appliquer lorsqu’un hôte est adressé.

  • Les règles de destination servent de source unique de vérité sur les versions de service disponibles pour recevoir du trafic des services virtuels. Vous pouvez utiliser ces ressources pour définir des politiques qui s’appliquent au trafic destiné à un service après que le routage a eu lieu.

Cette section décrit comment ajouter un exemple de service virtuel qui correspond au reviews microservice dans l’appli d’exemple BookInfo. Le but de ce service est de diviser le trafic entre deux versions du service reviews.

Dans cet exemple, nous prenons le trafic vers le reviews service et l’interceptons afin que 50 % de celui-ci aille à v1 du service et 50 % aille à v2.

Après le déploiement de ce service virtuel, nous allons générer du trafic et voir grâce à la visualisation Kiali que le trafic est réparti également entre les deux versions du service.

Pour déployer le service virtuel et les règles de destination pour le reviews service,

  1. Cliquez sur ☰ > Gestion des clusters.

  2. Allez dans le cluster où Istio est installé et cliquez sur Explorer.

  3. Dans le cluster où Istio est installé, cliquez sur menu:Istio[Règles de destination] dans la barre de navigation à gauche.

  4. Cliquez sur Create.

  5. Copiez et collez le yaml de la règle de destination fourni ci-dessous.

  6. Cliquez sur Create.

  7. Cliquez sur Modifier en YAML et utilisez cette configuration :

     apiVersion: networking.istio.io/v1alpha3
     kind: DestinationRule
     metadata:
       name: reviews
     spec:
       host: reviews
       subsets:
       - name: v1
         labels:
           version: v1
       - name: v2
         labels:
           version: v2
       - name: v3
         labels:
           version: v3
  8. Cliquez sur Create.

Ensuite, pour déployer le service virtuel qui fournit le routage du trafic utilisant la règle de destination :

  1. Cliquez sur VirtualService dans la barre de navigation latérale.

  2. Cliquez sur Créer à partir de Yaml.

  3. Copiez et collez le yaml de VirtualService fourni ci-dessous.

  4. Cliquez sur Create.

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: reviews
spec:
  hosts:
  - reviews
  http:
  - route:
    - destination:
        host: reviews
        subset: v1
      weight: 50
    - destination:
        host: reviews
        subset: v3
      weight: 50
---

Résultat : Lorsque vous générez du trafic vers ce service (par exemple, en actualisant l’URL de la passerelle d’entrée), le graphique de trafic Kiali reflétera que le trafic vers le reviews service est réparti également entre v1 et v3.