API du plan de contrôle xDS

Traffic Director et ses clients (proxys Envoy ou bibliothèques gRPC sans proxy) utilisent l'API xDS Open Source pour échanger des informations. Lorsque vous configurez Traffic Director, par exemple en utilisant des ressources telles que des règles de transfert et des services de backend, Traffic Director convertit ces ressources en configuration xDS qu'il partage avec ses clients.

Compatibilité des versions xDS

Traffic Director est compatible avec xDS v3 (fortement recommandé) et xDS v2. xDS v2 ne sera plus pris en charge à partir du 20 juin 2024. Si vous déployez Traffic Director pour la première fois, nous vous recommandons vivement d'utiliser xDS v3.

Pour déterminer les versions d'Envoy et de gRPC compatibles avec xDS v3, consultez la documentation sur Envoy et gRPC.

Migrer de xDS v2 à xDS v3

Le processus de migration comporte deux étapes :

  1. Mettez à jour les autorisations IAM (Identity and Access Management) accordées au compte de service utilisé par vos clients (proxys Envoy ou bibliothèques gRPC sans proxy) lors de la connexion à Traffic Director.
  2. Mettez à jour et redéployez vos applications. Les étapes spécifiques varient en fonction de votre déploiement. Elles sont expliquées dans les sections suivantes.

Mettre à jour les autorisations IAM du compte de service

Assurez-vous que le compte de service utilisé par vos clients Traffic Director (Envoy et gRPC sans proxy) dispose des autorisations trafficdirector.networks.reportMetrics et trafficdirector.networks.getConfigs. Ces autorisations sont incluses dans le rôle client Traffic Director (roles/trafficdirector.client) d'IAM.

Si vous utilisez un rôle IAM personnalisé, vous pouvez ajouter ces autorisations au rôle personnalisé. Une fois les autorisations ajoutées, vous pouvez supprimer le rôle Lecteur de réseau Compute (roles/compute.networkViewer) et/ou le rôle Administrateur de réseau Compute (roles/compute.networkAdmin) du compte de service.

Mettre à jour vos applications

Après avoir mis à jour les autorisations IAM sur le compte de service, mettez à jour vos applications.

Envoy sur Compute Engine

Si vous utilisez un déploiement Envoy automatique avec Compute Engine, effectuez un redémarrage ou un remplacement progressif des groupes d'instances gérés. Une version d'Envoy qui prend en charge xDS v3 est automatiquement ajoutée à vos instances de machine virtuelle (VM).

Si vous déployez manuellement Envoy sur des VM Compute Engine, suivez le guide de configuration pour créer un modèle d'instance. Le guide de configuration utilise une version récente d'Envoy compatible avec xDS v3. Effectuez ensuite une mise à jour progressive en spécifiant le nouveau modèle d'instance.

Envoy sur GKE

Si vous utilisez l'injection Envoy automatique avec Google Kubernetes Engine (GKE), réinstallez l'injecteur de side-car sur les clusters GKE que vous utilisez avec Traffic Director. Lorsqu'un nouveau pod est créé, un proxy side-car Envoy compatible avec xDS v3 est automatiquement injecté avec votre pod de charge de travail.

Si vous utilisez l'injection manuelle de side-car sur GKE, redéployez le proxy side-car sur chacun de vos clusters GKE.

Services gRPC sans proxy

Le processus de migration comporte deux étapes :

  1. Assurez-vous que la version de gRPC que vous utilisez est compatible avec xDS v3. Pour en savoir plus, consultez la page Fonctionnalités xDS dans gRPC.

  2. Mettez à jour la configuration d'amorçage en procédant comme suit :

    1. Dans le champ "xds_servers", ajoutez "server_features": ["xds_v3"] comme indiqué dans cet exemple de fichier d'amorçage.
    2. L'ID du nœud doit être au format suivant, comme illustré dans l'exemple précédent :

      "projects/PROJECT_NUMBER/networks/NETWORK_NAME/nodes/ID"
      

Après avoir apporté les modifications ci-dessus à votre application, compilez-la et déployez-la à nouveau.

Ces modifications de la configuration d'amorçage n'affectent pas les versions de gRPC qui ne sont pas compatibles avec xDS v3. En outre, si les modifications ci-dessus ne sont pas présentes dans la configuration d'amorçage, les versions de gRPC compatibles avec xDS v3 utilisent xDS v2.

Pour plus de commodité, vous pouvez utiliser la version 0.11.0 du générateur d'amorçage Traffic Director ou une version ultérieure pour générer une configuration d'amorçage compatible xDS v3.

Vérifier que les clients Traffic Director utilisent xDS v3

Pour inspecter la configuration générée par Traffic Director pour ses clients, vous pouvez utiliser l'outil d'état du client. Cet outil indique si la configuration est xDS v2 ou xDS v3.

Étapes suivantes