上一節我們安裝和配置了 flannel,本節在 Docker 中使用 flannel。
配置 Docker 連接 flannel
編輯 host1 的 Docker 配置文件 /etc/systemd/system/docker.service,設置?--bip
?和?--mtu
。
這兩個參數的值必須與 /run/flannel/subnet.env 中?FLANNEL_SUBNET
?和FLANNEL_MTU
?一致。
重啟 Docker daemon。
systemctl daemon-reload
systemctl restart docker.service
?
Docker 會將 10.2.40.1 配置到 Linux bridge docker0 上,并添加 10.2.40.0/24 的路由。
host2 配置類似:
--bip=10.2.17.1/24
--mtu=1450
?
當前環境網絡拓撲如圖所示:
可見:flannel 沒有創建新的 docker 網絡,而是直接使用默認的 bridge 網絡。同一主機的容器通過 docker0 連接,跨主機流量通過 flannel.1 轉發。
將容器連接到 flannel 網絡
在 host1 中運行容器 bbox1:
docker run -itd --name bbox1 busybox
在 host2 中運行容器 bbox2:
docker run -itd --name bbox2 busybox
bbox1 和 bbox2 的 IP 分別為 10.2.40.2 和 10.2.17.2。
下一節我們討論 flannel 網絡的連通和隔離特性。
轉載于:https://blog.51cto.com/cloudman/1959810