Istio架构体系中,流控(Traffic Management)虽然是数据平面的Envoy Proxy实施的,但整个架构的核心其实在于控制平面的Pilot。

灰度发布的过程在《Istio,灰度发布》一文中已经有过描述,今天重点说说Pilot和Envoy的交互流程与内部结构。

一、通用交互流程

image.png

图示:

  • 灰色圆形,为业务服务
  • 紫色六边形,为Envoy代理

二者相生相伴。

起初,上游调用方ServiceA访问下游服务提供方ServiceB的V1版本,在ServiceB的V2版本部署好之后,调用方如何知道“SvcA切分1%的流量至SvcB的V2版本”这个指令的呢?

整个过程主要分为三大步骤:

(1)用户在控制平面的后台,通过Pilot的API,修改A到B的路由策略(标号1);

(2)Pilot将路由策略固化存储,以便未来新注册的调用方A能够知道当前最新的路

收藏 打印