Istio 1.17.0 更新说明
Istio 1.17.0 更新说明。
弃用通知
以下通知说明了根据 Istio 的弃用政策将在未来某个版本中移除的功能。 请考虑升级您的环境以移除弃用的功能。
弃用 针对版本低于 1.20 的 Kubernetes 环境, 弃用了将
PILOT_CERT_PROVIDER设置为kubernetes的操作行为。 PR #42233弃用 弃用了 Lightstep 提供程序。 请使用 OpenTelemetry 提供程序替代 Lightstep 提供程序。 Issue #40027
流量治理
改进 改进了
MostSpecificHostMatch以防止在遇到通配符时执行完整扫描主机操作。 Issue #41453改进 改进了 Gateway 的命名以
Name和GatewayClassName的串联为约定。 Deployment 现在也使用自己的 Service Account 进行部署, 而不是使用default令牌。 命名约定会影响 Deployment、Service 和 Service Account 的名称 PR #43103新增 新增了双堆栈对
statefulsets/headless、服务入口和网关的支持, 并使用getWildcardsAndLocalHost进行入站集群构建。 PR #42712新增 新增了在
EnvoyFilter的LISTENER_FILTER中对ADD、REMOVE、REPLACE、INSERT_FIRST、INSERT_BEFORE、INSERT_AFTER操作的支持。 Issue #41445新增 新增了验证
Gateway和Sidecar以防止主机名中出现 Envoy 不支持的部分通配符。 Issue #42094新增 新增了对 k8s
ServiceInternalTrafficPolicy的支持 (不考虑ProxyTerminatingEndpoints)。 Issue #42377新增 新增了
excludeInterfaces对 CNI 插件的支持。 Issue #42381新增 新增了在
/config_dumpAPI 中对缺少的资源类型进行支持。 PR #42658修复 新增了当
InboundInterceptionMode为 TPROXY 时正确清理istio-clean-iptables的问题。 PR #41431修复 修复了使用代理配置不会对
PrivateKeyProvider进行修改的问题。 Issue #41760修复 修复了当发现选择器或命名空间标签(
ENABLE_ENHANCED_RESOURCE_SCOPING=true)时, 选择或取消选择命名空间时 Istio 和 K8S Gateway API 的资源未被正确处理的问题。 Issue #42173修复 修复了 ServiceEntries 通过使用
DNS_ROUND_ROBIN能够指定 0 个端点的问题。 Issue #42184修复 修复了具有不同版本标签(与安装的 Istio 版本不同)的 ServiceEntries 创建后被处理并为其创建端点的问题。 Issue #42212
修复 修复了同步超时设置在从集群上不起作用的问题。 PR #42252
修复 通过修复网关服务依赖关系,修复了 Kubernetes 服务中
exportTo注解在网关上不起作用的问题。 Issue #42400修复 修复了 Sidecar 没有选择服务时缺少的固定位置标签的问题。 PR #42412
修复 修复了网络网关变更时错误计算网络端点的问题。 Issue #42818
修复 修复了当
PILOT_FILTER_GATEWAY_CLUSTER_CONFIG被启用时自动直通网关无法获得 XDS 推送服务更新的问题。 PR #42721修复 修复了 VirtualService 委托行为针对
defaultVirtualServiceExportTo: ["."]设置不工作的问题。 Issue #42602修复 修复了
PortLevelSettings[].Port为 nil 时 Pilot 推送 XDS Panic 导致 Pilot 异常退出的问题。 Issue #42598修复 修复了导致 Namespace 的网络标签比 Pod 的网络标签具有更高优先级的问题。 Issue #42675
修复 修复了当
PILOT_ENABLE_CONFIG_DISTRIBUTION_TRACKING被启用时, Pilot 状态不会记录过多错误的问题。 Issue #42612
安全性
新增 新增了 L7 拒绝规则的验证警告消息将阻止具有该规则策略范围内的所有 TCP 流量。 PR #41802
新增 新增了对在 SDS 中使用 QAT(
QuickAssist Technology)PrivateKeyProvider的支持。 PR #42203新增 新增了用于为网关和边车选择 QAT 私钥提供程序的配置。 PR #2565
新增 新增了支持将 JWT 声明复制到 HTTP 请求头中的功能。 Issue #39724
修复 修复了当
automountServiceAccountToken为false且PILOT_CERT_PROVIDER为kubernetes时阻止 istio-proxy 访问根 CA 的问题。 PR #42233
遥测
更新 更新了 Telemetry API 使用新的原生扩展(stats)来获取 Prometheus 统计信息,而不是基于 Wasm 的扩展。 此举改善了该功能的 CPU 开销和内存使用。 自定义维度不再需要正则表达式和引导注解。 如果自定义内容使用带有 Wasm 属性的 CEL 表达式, 它们很可能会受到影响。 PR #41441
新增 新增了针对 Telemetry 资源的分析器。 Issue #41170 PR #41785
新增 新增了针对
reporting_interval的支持。 这将允许最终用户通过 Telemetry API 配置tcp_reporting_duration(配置调用之间的时间)以进行指标报告。 该功能目前仅支持 TCP 指标,但将来我们可能会将其用于持续时间较长的 HTTP 流中。 Issue #41763修复 修复了配置
Datadog链路提供程序时,Telemetry API 中的错误请求malformed Host header存在的问题。 Issue #41829修复 修复了由于缺少服务名称,OpenTelemetry 链路跟踪器无法正常工作的问题。 Issue #42080
安装
更新 更新了 Kiali 插件版本由
1.55.1至1.63.1。 PR #43052, PR #42193, PR #41984更新 更新了支持的最低 Kubernetes 版本为
1.23.x。 PR #43252新增 新增了在
istioctl operator remove命令中使用--purge标志后, 将删除 Istio Operator 的所有修订。 Issue #41547新增 新增了支持通过 Helm 安装允许 CSR 签名者的功能。 PR #41923
新增 新增了 Gateway 通过 Helm 部署的输入项, 用于显式设置网关 Deployment 的
imagePullPolicy。 Issue #42852修复 修复了指定
--revision default时istioctl install会失败的问题。 PR #41912修复 修复了当未指定
--revision或使用default设置时,istioctl verify-install的行为不一致的问题。 PR #41912修复 修复了设置多个修订标签时,
mutatingwebhook不会被拆分的问题。 Issue #42234修复 修复了为 Pilot 的安全 gRPC 服务器在默认位置提供服务证书初始化的问题。 Issue #42249
修复 修复了
appProtocol字段在 IstioOperatorServicePort中没有生效的问题。 Issue #42759修复 修复了网关 Pod 不遵守 Helm Values 中设定的
global.imagePullPolicy的问题。 PR #42026移除 移除了当 CNI 用作独立插件时,如果 istio-cni 不是默认的 CNI 插件会发出警告的机制。 PR #41858
移除 移除了从 istio-operator 的 URL 中获取图表的能力。 Issue #41704
istioctl
新增 新增了在
Istiods之间切换控制时, 管理日志中具有revision标志。 PR #41321更新 更新了
admin log命令中的-r标志为--revision的简写,以与其他命令保持一致(最初-r是--reset的简写)。 PR #41321更新 更新了
client-go到v1.26.1, 同时移除了对azure和gcp授权插件的支持。 PR #43101新增 新增了
istioctl proxy-config ecds从 Envoy 中为指定的 Pod 检索类型扩展配置。 PR #42365新增 新增了能够使用
istioctl proxy-config log命令为 Deployment 的所有 Pod 设置代理日志级别。 Issue #42919新增 新增了
istioctl analyze命令中--revision标志,以指定特定的修订版。 Issue #38148修复 修复了清单 URL 路径(用于从
Github版本下载 Istio 版本)以支持多架构而不使用硬编码的问题。 PR #41483修复 修复了在不使用
--cluster-specific选项的情况下, 使用istioctl通过 Helm Chart 库生成清单的默认行为, 替代使用istioctl定义的最低 Kubernetes 版本的问题。 Issue #42441修复 修复了在
EnvoyFilter.ListenerMatch.FilterChainMatch下缺少可选字段filter时istioctl analyze抛出SIGSEGV的问题。 Issue #42831修复 修复了当用户使用
--proxy-admin-port指定自定义代理管理端口时,istioctl proxy-config失败的问题。 Issue #43063修复 修复了
istioctl version与自定义版本不兼容的问题。 PR #41650修复 修复了
istioctl validate未检测到服务端口appProtocol的问题。 PR #41517修复 修复了
istioctl proxy-config endpoint -f -返回Error: open -: no such file or directory的问题。 Issue #43045
文档变更
修复 修复了
pilot-discovery环境变量名称由VERIFY_CERT_AT_CLIENT变更为VERIFY_CERTIFICATE_AT_CLIENT。 PR #2596移除 移除了关于不支持委托 VirtualService 正则表达式的评论。 Issue #2527