Kubernetes网络一年发展动态与未来趋势

来源:名资汇网 2018-09-07 19:09:17
分享到:

图2

上图是一个bridge网络的示意图。Node1上Pod的网段是10.1.1.0/24,接的Linux网桥是10.1.1.1,Node2上Pod的网段是10.1.2.0/24,接的Linux网桥是10.1.2.1,接在同一个网桥上的Pod通过局域网广播通信。我们发现,Node1上的路由表的第二条是:

10.1.1.0/24 dev cni0

意思是所有目的地址是本机上Pod的网络包,都发到cni0这个Linux网桥去,进而广播给Pod。

注意看第三条路由规则:

10.1.2.0/24 via 192.168.1.101

10.1.2.0/24是Node2上Pod的网段,192.168.1.101又恰好是Node2的IP。意思是,目的地址是10.1.2.0/24的网络包,发到Node2上。

这时候我们观察Node2上面的第二条路由信息:

10.1.2.0/24 dev cni0

就会知道这个包会被接着发给Node2上的Linux网桥cni0,然后再广播给目标Pod。回程报文同理走一条逆向的路径。因此,我们可以得出一个小小的结论:bridge网络本身不解决容器的跨机通信问题,需要显式地书写主机路由表,映射目标容器网段和主机IP的关系,集群内如果有N个主机,需要N-1条路由表项。

至于overlay网络,它是构建在物理网络之上的一个虚拟网络,其中VXLAN是当前最主流的overlay标准。VXLAN就是用UDP包头封装二层帧,即所谓的MAC in UDP。

Kubernetes网络一年发展动态与未来趋势

图3

标签