Istio 1.3 版本发布说明

原创
半兽人 发表于: 2019-09-14   最后更新时间: 2019-09-15 10:25:48  
{{totalSubscript}} 订阅, 4,390 游览

我们很自豪地发布了Istio 1.3!

我们花了3个月的时间对整个产品进行了一些重大改进,并修复了Istio社区的提出的问题。

本发行说明介绍Istio 1.2.5Istio 1.3之间的不同之处。

流量管理

  • 未根据 Istio 约定命名端口时,自动为出站流量添加 HTTP 或 TCP。
  • 为Gateway API添加了一种模式,用于相互TLS操作。
  • 修复了当一个服务首先在网络上在允许的相互TLS进行通信时出现的问题,如MySQL和MongoDB。
  • 改进了Envoy代理就绪检查。现在可以检查Envoy的状态。
  • pod spec中不再需要修改容器端口。默认情况下捕获所有端口。
  • 改进了 EnvoyFilter API,现在可以添加或更新所有配置
  • 改进了redis负载均衡器,在使用redis proxy时默认为MAGLEV。
  • 改进了负载平衡,默认情况下将流量定向到同一区域和区域。
  • 通过降低CPU利用率来改进Pilot。根据具体部署,减少量接近90%。
  • 改进了ServiceEntry API,以允许在不同的命名空间中使用相同的hostname。
  • 改进了Sidecar API,来自定义OutboundTrafficPolicy策略。

安全

  • 为使用TLS的服务添加了信任域验证。默认情况下,server仅对来自同一信任域的请求进行身份验证。
  • 添加lables以控制根据namespace生成的service帐户密钥。
  • 添加了SDS支持,以便为每个Istio控制plane服务提供私钥和证书。
  • 添加了对Citadel内省的支持。
  • 向端口15014上的Citadel Agent的/metrics添加度量,用于监听SDS服务。
  • 为Citadel Agent添加诊断,通过在8080端口上的/debug/sds/workload/debug/sds/gateway
  • 改进了ingress网关,以便在使用sds时从单独的secret加载受信任的ca证书。
  • 通过强制使用Kubernetes Trustworthy JWTs来提高sds的安全性。
  • 改进了Citadel Agent日志,通过统一日志的pattern。
  • 当使用早于1.13的Kubernetes版本时,移除对Istio SDS的支持。
  • 临时移除了与Vault CA的集成。 SDS要求导致临时删除,但我们将在以后的版本中重新引入Vault CA集成。
  • 默认情况下启用Envoy JWT过滤器以提高安全性和可靠性。

Telemetry

  • 为Envoy gRPC添加了访问日志服务ALS支持。
  • 为Citadel监控添加了Grafana仪表盘。
  • 添加了用于监控sidecar注入webhook的指标。
  • 添加了控制平面指标以监控Istio的配置状态。
  • 添加了针对Passthrough和BlackHole集群的流量的telemetry报告。
  • Added alpha support for in-proxy generation of service metrics using Prometheus.
  • 使用Prometheus为poxy内生成服务指标添加了alpha支持。
  • 在Envoy节点元数据中添加了对环境元数据的alpha支持。
  • 为 Metadata Exchange添加了alpha支持。
  • 为OpenCensus跟踪驱动程序添加了alpha支持。
  • 通过移除添加服务条目的要求,改进了对外部服务的报告。
  • 改进了网格仪表板,以监控Istio的配置状态。
  • 改进了Pilot仪表板以公开其他关键指标,以更清楚地识别错误。
  • 移除了已弃用的Adapter和Template自定义资源定义(CRD)。
  • 弃用的Mixer适配器。请开始转换到新扩展模型的所有扩展。Legacy Mixer集成支持仅适用于Istio 1.3和1.4。
  • 不推荐使用用于生成API属性的HTTP API规范。我们将在Istio 1.4中移除生成API属性的支持。

Policy

  • 改进了速率限制,以便在配额后端不可用时允许通信。

配置管理

  • 修复了Galley关闭连接时阻塞过多GRPC ping的问题。
  • 改进Galley以避免控制平面升级失败。

istioctl

  • 添加了istioctl实验清单来管理新的实验安装清单。
  • 添加了istioctl实验配置文件来管理新的实验安装配置文件。
  • 添加了istioctl实验指标
  • 添加了istioctl实验描述pod来描述Istio pod的配置。
  • 添加了istioctl实验性的add-to-mesh,以将Kubernetes服务或虚拟机添加到现有的Istio服务网格中。
  • 添加了istioctl实验性的remove-from-mesh,以从现有的Istio服务网格中删除Kubernetes服务或虚拟机。
  • 将istioctl实验转换入口命令提升为istioctl convert-ingress
  • 将istioctl实验仪表板命令提升为istioctl dashboard。

其他

  • 添加了基于distroless基本镜像的新镜像。
  • 改进了Istio CNI Helm,使其与Istio具有一致的版本。
  • 改进了Kubernetes Jobs的行为。 当job手动调用/quitquitquit端点时,Kubernetes Jobs现在可以正确退出。
更新于 2019-09-15

查看istio更多相关的文章或提一个关于istio的问题,也可以与我们一起分享文章