Docker OpenvSwitch 應用部署

Docker OpenvSwitch 應用部署docker

安裝部署OVS並創建GRE隧道vim

  • 節點1:192.168.1.198 容器網段:172.17.1.0/24
  • 節點2:192.168.1.199 容器網段:172.17.2.0/24

一、節點1節點2操做:修改docker 默認IP地址網段,主配置文件內修改配置參數。ide

vim /lib/systemd/system/docker.service測試

# bip參數設置IP地址 指定的是網關。
ExecStart=/usr/bin/dockerd --bip=172.17.2.1/24
# 重啓服務
systemctl daemon-reload
systemctl restart docker

二、節點1節點2操做:安裝OVSspa

yum -y install openvswitch bridge-utils

三、節點1節點2操做:啓動openvswitch服務rest

# 啓動服務
systemctl start openvswitch

四、節點1節點2操做:建立網橋並激活code

# 一、建立網橋
ovs-vsctl add-br br0

# 二、激活網橋
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
查看網橋

五、節點1節點2操做:將gre0虛擬接口加入網橋br0,並設置接口類型和對端IP地址(遠程IP指定對端)blog

注:若是多臺主機 須要配置多條策略。因爲是點對點通訊因此須要建立新的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

六、節點1節點2操做:添加docker0網橋到OVS網橋br0ip

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"
查看網橋信息

七、節點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
查看路由表

八、節點1節點2操做:驗證互通:相互ping測試

docker run -it busybox
相關文章
相關標籤/搜索