API de plano de control de xDS

Cloud Service Mesh y sus clientes (proxies de Envoy o gRPC sin proxy (bibliotecas) se usa el protocolo xDS de código abierto API para intercambiar información. Cuando configuras Cloud Service Mesh, por ejemplo, mediante recursos como las reglas de reenvío y los servicios de backend: Cloud Service Mesh convierte estos recursos a una configuración xDS, que comparte con sus clientes.

Compatibilidad con la versión xDS

La malla de servicios de Cloud solo admite xDS v3.

Para determinar qué versiones de Envoy y gRPC admiten xDS v3, consulta la Envoy y gRPC.

Si aún usas xDS v2, sigue estas instrucciones para migrar a xDS v3

Migra de xDS v2 a xDS v3

El proceso de migración consta de dos pasos:

  1. Actualizar los permisos de Identity and Access Management (IAM) otorgados al servicio de servicio que tus clientes (proxies de Envoy o bibliotecas de gRPC sin proxy) usan cuando te conectes a Cloud Service Mesh.
  2. Actualiza y vuelve a implementar tus aplicaciones. Los pasos específicos varían según la implementación y se explican en las siguientes secciones.

Actualiza los permisos de IAM de la cuenta de servicio

Asegúrate de que la cuenta de servicio que usa tu malla de servicios de Cloud clientes (Envoy, gRPC sin proxy) tiene el trafficdirector.networks.reportMetrics y trafficdirector.networks.getConfigs. Estos permisos son incluidas en la IAM Rol del cliente de la malla de servicios de Cloud (roles/trafficdirector.client).

Si usas un rol personalizado de IAM, puedes agregarle estos permisos. Después de agregar los permisos, puedes quitar el rol de Rol Visualizador de redes (roles/compute.networkViewer), administrador de red de Compute de servicio (roles/compute.networkAdmin), o ambas desde la cuenta de servicio.

Recomendamos que uses el rol de cliente de la malla de servicios de Cloud en lugar de el rol Visualizador de red de Compute (roles/compute.networkViewer) o Rol Administrador de redes (roles/compute.networkAdmin). Con el El rol de cliente de la malla de servicios de Cloud restringe los permisos otorgados de servicio predeterminada y evita otorgar permisos demasiado amplios.

Actualiza tus aplicaciones

Después de actualizar los permisos de IAM en la cuenta de servicio, actualiza tus aplicaciones.

Envoy en Compute Engine

Para actualizar tus aplicaciones en Envoy con Compute Engine, haz lo siguiente: reemplazo o reinicio progresivo de los grupos de instancias administrados. Se agrega de forma automática una versión de Envoy compatible con xDS v3 a tus instancias de máquina virtual (VM).

Envoy en GKE

Si usas la inyección automática de Envoy con Google Kubernetes Engine (GKE), volver a instalar el inyector de sidecar en los clústeres de GKE que usas con la malla de servicios en la nube. Cuando se crea un Pod nuevo, se crea un proxy de sidecar compatible con xDS v3 se inserta automáticamente junto con el Pod de carga de trabajo.

Si usas la inserción manual de sidecar en GKE, vuelve a implementar el proxy de sidecar. en cada clúster de GKE.

gRPC sin proxy

El proceso de migración consta de dos pasos:

  1. Asegúrate de que la versión de gRPC que uses sea compatible con xDS v3. Para ver más consulta funciones de xDS en gRPC.

  2. Para actualizar la configuración de arranque, sigue estos pasos:

    1. En el campo "xds_servers", agrega "server_features": ["xds_v3"] como se muestra en esta Ejemplo de archivo de arranque.
    2. El ID de nodo debe tener el siguiente formato, como se muestra en la ejemplo:
      "projects/PROJECT_NUMBER/networks/NETWORK_NAME/nodes/ID"
      

Una vez que hayas realizado los cambios anteriores en tu aplicación, compílala y vuelve a implementarla.

Los cambios anteriores en la configuración de arranque no afectan a las versiones de gRPC. que no son compatibles con xDS v3. Además, si los cambios anteriores no están presentes en la configuración de arranque, las versiones de gRPC compatibles con xDS v3 usan xDS v2.

Para tu comodidad, puedes usar la versión 0.11.0 del generador de arranque gRPC de Cloud Service Mesh. o posterior para generar una configuración de arranque compatible con xDS v3.

Verifica que los clientes de la malla de servicios de Cloud usen xDS v3

Para inspeccionar la configuración que genera Cloud Service Mesh los clientes, puedes usar el herramienta de estado de cliente. Esta herramienta indica si la configuración es xDS v2 o xDS v3.

¿Qué sigue?