Pilot主要有两个功能

  • 服务发现
  • 服务配置

Pilot服务发现

1、服务注册表:Pilot从平台获取服务发现数据,并提供统一的服务发现接口。
2、服务注册:无
3、服务发现:Envoy实现服务发现,动态更新负载均衡池。在服务请求时使用对应的负载均衡策略将请求路由到对应的后端。

当服务A要访问服务B的时候,实现proxy会从pilot中获取要访问的服务B的配置列表并更新proxy中的envoy组件配置,而pilot服务则是通过调用kubernetes的api来获取服务b的相关配置。

Pilot服务发现机制中的Adapter机制

  • abstract model
  • platform adapter 识别各种不同的平台,不是只有kubernetes



Pilot只提供了服务的注册接口,自身么有服务发现功能,真正的服务发现是k8s做的,其实pilot只是一个针对于istio的k8s服务发现封装模块。pilot会持续watch/list k8s的服务发现。

其实整套的istio就是对k8s的链路进行了封装,istio的service就是k8s的service

文档更新时间: 2022-02-27 17:53   作者:张尚