Kubecon 2017 大会微软项目经理 Lachie Evenson 访谈:Istio、微服务和 Kubernetes

阅读数:595 2018 年 1 月 22 日

话题:语言 & 开发架构Kubernetes

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

在德克萨斯州奥斯汀市举办的Kubecon大会已于近日闭幕。会议吸引了超过 4000 名工程师,Kubernetes 成为最热门的主题。Istio 似乎是第二受欢迎的主题,许多分会场都在讨论,人们在走廊里也多有谈及。

Istio 是基于 Kubernetes 构建的一个微服务平台,可以用于金丝雀、红 / 黑部署、负载均衡、智能路由、深度遥测 & 报告。

InfoQ 联系了在 Kubecon 大会上做介绍演讲的微软 Azure 容器服务项目经理Lachie Evenson,就 Istio 平台对他进行了采访。他同时也是 Istio 项目的贡献者。除了 Istio 之外,他还谈了微服务、Kubernetes 以及与企业开发人员和架构师的关系。

InfoQ:Kubecon 大会的 Istio 活动创了记录。有什么特别的原因吗?

Evenson:这是 Kubernetes 社区成熟的标志。由于与 Kubernetes 集群部署和运营相关的挑战已经不大,所以我们现在的重点是基于 Kubernetes 构建支持微服务的平台。这就是 Istio 和服务网格的用途所在了。

InfoQ:您能大体上介绍下 Istio 和微服务的全面协同并具体介绍下 Kubernetes 和 Istio 的协同吗?

Evenson:Istio 是一个构建、部署和管理微服务的平台。Kubernetes 提供的运行时抽象是 Istio 的构建基础。Istio 为操作人员和开发人员提供了类似的特性集。Istio 使长期地微服务部署、管理和自检成为可能。

InfoQ:人们在谈论 Istio 时经常会提到服务网格。开发人员可以在 Kubernetes 上创建自己的服务网格,而不是使用 Istio,不是吗?

Evenson:你当然可以在 Kubernetes 上推出自己的服务网格,我见过许多人成功做到了这一点。这些服务网格通常是一组开源项目以预定的方式一起运行来满足业务需求。Istio 是一个平台,所有组件本身都是以微服务的方式提供的。Istio 采用了端到端的设计,提供了一致的用户体验,而且模块化、可扩展。

InfoQ:如果我是企业里的一名开发人员或架构师,我所接触的遗留应用程序多数都可以工作,那么 Istio 与我还有关系吗?

Evenson:当然有关系。对于遗留应用程序的提升和迁移,其中一项挑战就是开发人员需要学习新系统(如 Kubernetes),在某些情况下,这是一条很长的学习曲线。Istio 不要求用户有很深的 Kubernetes 知识,并提供了开发工具,实现微服务自助。你甚至都不需要知道自己在使用 Istio。

InfoQ:关于什么是 Sidecar 模式以及为什么说该模式是 Istio 的核心理念,您能提供更多的技术细节吗?

Evenson:最简单地说,Istio 是一个使用 Envoy 数据平面运行的控制平面。Envoy 在服务网格上按要求输入 / 输出流量。Sidecar 模式是为了提供 Envoy 并操作 Pod 路由,使所有的输入 / 输出流量都通过 Envoy。在用户看来,他可以无缝地上线应用程序。

InfoQ:Istio 不只是可以在 Kubernetes 上运行,对吗?它可以在 Cloud Foundry、OpenShift 等平台上运行吗?

Evenson:是的。Kubernetes 只是其中一种平台抽象层。针对 Cloud Foundry、Mesos 等其他平台的计划正在进行中。这项工作的重点是这些运行时编排器的平台抽象模型。

InfoQ:Istio 的路线图是什么?

Evenson:我认为,对于 Istio 平台而言,生产就绪是短期目标之一。更多的 Mixer 适配器。我建议加入社区并参加会议,从而了解更多最新路线图信息。

感兴趣的读者可以从 Kubecon 大会的日程页面上查看主题演讲及其他记录。

查看英文原文Q&A on Istio, Microservices and Kubernetes with Lachie Evenson of Microsoft from Kubecon 2017