Funciones compatibles con las APIs de Istio (plano de control administrado)

En esta página, se describen las funciones y limitaciones admitidas para Cloud Service Mesh con TRAFFIC_DIRECTOR o ISTIOD como plano de control y el diferencias entre cada implementación. Ten en cuenta que estas no son opciones que puedes elegir. La implementación de ISTIOD solo está disponible para los usuarios existentes. Las instalaciones nuevas usan la implementación de TRAFFIC_DIRECTOR cuando es posible.

Para ver la lista de las funciones compatibles de Cloud Service Mesh para una red integrada en el clúster, haz lo siguiente: plano de control, consulta Usa las APIs de Istio (plano de control istiod en el clúster). Si no estás seguro de qué plano de control de Cloud Service Mesh estás usando, puedes verificar tu implementación del plano de control con las instrucciones que se indican en Cómo identificar la implementación del plano de control.

Limitaciones

Se aplica la siguiente limitación:

  • Los clústeres de GKE deben estar en una de las regiones admitidas.
  • La versión de GKE debe ser una versión compatible.
  • Solo se admiten las plataformas que se mencionan en Entornos.
  • No se admite cambiar los canales de versiones.
  • Migraciones desde Malla de servicios de Cloud administrada con asmcli a Malla de servicios de Cloud con la API de flota no son compatibles. Del mismo modo, no se admite el aprovisionamiento de Cloud Service Mesh administrado con la API de Fleet de --management manual a --management automatic.
  • Las migraciones y actualizaciones solo son compatibles con Cloud Service Mesh integrado en el clúster versiones 1.9 o posteriores instaladas con la CA de Mesh. Las instalaciones con la CA de Istio (antes conocida como Citadel) primero se deben migrar a la CA de Mesh.
  • El escalamiento se limita a 1,000 servicios y 5,000 cargas de trabajo por clúster.
  • Solo se admite la opción de implementación de varias instancias para varios clústeres; no se admite la opción de implementación principal remota para varios clústeres.
  • istioctl ps no es compatible. En su lugar, puedes usar los comandos gcloud beta container fleet mesh debug como se describe en Solución de problemas.
  • APIs no admitidas:

    • API EnvoyFilter

    • API WasmPlugin

    • API IstioOperator

    • API Kubernetes Ingress

  • Puedes usar el plano de control administrado sin una suscripción a GKE Enterprise. pero ciertos elementos y funciones de la IU de la consola de Google Cloud solo están disponibles para los suscriptores de GKE Enterprise. Para obtener información sobre las opciones disponibles para suscriptores y usuarios no suscritos, consulta Diferencias entre la IU de GKE Enterprise y Cloud Service Mesh.

  • Durante el proceso de aprovisionamiento de un plano de control administrado, las CRD de Istio correspondientes al canal seleccionado se instalan en el clúster especificado. Si hay CRD de Istio existentes en el clúster, se reemplazarán.

  • Cloud Service Mesh administrado solo admite el dominio DNS predeterminado .cluster.local.

  • A partir del 14 de noviembre de 2023, se realizaron nuevas instalaciones de Cloud Service Mesh administrado en la Se recuperan JWKS del canal de versiones rápido solo con Envoys. Esto equivale a lo siguiente: la opción PILOT_JWT_ENABLE_REMOTE_JWKS=envoy de Istio En comparación con las instalaciones en los canales de versiones normal y estable, o las instalaciones en rápido antes del 14 de noviembre de 2023, es posible que necesites Configuraciones ServiceEntry y DestinationRule. Para ver un ejemplo, consulta requestauthn-with-se.yaml.tmpl.

Diferencias del plano de control

Existen diferencias en las funciones compatibles entre ISTIOD y TRAFFIC_DIRECTOR implementaciones del plano de control. Para verificar qué implementación estás usando, consulta Identifica la implementación del plano de control.

  • : Indica que la función está disponible y habilitada de forma predeterminada.
  • †: Indica que las APIs de funciones pueden tienen diferencias entre varias plataformas.
  • *: Indica que la función es compatible con la plataforma y se puede habilitar, como se describe en Habilita funciones opcionales o la guía de funciones vinculada en la tabla de funciones.
  • §: Indica que el componente está de la lista de entidades permitidas. Los usuarios anteriores de Anthos Service Mesh administrado se incluyen automáticamente en la lista de entidades permitidas a nivel de la organización. Comunícate con el equipo de Asistencia de Google Cloud para solicitar acceso o verificar el estado de tu lista de entidades permitidas.
  • : Indica que la función no está disponible o no se admite.

Las funciones predeterminadas y opcionales tienen una compatibilidad total con la asistencia de Google Cloud. Las funciones que no aparecen en las tablas de manera explícita reciben la mejor asistencia posible.

Qué determina la implementación del plano de control

Cuando aprovisionas Cloud Service Mesh administrado por primera vez en una flota, determinar qué implementación del plano de control usar. La misma implementación se que se usa para todos los clústeres que aprovisionan Cloud Service Mesh administrado en esa flota.

Las flotas nuevas que se incorporan a Cloud Service Mesh administrado reciben la implementación del plano de control TRAFFIC_DIRECTOR, con ciertas excepciones:

  • Si ya eres un usuario administrado de Cloud Service Mesh, recibirás el ISTIOD implementación del plano de control cuando se incorpora una nueva flota en el mismo Google Cloud De organización a Cloud Service Mesh administrado hasta al menos el 30 de junio de 2024. Si eres uno de estos usuarios, puedes comunicarte con el equipo de asistencia para ajustar este comportamiento. Usuarios cuyo uso existente no es compatible con TRAFFIC_DIRECTOR implementación sin cambios seguirá recibiendo el ISTIOD hasta el 8 de septiembre de 2024. (Estos usuarios recibieron un Service Announcement.)
  • Si algún clúster de tu flota usa el servicio de la AC cuando aprovisionas Cloud Service Mesh administrado, recibirás la implementación del plano de control ISTIOD.
  • Si algún clúster de tu flota contiene una malla de servicios de Cloud en el clúster. cuando aprovisiones Cloud Service Mesh administrado, recibir la implementación del plano de control de ISTIOD.
  • Si algún clúster de tu flota usa GKE Sandbox, cuando aprovisiones Cloud Service Mesh administrado, recibirás la implementación del plano de control ISTIOD.

Funciones compatibles con el plano de control administrado

Instala, actualiza y revierte

Atributo Administrado (TD) Administrado (istiod)
Instalación en clústeres de GKE mediante la API de la función de flota
Actualizaciones de las versiones de ASM 1.9 que usan CA de Mesh
Actualizaciones directas (de nivel omisión) de versiones de Cloud Service Mesh anteriores a la 1.9 (consulta las notas para conocer las actualizaciones indirectas)
Actualizaciones directas (nivel de omisión) de Istio OSS (consulta las notas para las actualizaciones indirectas)
Actualizaciones directas (nivel de omisión) del complemento Istio-on-GKE (consulta las notas para las actualizaciones indirectas)
Habilita funciones opcionales

Entornos

Atributo Administrado (TD) Administrado (istiod)
GKE 1.25 a 1.27 en una de las regiones admitidas
Clústeres de GKE 1.25-1.27 con Autopilot
Entornos fuera de Google Cloud (GKE Enterprise local, GKE Enterprise en otras nubes públicas, Amazon EKS, Microsoft AKS, o algún otro clúster de Kubernetes)

Escala

Atributo Administrado (TD) Administrado (istiod)
1,000 servicios y 5,000 cargas de trabajo por clúster
50 puertos de servicio sin interfaz gráfica por malla y 36 pods por puerto de servicio sin interfaz gráfica

Entorno de plataforma

Atributo Administrado (TD) Administrado (istiod)
Una sola red
Varias redes
Un solo proyecto
Varios proyectos con VPC compartida

Implementación de varios clústeres

Atributo Administrado (TD) Administrado (istiod)
Principales múltiples
Control principal
Descubrimiento de extremos de varios clústeres con la API declarativa
Descubrimiento de extremos de varios clústeres con secretos remotos

Notas sobre la terminología

  • Una configuración de varias instancias principales implica que la configuración debe replicarse en todos los clústeres.
  • Una configuración principal remota significa que un clúster único contiene la configuración y que se considera la fuente de información.
  • Cloud Service Mesh usa una definición simplificada de la red basada en la conectividad general. Las instancias de carga de trabajo están en la misma red si pueden comunicarse de forma directa, sin una puerta de enlace.

Imágenes base

Atributo Administrado (TD) Administrado (istiod)
Imagen de proxy distroless

† Cloud Service Mesh con un plano de control administrado (TD) solo admite el tipo de imagen sin distribución. No se puede cambiar.

Ten en cuenta que las imágenes distroless tienen binarios mínimos, por lo que no puedes ejecutar el comando comandos como bash o curl porque no están presentes en la imagen de distroless. Sin embargo, puedes usar contenedores efímeros para conectarte a un pod de carga de trabajo en ejecución para poder inspeccionarlo y ejecutar comandos personalizados. Por ejemplo, consulta Cómo recopilar registros de Cloud Service Mesh.

Seguridad

Controles del servicio de VPC

Atributo Administrado (TD) Administrado (istiod)
Vista previa de los Controles del servicio de VPC
DG de los Controles del servicio de VPC

Mecanismos de distribución y rotación de certificados

Atributo Administrado (TD) Administrado (istiod)
Administración de certificados de cargas de trabajo
Administración de certificados externos en puertas de enlace de entrada y salida.

Compatibilidad con autoridad certificada (CA)

Atributo Administrado (TD) Administrado (istiod)
Autoridad certificadora de Cloud Service Mesh
Certificate Authority Service
CA de Istio
Integración con CA personalizadas

Funciones de seguridad

Además de admitir funciones de seguridad de Istio, Cloud Service Mesh proporciona aún más capacidades para ayudarte a proteger tus aplicaciones.

Atributo Administrado (TD) Administrado (istiod)
Integración de IAP
Autenticación del usuario final
Modo de ejecución de prueba
Registro de denegación
Políticas de auditoría (no admitidas)

Política de autorización

Atributo Administrado (TD) Administrado (istiod)
Política de autorización de v1beta1
Política de autorización PERSONALIZADA §

† La implementación del plano de control TRAFFIC_DIRECTOR no admite los campos rules.from.source.RemoteIp ni rules.from.source.NotRemoteIp.

Autenticación entre pares

Atributo Administrado (TD) Administrado (istiod)
Auto-mTLS
Modo PERMISSIVE de mTLS
Modo STRICT de mTLS * *
Modo INHABILITAR de mTLS

Autenticación de solicitudes

Atributo Administrado (TD) Administrado (istiod)
Autenticación de JWT (Nota 1)
Enrutamiento basado en reclamaciones de JWT
Copiar reclamación de JWT en los encabezados

Notas:

  1. JWT de terceros está habilitado de forma predeterminada.
  2. Agrega el fqdn/hostname completo en JWKSURI mientras defines la API de RequestAuthentication.
  3. El plano de control administrado aplica Envoy para recuperar JWKS cuando se especifica el URI de JWKS.

Telemetría

Métricas

Atributo Administrado (TD) Administrado (istiod)
Cloud Monitoring (métricas en el proxy de HTTP)
Cloud Monitoring (métricas en el proxy de TCP)
Exportación de métricas de Prometheus a Grafana (solo métricas de Envoy) * *
Exportación de métricas de Prometheus a Kiali
Google Cloud Managed Service para Prometheus, sin el panel de Cloud Service Mesh * *
API de Istio Telemetry
Adaptadores y backends personalizados, dentro o fuera del proceso
Telemetría arbitraria y backends de registro

† El plano de control de TRAFFIC_DIRECTOR admite un subconjunto de la API de telemetría de Istio que se usan para configurar los registros de acceso trace.

Registro de solicitudes de proxy

Atributo Administrado (TD) Administrado (istiod)
Registros de tráfico
Registros de acceso * *

Trace

Atributo Administrado (TD) Administrado (istiod)
Cloud Trace * *
Seguimiento de Jaeger (permite el uso de Jaeger administrado por el cliente) Compatible
Seguimiento de Zipkin (permite el uso de Zipkin administrado por el cliente) Compatible

Redes

Mecanismos de intercepción y redireccionamiento de tráfico

Atributo Administrado (TD) Administrado (istiod)
Uso tradicional de iptables mediante contenedores init con CAP_NET_ADMIN
Interfaz de red de contenedor (CNI) de Istio
Sidecar de caja blanca

Compatibilidad con protocolos

Atributo Administrado (TD) Administrado (istiod)
IPv4
HTTP/1.1
HTTP/2
Transmisiones de bytes de TCP (Nota 1)
gRPC
IPv6

Notas:

  1. Aunque TCP es un protocolo compatible para las redes y se recopilan las métricas de TCP, no se informan. Las métricas solo se muestran para Servicios HTTP en la consola de Google Cloud.
  2. No se admiten los servicios configurados con funciones de la capa 7 para los siguientes protocolos: WebSocket, MongoDB, Redis, Kafka, Cassandra, RabbitMQ y Cloud SQL. Es posible que puedas hacer que el protocolo funcione mediante la compatibilidad con la transmisión de bytes de TCP. Si la transmisión de bytes de TCP no admite el protocolo. (por ejemplo, Kafka envía una dirección de redireccionamiento en una respuesta específica del protocolo y este redireccionamiento no es compatible con la lógica de enrutamiento de Cloud Service Mesh). el protocolo no es compatible.

Implementaciones de Envoy

Atributo Administrado (TD) Administrado (istiod)
Sidecars
Puerta de enlace de entrada
Salida directa desde sidecars
Salida mediante puertas de enlace de salida * *

Compatibilidad con CRD

Atributo Administrado (TD) Administrado (istiod)
Recurso de sidecar
Recurso de entrada del servicio
Porcentajes, inserción de errores, coincidencias de rutas de acceso, redireccionamientos, reintentos, reescrituras, tiempo de espera, reintentos, duplicaciones, manipulación de encabezados y reglas de enrutamiento de CORS
API de "EnvoyFilter" §
API de "WasmPlugin"
Operador de Istio

Balanceador de cargas para la puerta de enlace de entrada de Istio

Atributo Administrado (TD) Administrado (istiod)
Balanceador de cargas externo de terceros
Balanceador de cargas interno de Google Cloud * *

Puerta de enlace de la nube de la malla de servicios

Atributo Administrado (TD) Administrado (istiod)
Puerta de enlace de nube de Service Mesh

API de Kubernetes Gateway

Atributo Administrado (TD) Administrado (istiod)
API de Kubernetes Gateway

Políticas de balanceo de cargas

Atributo Administrado (TD) Administrado (istiod)
Round robin
Conexiones mínimas
Aleatorio
Transferencia
Hash coherente
Localidad

Entrada de servicio

Atributo Administrado (TD) Administrado (istiod)
ServiceEntry v1beta1

† La implementación del plano de control de TRAFFIC_DIRECTOR no admite lo siguiente campos y valores en los campos:

  • Campo workloadSelector
  • Campo endpoints[].network
  • Campo endpoints[].locality
  • Campo endpoints[].weight
  • Campo endpoints[].serviceAccount
  • Valor DNS_ROUND_ROBIN en el campo resolution
  • Valor MESH_INTERNAL en el campo location
  • Dirección del socket de dominio Unix en el campo endpoints[].address
  • Campo subjectAltNames

Regla de destino

Atributo Administrado (TD) Administrado (istiod)
DestinationRule v1beta1

† La implementación del plano de control TRAFFIC_DIRECTOR no admite los campos trafficPolicy.loadBalancer.localityLbSetting ni trafficPolicy.tunnel. Además, la implementación del plano de control de TRAFFIC_DIRECTOR requiere que la la regla de destino que define subconjuntos está en el mismo espacio de nombres y clúster con o ServiceEntry de Kubernetes.

Sidecar

Atributo Administrado (TD) Administrado (istiod)
Sidecar v1beta1

† La implementación del plano de control de TRAFFIC_DIRECTOR no admite lo siguiente campos y valores en los campos:

  • Campo ingress
  • Campo egress.port
  • Campo egress.bind
  • Campo egress.captureMode
  • Campo inboundConnectionPool

MeshConfig

Atributo Administrado (TD) Administrado (istiod)
LocalityLB §
ExtensionProviders §
CACert
ImageType: distroless §
OutboundTrafficPolicy §
defaultProviders.accessLogging
defaultProviders.tracing
defaultConfig.tracing.stackdriver §
accessLogFile §

ProxyConfig

Atributo Administrado (TD) Administrado (istiod)
Proxy de DNS (ISTIO_META_DNS_CAPTURE, ISTIO_META_DNS_AUTO_ALLOCATE)
Compatibilidad con HTTP/1.0 (ISTIO_META_NETWORK)
Selección de imágenes (sin distro o imagen base)

† Se usa una imagen sin distribución para la inserción.

Regiones

Los clústeres de GKE deben estar en una de las siguientes regiones o en cualquier zona de las siguientes regiones.

Región Ubicación
asia-east1 Taiwán
asia-east2 Hong Kong
asia-northeast1 Tokio, Japón
asia-northeast2 Osaka, Japón
asia-northeast3 Corea del Sur
asia-south1 Bombay, India
asia-south2 Delhi, India
asia-southeast1 Singapur
asia-southeast2 Yakarta
australia-southeast1 Sídney, Australia
australia-southeast2 Melbourne, Australia
europe-central2 Polonia
europe-north1 Finlandia
europe-southwest1 España
europe-west1 Bélgica
europe-west2 Inglaterra
europe-west3 Fráncfort, Alemania
europe-west4 Países Bajos
europe-west6 Suiza
europe-west8 Milán, Italia
europe-west9 Francia
europe-west10 Berlín, Alemania
europe-west12 Turín, Italia
me-central1 Doha
me-central2 Dammam, Arabia Saudita
me-west1 Tel Aviv
northamerica-northeast1 Montreal, Canadá
northamerica-northeast2 Toronto, Canadá
southamerica-east1 Brasil
southamerica-west1 Chile
us-central1 Iowa
us-east1 Carolina del Sur
us-east4 Virginia del Norte
us-east5 Ohio
us-south1 Dallas
us-west1 Oregón
us-west2 Los Ángeles
us-west3 Salt Lake City
us-west4 Las Vegas

Interfaz de usuario

Atributo Administrado (TD) Administrado (istiod)
Paneles de la malla de servicios de Cloud en la consola de Google Cloud
Cloud Monitoring
Cloud Logging

Herramientas

Atributo Administrado (TD) Administrado (istiod)
Herramienta de gcloud beta container fleet mesh debug