Injecter des proxys side-car

Anthos Service Mesh utilise des proxys side-car pour améliorer la sécurité, la fiabilité et l'observabilité du réseau. Avec Anthos Service Mesh, ces fonctions sont extraites du conteneur principal de l'application et mises en œuvre dans un proxy commun hors processus fourni sous la forme d'un conteneur distinct dans le même pod. Pour bénéficier pleinement des fonctionnalités d'Anthos Service Mesh, lorsque vous déployez ou redéployez des charges de travail, vous injectez un proxy side-car dans le pod de la charge de travail. Le proxy intercepte tout le trafic entrant et sortant vers les charges de travail et communique avec Anthos Service Mesh.

Activation de l'injection side-car automatique

Vous pouvez injecter un proxy side-car manuellement en mettant à jour la configuration Kubernetes de vos pods, ou utiliser l'injection side-car automatique basée sur les webhooks. Par défaut, l'injection automatique side-car est désactivée pour tous les espaces de noms. Pour activer l'injection automatique, procédez comme suit :

kubectl label namespace NAMESPACE istio-injection=enabled --overwrite

NAMESPACE est le nom de l'espace de noms pour les services de votre application ou default si vous n'avez pas créé explicitement d'espace de noms.

Étant donné que les side-cars sont injectés lors de la création des pods, vous devez redémarrer tous les pods en cours d'exécution pour que la modification prenne effet.

Injection manuelle de side-car

Pour injecter manuellement les side-cars, consultez la page Installer le side-car.

Mettre à jour des side-cars pour les pods existants

Avec l'injection automatique de side-car, vous pouvez mettre à jour les side-cars pour les pods existants avec un redémarrage du pod :

Le redémarrage des pods varie selon qu'ils ont été créés dans le cadre d'un déploiement ou non.

  1. Si vous avez utilisé un déploiement, redémarrez le déploiement pour redémarrer tous les pods avec des side-cars :

    kubectl rollout restart deployment
    

    Si vous n'avez pas utilisé de déploiement, supprimez les pods. Ils sont automatiquement recréés avec les side-cars :

    kubectl delete pod -n YOUR_NAMESPACE --all
  2. Vérifiez que tous les pods de l'espace de noms disposent de side-cars injectés :

    kubectl get pod -n YOUR_NAMESPACE --all

    Dans l'exemple de résultat suivant, qui concerne la commande précédente, la colonne READY indique qu'il existe deux conteneurs pour chacune de vos charges de travail : le conteneur principal et le conteneur du proxy side-car.

    NAME                    READY   STATUS    RESTARTS   AGE
    YOUR_WORKLOAD           2/2     Running   0          20s
    ...
    

Étapes suivantes

En savoir plus :