标签:ovs
此文主要以《实战Docker到Kubernetes技术系列视频教程》为基础,记录ovs+docker网络的配置实验过程。本人对网络不甚了解。只是纯粹按照课程要求,配置成功。具体的原理请自行深入学习。
这里有三个不同网络,主机网络192.168.18网段,两台host上的docker0的网络也是不同子网。
需要实现两台不同主机的docker0可以实现通信。即在18.131机器上,可以ping通 172.17.43.1;18.128机器可以ping通172.17.42.1。
[root@host1 ~]# cat /etc/docker/daemon.json
{
"bip": "172.17.43.1/24"
}
在机器18.131上运行:
ovs-vsctl add-br br0
ovs-vsctl add-port br0 gre1 -- set interface gre1 type=gre option:remote_ip=192.168.18.128
注意:上面的remote_ip需设置为对端的ip。
执行完毕后,使用ovs-vsctl show可看到如下输出:
[root@host1 ~]# ovs-vsctl show
52566796-f849-4b18-a546-0c0b8853432a
Bridge "br0"
Port "br0"
Interface "br0"
type: internal
Port "gre1"
Interface "gre1"
type: gre
options: {remote_ip="192.168.18.131"}
ovs_version: "2.5.0"
之后,执行brctl相关命令,将br0添加到docker0
brctl addif docker0 br0
ip link set dev br0 up
ip link set dev docker0 up
iptables -t nat -F; iptables -F
18.128上执行
ip route add 172.17.0.0/16 dev docker0
route add -net 172.17.0.0/16 gw 192.168.18.131
添加路由完成后,ip route的截图如下
标签:ovs
原文地址:http://blog.51cto.com/duf0913/2089193