导读:在Istio1.1版本发布仅仅三个月之后1.2版本发布了。不同于1.1版本万众期待,发布时间一推再推,最后历时七个半个月,1.2的发布效率确实出乎很多人意外。但是注意到1.2版本前1.1版本足足发满了1.1.1~1.1.9九个小版本,1.2更像是第三位满十进位的一个版本。总体看下来没有大的特性增加,更像是一个对于1.1中大粒度特性和之前特性的完善、增强和Bug修复。
- 增强了多集群场景的基于位置信息的负载均衡;
- 增强了在 ALLOW_ANY 的模式下Outbound流量策略。对于未知的HTTP/HTTPS主机端口的访问将会放通,并且Envoy会记录访问日志;
- 支持设置服务的HTTP连接空闲超时时间;
- 增强Sidecar的None模式支持;
- 支持Envoy DNS解析频率配置,减少对DNS服务的压力;
- Sidecar API升级到API Alpha和运行时Beta;
安全
- Citadel的自签名根证书的默认时长设置为10年;
- 通过在PodSpec注解中配置sidecar.istio.io/rewriteAppHTTPProbers: “true”来配置重写每负载的Kubernetes Readiness/Liveness HTTP健康检查;
- 支持PKCS 8类型的私钥,在Citadel中通过参数–pkcs8-keys启用;
- 增强JWT公钥获取逻辑,提高网络故障的鲁棒性;
- 工作负载证书中的SAN字段设置为critical,解决某些自定义证书不能验证Istio证书的问题;
- 支持HTTPS的Readiness/Liveness探针重写;
- Ingress Gateway上多证书的SNI支持从Alpha升级为Stable;
- Ingress Gateway上的证书管理从Alpha升级为Beta;
遥测
- 完整支持基于使用注释基于Stats前缀,后缀和正则表达式来控制Envoy统计数据生成;
- Prometheus生成的流量从Metric中排除;
- 支持发送调用链数据到Datadog;
- 分布式调用链追踪从Beta升级为Stable;
策略执行
- 修复基于Mixer的TCP策略执行;
- RBAC授权功能升级到API Alpha,运行时Beta;
配置管理
- 增强了对策略和遥测CRD的校验;
- 基本配置资源对象的校验从Alpha升级为 Beta;
安装和升级
- 默认Proxy的内存现在((global.proxy.resources.limits.memory)从128Mi提升到1024Mi;
- 增加了控制面组件的Pod反亲和和toleration;
- 增加了配置sidecarInjectorWebhook.neverInjectSelector和 sidecarInjectorWebhook.alwaysInjectSelector ,允许用户基于标签选择器进一步优化是否对sidecar自动注入;
- 增加了global.logging.level 和 global.proxy.logLevel配置,分别允许用户对控制面和数据面进行日志配置;
- 增加 global.tracer.datadog.address参数,配置Datadog 的地址;
- Adapter和Template的CRD默认不启用。如果要启用,需要通过 Use mixer.templates.useTemplateCRDs=true和mixer.adapters.useAdapterCRDs=true来配置;
其他
- 推荐在未来版本默认使用traffic.sidecar.istio.io/includeInboundPorts这个注解替代之前要求使用在工作负载的yaml中通过containerPort 显示声明端口,更好理解;
- 对Kubernetes集群增加了IPV6的支持;
登录后评论
立即登录 注册