K8S进阶实践 之 集群网络实现原理(Flannel)

一、作用

实现集群内所有节点里的POD容器互相打通,Flannel有两种工作模式,分别为vxlan(默认为vxlan模式)与host-gw模式,无论我们采用那一种模式,在安装完成flannel时,会自动把所需要网络路由信息自动创建完成。两者区别在于

  • vxlan模式适用于三层可达的网络环境(即多节点主机分别属于不同的网段),对集群的网络要求很宽松,但是同时由于会通过VTEP设备进行额外封包和解包,因此给性能带来了额外的开销。
  • host-gw模式目的其实就是将本机的cni0网桥的流量送到目的主机的cni0网桥。实际上有很多集群是部署在同一二层网络环境下的(即多节点主机属于同一个网段),可以直接利用二层的主机当作流量转发的网关。这样的话,可以不用进行封包解包,直接通过路由表去转发流量。

查看当前节点采用的模式
K8S进阶实践 之  集群网络实现原理(Flannel)

二、vxlan模式

1、数据流
K8S进阶实践 之  集群网络实现原理(Flannel)

2、数据流描述
K8S进阶实践 之  集群网络实现原理(Flannel)
K8S进阶实践 之  集群网络实现原理(Flannel)
K8S进阶实践 之  集群网络实现原理(Flannel)

三、host-gw模式

1、数据流
K8S进阶实践 之  集群网络实现原理(Flannel)

四、将现在的vxlan模式转换成host-gw模式

K8S进阶实践 之  集群网络实现原理(Flannel)

K8S进阶实践 之  集群网络实现原理(Flannel)

K8S进阶实践 之  集群网络实现原理(Flannel)

K8S进阶实践 之  集群网络实现原理(Flannel)

五、vxlan模式与host-gw模式的路由表信息区别

K8S进阶实践 之  集群网络实现原理(Flannel)

猜你喜欢

转载自blog.51cto.com/12965094/2647319