Anuncio de Istio 1.31.0
Anuncio de la versión Istio 1.31.
Nos complace anunciar el lanzamiento de Istio 1.31. ¡Gracias a todos nuestros contribuidores, testers, usuarios y entusiastas por ayudarnos a publicar la versión 1.31.0! Queremos agradecer a los Release Managers de esta versión: Jacek Ewertowski de Red Hat, Jackson Greer de Microsoft y Jianpeng He de Tetrate.
NOTAS DE CAMBIO
Obtén una lista detallada de lo que ha cambiado.
ANTES DE ACTUALIZAR
Cosas que debes saber y preparar antes de actualizar.
DESCARGAR
Descarga e instala esta versión.
DOCUMENTACIÓN
Visita la documentación de esta versión.
Obsolescencia de la infraestructura y el alojamiento en GCP
A partir de Istio 1.31, ya no publicaremos artefactos en gcr.io/istio-release, registry.istio.io ni istio-release.storage.googleapis.com.
- Las imágenes Docker seguirán disponibles en Docker Hub.
- Los charts de Helm estarán disponibles en
blob.istio.io/istio-release/charts. - Otros artefactos estarán disponibles en
blob.istio.io/istio-release. - Los charts OCI de Helm estarán disponibles en
ghcr.io/istio/release/charts.
Realizaremos pruebas de eliminación en las que deshabilitaremos todos los artefactos alojados en GCP durante períodos breves.
La primera prueba será el 15 de septiembre de 2026, de 15:00 a 16:00 UTC. La segunda prueba será el 13 de octubre de 2026, de 15:00 a 18:00 UTC. La tercera prueba será el 17 de noviembre de 2026, de 15:00 a 21:00 UTC. La cuarta y última prueba será del 8 de diciembre de 2026 a las 15:00 UTC al 9 de diciembre de 2026 a las 15:00 UTC.
Para más detalles, consulta esta entrada de blog.
¿Qué hay de nuevo?
Agentgateway como waypoint
Basándose en el soporte experimental solo para gateway introducido en 1.30, Istio 1.31 añade la GatewayClass istio-agentgateway-waypoint para desplegar agentgateway como proxy waypoint. Esta versión también corrige varios problemas con el manejo de ListenerSet y la conectividad mTLS para backends de agentgateway.
Gateway API: AllowInsecureFallback
Istio implementa ahora la funcionalidad AllowInsecureFallback de Gateway API para la validación de certificados de cliente. Cuando está habilitada, el gateway solicita un certificado de cliente e intenta validarlo, pero permite la conexión aunque no se presente ningún certificado o la validación falle. La cabecera x-forwarded-client-cert se rellena para que los backends puedan realizar su propia verificación.
Mejoras del modo ambient
- Canaries de waypoint con peso. Un servicio o namespace ahora puede referenciar tanto un waypoint primario como uno canary mediante las etiquetas
istio.io/use-waypoint-canaryyistio.io/use-waypoint-canary-namespace. La anotaciónistio.io/use-waypoint-canary-weightdirige un porcentaje configurable de conexiones en la mesh al waypoint canary sin cambios en el cliente, permitiendo el despliegue gradual de cambios en la configuración del waypoint. - Estabilidad multi-clúster. Esta versión incluye numerosas correcciones del modo ambient, especialmente en despliegues multi-clúster: la rotación de credenciales ya no provoca snapshots obsoletos ni pérdida de fragmentos de endpoint, se han resuelto varias fugas de memoria y goroutines en modo multi-clúster, y las correcciones del agente CNI de nodo solucionan un panic por escritura concurrente en un mapa, una fuga de descriptores de archivo y un deadlock durante la eliminación de pods.
Novedades en la gestión de tráfico
- Balanceo de carga por zona. Un nuevo campo
zoneAwareLbSettingenDestinationRule.TrafficPolicy.LoadBalancerSettingsyMeshConfigpermite que Envoy enrute automáticamente el tráfico a endpoints en la misma zona de disponibilidad que el proxy downstream, derivando a otras zonas solo cuando la capacidad local es insuficiente. Esto difiere dellocalityLbSettingexistente en que el enrutamiento por zona es gestionado automáticamente por Envoy en lugar de usar porcentajes estáticos. Se puede configurar el orden de failover entre regiones y niveles de prioridad basados en etiquetas. - Política de tráfico predeterminada en toda la mesh. Un nuevo
defaultTrafficPolicyenMeshConfigpermite a los administradores de la mesh establecer unconnectionPoolyoutlierDetectionbase que heredan todos los clústeres de salida. UnaDestinationRuleque establezca uno de estos bloques anula la base para ese bloque; los campos que no establezca heredan ahora la base de la mesh en lugar de los valores predeterminados integrados de Istio. ElconnectionPoolbase también se aplica a los clústeres entrantes y al clúster de passthrough. - Proxy de reenvío dinámico para hosts desconocidos. Un nuevo modo de política de tráfico de salida
ALLOW_ANY_DYNAMIC_DNSresuelve nombres de host del encabezado HTTPHosten tiempo de solicitud mediante el Dynamic Forward Proxy de Envoy, eliminando la necesidad de recursosServiceEntrypara cada destino externo. El tráfico no HTTP sigue usandoPassthroughCluster. La originación TLS upstream opcional se puede configurar mediantemeshConfig.outboundTrafficPolicy.tls. - Exclusión de hosts en el egress del sidecar. Los listeners de egress de
Sidecarahora admiten un prefijo~en las entradas de namespace y host para sustraer del conjunto importado. Por ejemplo,*/*más~ns1/*importa todo excepto el namespacens1. Esto permite que las meshes grandes excluyan unos pocos namespaces sin enumerar una larga lista de permisos.
Seguridad
- Política de cumplimiento FIPS 140-3. Un nuevo valor
fips-140-3para la variable de entornoCOMPLIANCE_POLICYimpone TLS 1.2+ con suites de cifrado conformes con FIPS y curvas P-256/P-384. Los componentes Go deben compilarse con Go 1.24+ usandoGOFIPS140=v1.0.0. - Coincidencia de dominio de confianza en
AuthorizationPolicy. Los nuevos campostrustDomainsynotTrustDomainsenSourcepermiten coincidir o excluir solicitudes basándose en el dominio de confianza derivado del certificado de par. - Fusión estricta de gateways.
PILOT_ENABLE_STRICT_GATEWAY_MERGING(habilitado por defecto) evita la fusión entre namespaces de CRDsGatewayde Istio con proxiesGatewayde Gateway API administrados. - Autenticación del generador de API XDS. El endpoint de servicio de configuración MCP ahora requiere una identidad de control plane verificada. El tráfico estándar de sidecar, gateway y ztunnel no se ve afectado.
Instalación y operatividad
- Kiali actualizado a v2.26.0.
- Hilos de trabajo con conciencia de CPU en ztunnel mediante las variables de entorno
ZTUNNEL_RESOURCE_CPU_LIMITyZTUNNEL_RESOURCE_CPU_REQUEST. - El flag
istioctl manifest generate -oescribe los manifiestos generados en un archivo en lugar de stdout. global.readerServiceAccountpermite vincular elClusterRoleistio-readera una cuenta de servicio personalizada.
Telemetría
- Scraping de Prometheus con múltiples destinos. Una nueva anotación de pod
prometheus.istio.io/scrape-targetspermite declarar múltiples endpoints de métricas de aplicación por pod como una lista deport:pathseparada por comas. Pilot-agent los recopila de forma concurrente y fusiona la salida. - Puertos de métricas seguros. Las nuevas variables de entorno
ENVOY_SECURE_METRICS_PORTyENVOY_SECURE_MERGED_METRICS_PORTexponen endpoints de scraping de Prometheus protegidos con mTLS en cada proxy sidecar. - Interruptor de fusión de estadísticas de Envoy.
PILOT_AGENT_MERGE_ENVOY_STATSpuede establecerse enfalsepara deshabilitar la fusión de estadísticas de Envoy en el endpoint de estadísticas del agente.
Y mucho más
connectionSettingsenProxyConfigcon un perfilEDGEorientado a proxies gateway- Operación de parche
MERGE_AND_REPLACE_LISTenEnvoyFilterpara reemplazar campos de lista en vez de añadir prefix_rewriteenHTTPRedirectpara reescritura de ruta con conciencia de prefijo en reglas de redirección- Configuración de keepalive PING de HTTP/2 configurable en conexiones upstream mediante
DestinationRule - Control de visibilidad de
ServiceEntrymediantemeshConfig.serviceEntryVisibility - Campo
budget_intervalen la APIRetryBudgetdeTrafficPolicy - Advertencias de
istioctl analyzepara protocolos conflictivos enServiceEntryy CRDs de Gateway API desactualizados
Lee sobre estas y más mejoras en las notas de versión completas.
Actualización a 1.31
Nos gustaría conocer tu experiencia al actualizar a Istio 1.31. Puedes enviarnos tus comentarios en el canal #release-1_31 de nuestro espacio de trabajo de Slack.
¿Te gustaría contribuir directamente a Istio? Encuentra y únete a uno de nuestros Grupos de Trabajo y ayúdanos a mejorar.