IBM Developer 博客

通过 IBM Developer 关注最新动态并获取信息

了解 Istio 1.7 中支持在混合云环境中进行开发的新功能。


目前的 Istio 1.7 版本极大地改善了 Istio 的操作体验。此版本引入了一些新的功能改进(包括控制平面升级、虚拟机集成和 Central Istiod 体验),因此可以更轻松地运行 Istio 并扩展了其在混合云环境中的功能。这篇博客文章介绍了此版本中的一些新功能,探讨了 IBM 在 Istio 方面的投资,并阐述了 Istio 对于开发开放式混合云环境的重要性。

功能改进

多个控制平面升级。可用性方面的一项重要改进是在操作程序中集成了 Canary 升级功能。借助这项改进,Istio 的 Canary 升级将普遍可用,并且成为 Istio 的首选升级路径。通过 Canary 升级,可以使用持续集成和 Istio 遥测功能来验证新的控制平面。在验证了一部分工作负载后,可以传输更多的工作负载,直到所有工作负载都使用新的 Istio 控制平面来运行。

要快速了解此功能,可以观看以下视频:

虚拟机集成。Istio 从早期版本开始就提供了虚拟机集成,但存在一些可用性方面的问题。在 Istio 1.7 中,虚拟机集成达到了 beta 质量。虚拟机集成的目标是将虚拟机工作负载连接到服务网格,使虚拟机可以像 Istio 中的另一项工作负载一样运行。在 Istio 1.7 中新增了 WorkloadEntry API,此 API 会将虚拟机当做 Kubernetes Pod 一样对待,因此可以使用 API 来管理基础架构。同时还实现了一些安全性增强功能,包括令牌引导和证书轮换。虚拟机集成仍在开发中,但是可以使用 alpha 质量文档将虚拟机连接到服务网格。有一大批开发者对这项工作十分感兴趣,正在迅速推进这项工作。

Central Istiod。Central Istiod 由 IBM 开发,已在 Istio 1.6 中部分实现,并在 Istio 1.7 中达到了 alpha 质量。Central Istiod 的优势在于,它现在可以将 Istio 控制平面与数据平面分离,以改善操作支持。此外,Central Istiod 还满足了多租户要求,这是 Istio 迈向多租户之旅的第一步。

在 IBM 员工 Lin Sun 和 Shao Jun Ding 的带领下,向 Istio 引入了一个新的部署模型,网格操作员可以使用此部署模型在与数据平面集群分离的专用集群上安装和管理网格控制平面。在下面的视频中,IBM 员工 Shao Jun Ding 向您介绍了 Central Istiod。

其他改进

您还应该了解 Istio 1.7 中的其他一些改进,包括:

  • 测试和资格认证改进。由于 Istio 社区越来越注重严格测试,因此可以在每个版本中交付更好的项目。Istio 至少包含 2 万多项功能测试和 4.5 万多项单元测试。
  • 迁移到 Envoy xDSv3。xDS 是一个基础 API,可以提供由 Istio 管理的数据平面协议。此主要版本变更可提供更高的性能和可伸缩性
  • Istio 容器网络接口。利用 Istio 的 CNI,无需提升权限即可在 Kubernetes 中运行 Istio 工作负载。

Istio 支持工作负载可移植性(这是影响混合云的一个关键因素)

交付混合云环境的最大挑战之一是需要使用网络技术将不同的环境连接在一起。如果无法连接,那么工作负载可移植性将一直是提供真正混合云体验所面临的一项挑战。

利用 IBM Cloud Satellite,您可以在最适合的地方(公有云、数据中心或边缘位置)运行工作负载。Istio 服务网格推动了 IBM Cloud Satellite 分布式云网络连接,从而实现了工作负载可移植性和互操作性。

IBM 在 Istio 方面的投资

领导创新。在 Istio 项目中,我们的开发者专注于开发对创建和实现开放式混合云环境最重要的技术。具体来说,我们将努力实现 Central Istiod,这是在 Kubernetes 中实现多租户功能的第一步。IBM 一直致力于向 Istio 引入虚拟机集成,并且已在 Istio 1.5、1.6 和 1.7 中完成了初始技术的大部分开发工作。最后,IBM 专注于重叠技术支持,即,通过实现一种技术来实现另一种技术。

为社区提供支持。虽然围绕 Istio 治理存在一些争议,但社区成员的奉献精神为 Istio 项目注入了新的活力,使得这个项目不断发展壮大。任何项目的发展壮大都离不开贡献者的付出,因此 IBM 一直坚持为社区提供支持,我们希望所有人都为 Istio 1.7 版本感到自豪。

参与 Istio 项目

可通过以下几种方式来参与 Istio 社区和项目:

Steven Dake 是 IBM 的开源主管。他是 Istio 项目的维护者,并担任环境工作组的工作组负责人。

本文翻译自:Istio 1.7 delivers hybrid cloud features(2020-08-21)