Istio 1.20.0 更新说明
Istio 1.20.0 更新说明。
弃用通知
以下通知说明了根据 Istio 的弃用政策将在未来某个版本中移除的功能。 请考虑升级您的环境以移除弃用的功能。
- Istio 1.20.0 中没有新的弃用内容。
流量治理
改进 改进了对
ExternalName服务的支持。有关详细信息,请参阅升级说明。改进 改进了 HTTP 和 TCP Envoy 过滤器的排序,以增强一致性。
改进 改进了
iptables锁定功能。新的实现在需要时使用iptables内置锁等待,并在不需要时完全禁用锁定。改进 改进了通过
ServiceEntry资源中的endpoints字段内联添加的WorkloadEntry资源在不同网络上不再需要指定地址。 (Issue #45150)新增 添加了对
VirtualService中多个目的地的流量镜像支持。 (Issue #13330)新增 添加了用户可以通过 Operator API 或 Helm Chart 在 Istio Service 资源中指定
ipFamilyPolicy和ipFamilies设置的功能。 (Issue #44017)新增 添加了对网络
WasmPlugin的支持。新增 添加了门控标志
ISTIO_ENABLE_IPV4_OUTBOUND_LISTENER_FOR_IPV6_CLUSTERS, 在只有 IPv6 的集群中用来管理一个附加的出站侦听器,以处理 IPv4 NAT 出站流量。 这对于只有 IPv6 的集群环境(例如管理只有 Egress IPv4 以及 IPv6 IP 的 EKS)非常有用。 (Issue #46719)新增 添加了通过
targetRef字段将AuthorizationPolicy附加到 KubernetesGateway资源的功能。 (Issue #46847)新增 通过
values.cni.cniNetnsDir指定替代网络命名空间路径(例如 minikube)。 (Issue #47444)更新
failoverPriority和failover现在可以协同工作。修复 修复了创建
WorkloadGroup时立即自动注册已连接的代理的WorkloadEntry的问题。 (Issue #45329)修复 修复了多网络端点的 DNS 解析问题, 现在可以通过网关解析具有多网络端点 DNS 的
ServiceEntry。 (Issue #45506)修复 修复了在没有有效本地网关的情况下无法识别远程网关的问题。 (Issue #46435)
修复 修复了添加 Waypoint 代理可能导致流量中断的问题。 (Issue #46540)
修复 修复了由于
DestinationRuleTLS 模式设置为ISTIO_MUTUAL以外的其他模式而导致无法访问多网络端点的问题。 (Issue #46555)修复 修复了当安装时未使用
values.global.network进行配置或在 KubernetesGateway资源上使用topology.istio.io/network进行覆盖时, Waypoint 代理会缺少ISTIO_META_NETWORK字段的问题。修复 修复了上游 DNS 查询将导致出现永久
UNREPLIEDconntrackiptables成对条目的问题。 (Issue #46935)修复 修复了自动分配会指派不正确 IP 的问题。 (Issue #47081)
修复 修复了根
VirtualService中的多个标头匹配生成不正确路由的问题。 (Issue #47148)修复 修复了
ServiceEntry通配符基于glibc容器的搜索域后缀 DNS 代理解析的问题。 (Issue #47264)、 (Issue #31250)、 (Issue #33360)、 (Issue #30531)、 (Issue #38484)修复 修复了仅依赖
HTTPRoute来检查ReferenceGrant的问题。 (Issue #47341)修复 修复了如果默认 IP 寻址不是 IPv6, 则正在使用
IstioIngressListener.defaultEndpoint的 Sidecar 资源无法使用 [::1]:PORT 的问题。 (Issue #47412)修复 修复了多集群 Secret 过滤导致 Istio 从每个命名空间获取 Secret 的问题。 (Issue #47433)
修复 修复了导致正在终止的无头服务实例的流量无法正常运行的问题。 (Issue #47348)
移除 移除了
PILOT_ENABLE_DESTINATION_RULE_INHERITANCE实验性功能, 该功能自创建以来默认处于禁用状态。 (Issue #37095)移除 从 Envoy 构建中移除了自定义 Istio 网络过滤器
forward_downstream_sni、tcp_cluster_rewrite和sni_verifier。 此功能可以使用 Wasm 扩展性来实现。移除 移除了工作负载必须具有与其关联的
Service才能实现局部负载均衡的要求。
安全性
新增 添加了通过
targetRef字段将RequestAuthentication附加到 KubernetesGateway资源的功能。新增 添加了对插入根证书轮换的支持。
修复 修复了当自定义外部授权服务出现问题时所有请求都被拒绝的问题。 现在,只有委托给自定义外部授权服务的请求才会被拒绝。 (Issue #46951)
遥测
新增 添加了通过
targetRef字段将Telemetry附加到 KubernetesGateway资源的功能。 (Issue #46844)新增 将 xDS 工作负载元数据发现作为后备添加到 TCP 元数据交换过滤器中。 这需要在代理上启用
PEER_METADATA_DISCOVERY标志, 并在控制平面上启用PILOT_ENABLE_AMBIENT_CONTROLLERS。新增 在控制平面上添加了
PILOT_DISABLE_MX_ALPN标志, 以禁用广播 TCP 元数据交换的 ALPN 令牌istio-peer-exchange。
可扩展性
- 新增 添加了通过
targetRef字段将WasmPlugin附加到 KubernetesGateway资源的功能。
安装
改进 改进了 OpenShift 集群上的使用,无需向 Istio 和应用程序授予
anyuidSCC 权限。更新 更新了 Kiali 插件至
v1.76.0版。新增 向网关 Helm Chart 添加了
volumes和volumeMounts值。新增 添加了使用
istioctl安装时对 Ztunnel 的基本修订支持。 (Issue #46421)新增 添加了
PILOT_ENABLE_GATEWAY_API_GATEWAYCLASS_CONTROLLER标志以启用/禁用内置GatewayClasses的管理。 (Issue #46553)新增 在 CNCF 建立有关双许可 eBPF 字节码的指南后,添加了 eBPF 重定向对 Ambient 的支持。 https://github.com/cncf/foundation/issues/474#issuecomment-1739796978 (Issue #47257)
新增 添加了 Helm Values,以便希望使用 Helm 的用户更轻松地安装 Ambient。
新增 默认情况下向 Sidecar 资源添加了
startupProbe。 这可以优化启动时间并最大限度地减少整个 Pod 生命周期的负载。有关详细信息,请参阅升级说明。 (Issue #32569)修复 修复了使用
--dry-run选项安装时资源被误删除的问题。修复 修复了使用
empty配置文件安装 Istio 时不显示组件信息的问题。修复 修复了即使资源应用失败,安装过程仍继续而导致意外行为的问题。 (Issue #43312)
修复 修复了如果将
values.global.proxy.image设置为自定义镜像, 则 Waypoint 代理不会注入正确镜像的问题。修复 修复了当 Istiod 不可用时有时会在未确认的情况下执行
uninstall的问题。移除 移除了对使用集群内 Operator 安装
ambient配置文件的支持。 (Issue #46524)
istioctl
新增 添加了一个新的
istioctl dashboard proxy命令, 可用于显示不同代理 Pod 的管理 UI,例如 Envoy、Ztunnel、Waypoint。新增 添加了
istioctl experimental precheck命令的输出格式选项。 有效选项为log、json或yaml。新增 在
istioctl experimental precheck中添加了--output-threshold标志来控制消息输出阈值。默认阈值现在是warning,它取代了之前的默认值info。新增 添加了自动检测 Pilot 监控端口(如果未设置为默认值
15014)的支持。 (Issue #46652)新增 在
istioctl中添加了默认命名空间检测的延迟加载, 以避免通过命令检查 kubeconfig 时不需要 Kubernetes 环境。 (Issue #47159)新增 添加了在
istioctl proxy-config log命令中使用--level <level>或--level level=<level>设置 istio-proxy 日志记录器级别的支持。新增 添加了一个分析器,用于显示与使用外部控制平面的 Istio 安装相关的不正确/缺失信息的警告消息。 (Issue #47269)
新增 添加了 IST0162
GatewayPortNotDefinedOnService消息以检测Service未公开Gateway端口的问题。修复 修复了
istioctl operator remove命令在修订版为“默认”或未指定时不删除 Operator 控制器的所有修订版的问题。 (Issue #45242)修复 修复了当安装的 Deployment 不健康时,
verify-install结果不正确的问题。修复 修复了
istioctl experimental describe命令, 用于在使用注入网关时提供正确的Gateway信息。修复 修复了
istioctl analyze会分析不相关的配置映射的问题。 (Issue #46563)修复 修复了当跨命名空间边界在
VirtualService目标中使用ServiceEntry主机时,istioctl analyze异常报错的问题。 (Issue #46597)修复 修复了如果未提供 EDS 端点,
istioctl proxy-config无法处理文件中的配置转储的问题。 (Issue #47505)移除 移除了
istioctl Experimental revision tag命令, 该命令已升级为istioctl tag。