1. Blog
  2. Golang
  3. kubernetes
  4. Rust
  5. 关于作者

组件

组件

arch

architecture

istio 简单理解可以分为两个部件

通俗的来说,istiod 从多个 envoy sidecar 获取数据并进行聚合,并更新不同 envoy 的配置,使之配合以实现 mesh 功能。

envoy 以 sidecar 模式运行与每个 mesh pod 内,通过更改 iptables 规则拦截流量,通过 istiod 下发的配置将流量代理并发送到合适的地方。

在代理 pod 流量的过程中还会做一些监控,取样,熔断,路由等操作。

proxy(envoy)

istio proxy 对 envoy 做了扩展。其功能可以认为与 envoy 相同。

要完整的了解 istio 我们必须要对其核心 envoy 进行认识:

envoy 有以下几个部分:

LDS: listener discovery service (监听器发现服务)

https://www.envoyproxy.io/docs/envoy/latest/configuration/listeners/lds

RDS: router discovery service (路由发现服务)

https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/rds

EDS: endpoint discovery service(端点发现服务)

istiod

istiod 由下列子组件组成: