Istio 基本概念
Istio是Service Mesh模式的一个具体框架,底层基于Envoy。具体包含以下组件:
Pilot
负责收集服务发现相关的信息并传递给Envoy
Mixer
Citadel
为具体的服务和用户提供认证、授权、RBAC
Istio为使用者提供了istioctl命令行工具。
Istio流量控制的具体步骤
- Istio使用者编写yaml向控制层创建路由策略
- Pilot 调用kube apiserver获取服务发现信息
- Istio讲Envoy注入到POD上
- Envoy通过 iptable nat redirect 来代理POD中所有流量
- Pilot讲收集信息发送给Envoy,Envoy以此为依据进行流量调度
- Envoy调用Mixer Policy来检查请求的策略
- Envoy转发请求
- Envoy将请求后的信息及状态反馈给我Mixer Telemetry
- Citadel为以上步骤提供认证,授权,RBAC功能