实现容器跨主机通信
Docker 跨主机 Overlay 网络动手实验 · 风与云原生
前几天在两台虚拟机上面实现了容器的跨主机通信,今天进行梳理一下整个流程。
原理
目前跨主机容器的通信大部分使用的是 VXLAN 协议,即在三层网络之上,构建一个虚拟的二层网络。要构建这样一个虚拟网络,即在两个设备之间的传输双方约定好的信息格式,双方通过解析特定信息格式知道消息是发送给谁的,从而达到双方通信的目的,VXLAN 协议内部使用 UDP 来进行消息的传输。
实验中,整个网络的架构是这样的:

流程
当在172.18.10.2 的容器上面 ping 172.18.20.2 时,因为增加了如下的路由
sudo ip route add 172.18.20.0/24 dev vxlan100
消息会被路由到 vxlan100 上面, vxlan100 的信息如下,他知道用的是本地的 enp0s3 网卡和对端的通信端口 4789。
$

最低0.47元/天 解锁文章
1538

被折叠的 条评论
为什么被折叠?



