Istio 1.1 版本发布,性能和可用性提升(30)

发布于2019-04-21 20:14:00

3月20日,Istio 1.1版本发布,距离Istio 1.0版本发布已经过去了7个月。Istio 1.0版本发布的时候,一些主要新功能包括:

当前发布的1.1版本投入了很多精力在数据平面和控制平面的效率上。因为 Istio 在投入生产中时,使用更大的集群以更高的容量运行更多服务,可能会遇到了一些扩展和性能问题。Sidecar 占用了太多资源增加了太多的延迟。控制平面(尤其是 Pilot)过度耗费资源。

在 1.1版本 的性能测试中,sidecar 处理 1000 rps 通常需要 0.5 个 vCPU。单个 Pilot 实例能够处理 1000 个服务(以及 2000 个 pod),需要消耗 1.5 个 vCPU 和 2GB 内存。Sidecar 在第 50 百分位增加 5 毫秒,在第 99 百分位增加 10 毫秒(执行策略将增加延迟)。

新版本优化了namespace隔离工作。可以很方便的使用Kubernetes namespace来强制控制边界,确保各个团队不会相互干扰。

同时1.1版本还改进了多集群功能和可用性。在听取了社区的意见之后,改进了流量控制和策略的默认设置。新版本引入了 Galley组件,可验证 YAML 配置,减少了配置错误的可能性。Galley 还用在多集群设置中——从每个 Kubernetes 集群中收集服务发现信息。同时1.1版本还支持其他多集群拓扑,包括单控制平面和多个同步控制平面,而无需扁平网络支持。

更多信息,请参考发行说明