Istio 1.26.0 Change Notes
Istio 1.26.0 release notes.
Traffic Management
Improved the CNI agent to no longer require
hostNetwork, enhancing compatibility. Dynamic switching to the host network is now performed as needed. The previous behavior can be temporarily restored by setting theambient.shareHostNetworkNamespacefield in theistio-cnichart. (Issue #54726)Improved iptables binary detection to validate baseline kernel support and to prefer
nftwhen both legacy andnftare available but neither has existing rules.Updated the default value of maximum connections accepted per socket event to 1 to improve performance. To revert to the previous behavior, set
MAX_CONNECTIONS_PER_SOCKET_EVENT_LOOPto zero.Added the ability for
EnvoyFilterto match aVirtualHostby domain name.Added initial support for the experimental Gateway API features
BackendTLSPolicyandXBackendTrafficPolicy. These are disabled by default and require settingPILOT_ENABLE_ALPHA_GATEWAY_API=true. (Issue #54131), (Issue #54132)Added support for referencing
ConfigMaps, in addition toSecrets, forDestinationRuleTLS inSIMPLEmode — useful when only a CA certificate is required. (Issue #54131), (Issue #54132)Added customization support for Gateway API automated deployments. This applies to both Istio
Gatewaytypes (ingress and egress) and Istio WaypointGatewaytypes (ambient waypoints). Users can now customize generated resources such asService,Deployment,ServiceAccount,HorizontalPodAutoscaler, andPodDisruptionBudget.Added a new environment variable
ENABLE_GATEWAY_API_MANUAL_DEPLOYMENTforistiod. When set tofalse, it disables automatic attachment of Gateway API resources to existing gateway deployments. By default, this istrueto maintain the current behavior.Added the ability to configure retry host predicates using the Retry API (
retry_ignore_previous_hosts).Added support for specifying backoff intervals during retries.
Added support for using
TCPRoutein waypoint proxies.Fixed a bug where the validation webhook incorrectly reported a warning when a
ServiceEntryconfigured aworkloadSelectorwith DNS resolution. (Issue #50164)Fixed an issue where FQDNs did not work in a
WorkloadEntryusing ambient mode.Fixed a case where
ReferenceGrantsdid not function when mTLS was enabled on a Gateway listener. (Issue #55623)Fixed an issue where Istio failed to correctly retrieve
allowedRoutesfor a sandboxed waypoint. (Issue #56010)Fixed a bug where
ServiceEntryendpoints were leaked when a pod was evicted. (Issue #54997)Fixed an issue where the listener address was duplicated for dual stack services with IPv6 priority. (Issue #56151)
Security
- Added experimental support for the v1alpha1
ClusterTrustBundleAPI. This can be enabled by settingvalues.pilot.env.ENABLE_CLUSTER_TRUST_BUNDLE_API=true. Ensure the corresponding feature gates are enabled in your cluster; see KEP-3257 for details. (Issue #43986)
Telemetry
Added support for the
omit_empty_valuesfield in theEnvoyFileAccessLogprovider via the Telemetry API. (Issue #54930)Added environment variable
PILOT_SPAWN_UPSTREAM_SPAN_FOR_GATEWAY, which separates tracing spans for server and client gateways. This currently defaults tofalse, but will become the default in the future.Added a warning message for use of deprecated telemetry providers Lightstep and OpenCensus. (Issue #54002)
Installation
Improved the installation experience on GKE. When
global.platform=gkeis set, requiredResourceQuotaresources are deployed automatically. When installing viaistioctl, this setting is also auto-enabled if GKE is detected. Additionally, thecniBinDiris now configured appropriately.Improved the
ztunnelHelm chart to not assign resource names to.Release.Name, defaulting instead toztunnel. This reverts a change introduced in Istio 1.25.Added support for setting the
reinvocationPolicyin the revision-tag webhook when installing Istio viaistioctlor Helm.Added the ability to configure the service
loadBalancerClassin the Gateway Helm chart. (Issue #39079)Added a values
ConfigMapthat stores both the user-provided Helm values and the merged values after applying profiles for theistiodchart.Added support for reading header values from
istiodenvironment variables. (Issue #53408)Added a configurable
updateStrategyfor theztunnelandistio-cniHelm charts.Fixed a bug in the sidecar injection template that incorrectly removed existing init containers when both traffic interception and native sidecar were disabled. (Issue #54562)
Fixed missing
topology.istio.io/networklabels on gateway pods when--set networkGatewayis used. (Issue #54909)Fixed a problem where setting
replicaCount=0in theistio/gatewayHelm chart caused thereplicasfield to be omitted instead of explicitly set to0. (Issue #55092)Fixed an issue that caused file-based certificate references (e.g., from
DestinationRuleorGateway) to fail when using SPIRE as the CA.Removed the deprecated
ENABLE_AUTO_SNIflag and associated code paths.
istioctl
Added a
--localityparameter onistioctl experimental workload group create. (Issue #54022)Added the ability to run specific analyzer checks using the
istioctl analyzecommand.Added a
--tls-server-nameparameter toistioctl create-remote-secret, allowing thetls-server-nameto be set in the generated kubeconfig. This ensures successful TLS connections when theserverfield is overridden with a gateway proxy hostname.Added support for the
envVarFromfield in theistiodchart.Fixed an issue where
istioctl analyzereported an unknown annotationsidecar.istio.io/statsCompression. (Issue #52082)Fixed an error that blocked installation when
IstioOperator.components.gateways.ingressGateways.labelorIstioOperator.components.gateways.ingressGateways.labelwas omitted. (Issue #54955)Fixed a bug where
istioctlignored thetagfields underIstioOperator.components.gateways.ingressGatewaysandegressGateways. (Issue #54955)Fixed an issue where
istioctl waypoint deletecould remove a non-waypoint Gateway resource when a name was specified. (Issue #55235)Fixed an issue where
istioctl experimental describedid not respect the--namespaceflag. (Issue #55243)Fixed a bug that prevented simultaneous generation of
istio.io/waypoint-forandistio.io/revlabels when creating a waypoint proxy usingistioctl. (Issue #55437)Fixed an issue where
istioctl admin logcould not modify the log level foringress status. (Issue #55741)Fixed a validation failure when
reconcileIptablesOnStartup: truewas set in theistioctlYAML configuration. (Issue #55347)