Istio 解决的问题及注入

Istio 解决的问题


Istio 解决的问题及注入_第1张图片

istio所要解决的问题就是流量的管控,之前在pod里面增加了sidecar haproxy就是用来做流量管控的。

Istio 解决的问题及注入_第2张图片

如果配置了istio就不需要手动的为每个pod去添加sidecar了,而是自动的给我们添加。

istio主要解决的问题:
  1. 流量的管控
  2. 安全性
  3. 可观测性(可观测性就是通过可视化界面去看流量的走向)

 

 

 

istio架构图


Istio 解决的问题及注入_第3张图片

 使用istio创建出来的每一个pod都会加上一个sidecar,之前费力的演示都是为pod里面手动添加sidecar haproxy,对于istio来说,每次创建一个pod它都会增加一个sidecar,只不过sidecar里面是envoy来给我们实现的sidecar。

envoy其实实现的也是网络代理,创建出来的pod里面的主容器直接转发给它的代理envoy就行了。

每次创建一个容器,其实也就会多了一个代理,主容器会将流量转发给它。在流量转发的时候是可以设置各种各样的转发策略的。

修改了流量策略是不需要重启pod,设置下面策略的时候是立刻生效的。因为设置的种种策略都是通过控制平面应用到代理里面的,它是可以动态去接受发过来的请求的,所以做好之后是不需要说再去重启这个容器的。

  • Gateway
  • VirtualService
  • DestinationRule
  • ServiceEntry

每次创建容器的时候都会给我们增加sidecar,那么这个过程称之为istio注入。

 

 

 istio注入


Istio 解决的问题及注入_第4张图片

Istio 解决的问题及注入_第5张图片

不管你是哪个命名空间的,或者是非kubernetes集群里主机,只要你被istio注入了,那么我们就相当于在一个平面里了。
所有的策略生效,前提是你必须得要在网格里,如果没有在网格里的话,策略是不生效的。
Istio 解决的问题及注入_第6张图片 

 

 

你可能感兴趣的:(Service,Mesh,Istio,istio)