K8S 生态周报| Istio 1.3 正式发布

904 阅读3分钟

「K8S 生态周报」内容主要包含我所接触到的 K8S 生态相关的每周值得推荐的一些信息。欢迎订阅知乎专栏「k8s生态」

Istio 1.3.0 正式发布

上周 k8s 生态周报中,我推送了关于 Istio 1.3.0-rc2 发布的消息后,有小伙伴专门私聊我,说想问问 Istio 1.3 到底有什么新特性;以及为何上次没有对 Istio 1.3 的新特性进行介绍。

这里我来做下说明,首先关于为何上次没有对 Istio 1.3 新特性进行介绍。有两个主要原因:1. 上周时,正式版尚未发布;2. 对 1.3 这个版本而言没有太多新特性,此版本主要在于改善用户体验。

对 Istio 而言,今年是个很重要的节点,而且自从 3 月份发布 1.1 版本以来, Istio 的更新频率基本稳定在了 3 个月发布一个版本。1.1 版本专注于企业就绪,在此版本中一方面是提升系统的稳定性,另一方面则是解决企业落地时,可能遇到的一些问题,所以 1.1 中有大量的新特性。而 1.2 版本其实也类似,虽然花费了很多精力在保证质量上,但其中也有不少功能从 Beta 到了 Stable 阶段。

其次是关于 1.3 版本到底有哪些新特性:

  • 出站流量自动确定协议:之前版本中,Istio 要求 Service 需要按照指定的规则进行命名才可以自动确认其协议,而在此版本中则可以自动确认其是 HTTP 或 HTTP/2 流量,如果无法自动确认,则认为其是纯 TCP 流量,如果是通过 Helm 安装的话,可以使用 --set pilot.enableProtocolSniffing=false 关闭此功能;
  • Pod spec 中不再需要定义 containerPort,默认情况下会捕获所有端口,当然你也可以通过 traffic.sidecar.istio.io/includeInboundPorts 覆盖此行为或者通过 traffic.sidecar.istio.io/excludeOutboundPorts 绕过要捕获的端口;
  • 当使用 Redis proxy 时,现在默认的负载均衡器是 Envoy 的 MAGLEV
  • 改善了 EnvoyFilter API 现在你可以添加或更新所有配置;
  • 实验性的使用 Prometheus 为代理内生成服务指标的支持;
  • 废弃了 Mixer adapters 两个版本后移除;
  • istioctl 命令有了一些变化: istioctl experimental dashboard 晋升为了 istioctl dashboardistioctl experimental convert-ingress 晋升为了 istioctl convert-ingress,以及增加了一些便于调试使用的 metrics 或者 describe pod 之类的实验性命令;

以上便是我个人看来 1.3 中值得关注的内容,但其实很明显,这个版本的主题确实还都在改善用户体验上,如果对此版本有兴趣的小伙伴,可自行参看 ReleaseNote

从 Helm v2 迁移至 Helm v3

这是来自 Helm 官方博客的一篇文章 先来一张图:

helm-2to3-moelove.info

其实这篇文章主旨就是介绍一个 Helm 的插件 helm-2to3 这也是“官方工具”,推荐需要从 Helm v2 迁移至 v3 的小伙伴使用。

另外,看 Helm v3 现在的状态,虽然正式版仍未发布,但也应该不会太久了。

上游进展

Kubernetes v1.16.0 正式版即将发布,不出意外的话,应该也就是最后一周了。当然,需要注意的是,当 Kubernetes 发布新版本后,意味着旧版本将有一个 EOL 请及时升级。

因为现在是 Code Freeze 阶段,所以上游的开发进展没有很多。

  • #82199 将 etcd server 从 3.3.10 更新到了 3.3.15 ,实际上这个变更可能是个遗漏 hah

可以通过下面二维码订阅我的文章公众号【MoeLove】,在公众号后台回复 k8s 可加入技术圈交流。

TheMoeLove