原文链接 译者:carvendy
综述
本页提供在Istio中,如何管理流量,包括流量管理原则的好处。假设你已经读了什么是Istio?,并且熟悉与Istio相关的高可用架构。你可以本章节的其他指南中,找到个别的流量管理特性。
领航员(Pilot)和使者(Envoy)
在Istio中流量管理使用的核心组件就是领航员(Pilot),在一个详细的Istio服务网格中,它管理和配置所有使者代理发布。可以制定你想要使用的规则在使者代理之间路由流量,还可以配置失败恢复的特性,例如:超时、重试和熔断。在网格中,维持着所有服务的权威模型,并使用使者代理可以让其他服务在网格中发现其他服务。
在每一个使者实例基于领航员获取的信息里实现负载均衡,在负载均衡池里面做定期的健康检查,让它根据指定的路由规则,可以智能地分布流量到目标实例。
流量管理的好处
使用IStio的流量管理模型本质上是分离流量和基础设施的缩减,让运维人员通过领航员来设置需要的流量分布,而不是指定pods/VMs来接收流量——领航员和智能的使者代理让你变得更轻松。所以,作为例子,你可以通过领航员,把你需要的生产服务的5%流量,重新指向到无关紧要的金丝雀版本上,或者发送流量到依赖其他请求的原始版本。
从基础设施缩放中实现流量控制的去耦,Istio提供了多种流量管理的特性并脱离的应用代码。所以可以动态路由请求可以实现A/B测试、灰度升级、金丝雀发布,它也可以处理故障恢复,超时、重试、熔断,还有错误注入可以用来测试在服务间的故障恢复规则的兼容性。这些功能全都是通过使者边车/代理发布到服务网格中。