Istio 是 Google/IBM/Lyft 联合开发的开源项目,2017年5月发布第一个 release 0.1.0,官方定义 Istio 是一个连接、管理和保护微服务的开放平台。在越来越多的企业和项目实践微服务的环境下,Istio 也正在逐渐被采纳使用。但是很多开发者对于 Istio 的版本迭代和性能提升很感兴趣。
为了让读者更多的了解 Istio,7月6-9日, ArchSummit全球架构师峰会 将在深圳华侨城洲际酒店举行。大会设置了 《微服务架构》 专题来深入当前关注度较高的Istio、Conduit、Service Mesh等在一线企业的技术和精进案例,其中邀请了IBM高级技术委员会成员Lin Sun前来分享 《Istio-构造、守护、监控微服务的守护神》 。
我们借此机会邀请了敖小剑老师前来采访Lin Sun老师,以下是对话内容,经过简单整理。如果读者想了解更多Service-Mesh如何帮助微服务过渡及Istio项目的进展和生态效果等,欢迎报名参加 ArchSummit 与Lin Sun老师进一步交流。
Disclaimer: below is personal view point, especialy anything related to timing.
Lin Sun:对,Istio 0.7.1版本主要是提升稳定性。现在 Istio 最大的的一块变动是故障管理。我们打算在0.8版本推出全新的 v1alpha3 故障管理规则和Gateway,并且支持 Envoy v2。0.8版本是维一的一个 Istio 版本支持老的和新的故障管理规则。我们希望用户们可以通过这个新版本的发布移到新的规则上。
Lin Sun:很可能今年夏天。当然 Istio 是个开源社区项目,时间上会受各方面的影响。
Lin Sun:现在有几个用户在使用 Istio, 比如说 Namely 最近在 Istio 的用户会上向大家介绍了他们怎么在生产环境里用 Istio的。Istio 有很多功能,用户可以在初期先用一个功能,然后再慢慢加上别的功能。
Lin Sun:LTS 是 Istio 技术管理委员会 推出来的概念。一般来讲,LTS本意是这个版本相对稳定,经过验证的,Istio 社区也会支持得久一些。如果用户发现严重问题,Istio 社区会尽量修复。
Lin Sun:第一个 LTS是0.2。 0.8是第二个 LTS,可能五月份。主要的新功能就是新的故障管理规则,Gateway 和 Envoy v2 以及其他一些功能的提升和改进。
Lin Sun:很有可能会以月为单位来发布,中间可能不会再有 LTS 版本了。
Lin Sun:除了前面说的功能之外,还有一些安全方面的功能,比如每个服务 mTLS 启动或者不启动、可插拔 CA、灵活的 TLS 配置,也会有 Envoy 习惯过滤器的支持,通过用户写一个 pilot webhook 来提供用户自定义的 Envoy 过滤器。此外还有增量采用Istio,初始多集群支持,Mixer 性能提升,以上只是其中一部分
Lin Sun:是的,我们知道大家想了解的问题。0.8版本后主要的关注会在稳定性上,包括性能,连续性测试(long run test),更多 e-2-e 自动化测试,包括来自 Istio.io 的不同任务和指引,而这些也都是 Istio 的核心功能。
Lin Sun:1.0后有可能,具体看用户提供的要求和用户案例。据目前看来,还没多个用户说这个会阻碍 Istio 的使用,这一部份是通过 init 容器做的,如果有更好的想法,欢迎试着把这个换成别的方法,并且向 Istio 社区提出这样的方案和样品。
Lin Sun:现在 Istio 已经支持 pilot webhook,用户可已通过 pilot webhook 来进行特别的 Envoy 配置。Istio 社区也打算提出更简单好用的对 Envoy 过滤器的支持。
Lin Sun:这要看中国国内的几个公有云了,只要他们支持 K8s, 而且能通过 K8s 一致性测试,用户都可以自己安装 Istio。我个人觉得他们很可能会在 Istio 1.0 后开始支持 Istio,因为这样会给客户带来更大的可移植性。Istio 社区也欢迎他们能来做贡献。
Lin Sun:Istio 社区有指导委员会,这个可以向社区指导委员会提出要求。指导委员会对 Istio 项目有控制管理权,市场推广等权利。我现在是指导委员会成员,也可以通过我向委员会提出要求。