如果你正在建立和经营一个规模microservices建筑,并接受了Kubernetes,采用服务网格管理运行体系结构的所有横切方面是一个默认位置。在服务网格的各种实现中,Istio得到了大多数人的采纳。它具有丰富的特性集,包括服务发现、流量管理、服务对服务和源对服务安全性、可观察性(包括遥测和分布式跟踪)、滚动发布和弹性。由于其易于安装和控制面板架构,它的用户体验在最新版本中得到了改进。Istio降低了我们许多客户实现大规模微服务的操作质量,同时承认,操作自己的Istio和Kubernetes实例需要足够的知识和内部资源,这不是为胆小者准备的。
Istio正在成为实际操作的基础设施microservices生态系统。它对跨领域问题的开箱即用的实现——如服务发现、服务对服务和源对服务的安全性、可观察性(包括遥测和分布式跟踪)、滚动发布和弹性——已经非常迅速地引导了我们的微服务实现。它是服务网格我们一直在用的方法。我们一直在享受它每月发布的版本,以及它的不断改进和无缝升级。我们使用Istio来引导我们的项目,从可观察性(跟踪和遥测)和服务到服务的安全性开始。我们正在密切关注它在网格内外对服务对服务身份验证的改进。我们还希望看到Istio为配置文件建立最佳实践,以便在给服务开发人员自主权和给服务网格操作人员控制权之间取得平衡。
当建立和操作一个microservices生态系统,早期需要回答的问题之一是如何实现跨领域的关注,如服务发现、服务对服务和从服务到服务的安全性、可观察性(包括遥测和分布式跟踪)、滚动发布和弹性。在过去的几年里,我们对这个问题的默认答案是使用服务网格技术。服务网格作为配置为代码的基础设施层提供了这些横切功能的实现。政策配置可以始终如一地应用于微服务的整个生态系统;强制在进出网格流量(通过作为网关的网格代理)以及每个服务的流量(通过作为sidecar容器的相同的网格代理)上执行。同时我们也在密切关注不同开源服务网格项目的进展,比如Linkerd,我们已经成功地使用Istio在生产中使用一个非常容易配置的操作模型。