Docker OpenvSwitch 應用部署
阿新 • • 發佈:2018-11-03
通信 tin mask play a20 17.1 1.7 lag weave
Docker OpenvSwitch 應用部署
安裝部署OVS並建立GRE隧道
- 節點1:192.168.1.198 容器網段:172.17.1.0/24
- 節點2:192.168.1.199 容器網段:172.17.2.0/24
1、節點1節點2操作:修改docker 默認IP地址網段,主配置文件內修改配置參數。
vim /lib/systemd/system/docker.service
# bip參數設置IP地址 指定的是網關。 ExecStart=/usr/bin/dockerd --bip=172.17.2.1/24
# 重啟服務 systemctl daemon-reload systemctl restart docker
2、節點1節點2操作:安裝OVS
yum -y install openvswitch bridge-utils
3、節點1節點2操作:啟動openvswitch服務
# 啟動服務 systemctl start openvswitch
4、節點1節點2操作:創建網橋並激活
# 1、創建網橋 ovs-vsctl add-br br0 # 2、激活網橋 ip link set dev br0 up
[root@weave02 ~]# ifconfig br0: flags=67<UP,BROADCAST,RUNNING> mtu 1500 inet6 fe80::f488:54ff:fe9e:5d98 prefixlen查看網橋64 scopeid 0x20<link> ether 5e:87:fd:fe:3a:41 txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 11 bytes 866 (866.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
5、節點1節點2操作:將gre0虛擬接口加入網橋br0,並設置接口類型和對端IP地址(遠程IP指定對端)
註:如果多臺主機 需要配置多條策略。由於是點對點通信所以需要創建新的gre端口。
ovs-vsctl add-port br0 gre0 -- set Interface gre0 type=gre options:remote_ip=192.168.1.77
# 命令解析 ovs-vsctl add port 已創建網橋名稱 端口名稱 -- set Interface 端口名稱 type=隧道類型 options:remote_ip=指定點對點的對端節點IP
6、節點1節點2操作:添加docker0網橋到OVS網橋br0
brctl addif docker0 br0
命令:ovs-vsctl show 3a4acf8f-1db3-4069-8fd8-8dd8e883e914 # 網橋名稱 Bridge "br0" # 端口名稱 Port "br0" # 類型 Interface "br0" type: internal Port "gre0" Interface "gre0" # 隧道類型 type: gre # 對端點對點遠程地址 options: {remote_ip="192.168.1.77"} # 版本號 ovs_version: "2.0.0"查看網橋信息
7、節點1節點2操作:添加靜態路由
ip route add 172.17.0.0/16 dev docker0
[root@weave02 ~]# route Destination Gateway Genmask Flags Metric Ref Use Iface 172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0查看路由表
8、節點1節點2操作:驗證互通:相互ping測試
docker run -it busybox
Docker OpenvSwitch 應用部署