05 所有node节点配置flannel网络插件
flannel网络插件主要是为了解决docker宿主机在不同节点之间的通讯
安装命令
# 所有节点都需要安装一下
yum install flannel -y
修改flannel的配置文件
# /etc/sysconfig/flanneld
# 4行 (修改成etcd的地址)
FLANNEL_ETCD_ENDPOINTS="http://10.0.0.11:2379"
# 8行 (etcd配置的一个key,是flannel查询etcd用的,这里使用默认的)
FLANNEL_ETCD_PREFIX="/atomic.io/network"
在etcd设置这个key
etcdctl set /atomic.io/network/config '{"Network": "172.16.0.0/16"}'
启动flannel
systemctl start flanneld.service
设置开机自启
systemctl enable flanneld.service
重启docker,重启后docker的网段会变成和flannel设置的值一样
systemctl restart docker
06 测试跨宿主机容器之间的互通性
1. 所有节点执行下面命令
docker run -it busybox
2. 所有节点ipconfig
查看自己的IP
3. 节点之间互ping
容器间ping不同解决办法
1) 临时方法
iptables -P FORWARD ACCEPT
2) 永久方法
修改docker的配置文件
# /usr/lib/systemd/system/docker.service
# 添加一行(iptables 最好用全路径)
ExecStartPost=/usr/sbin/iptables -P FORWARD ACCEPT
生效需要执行下面命令
systemctl daemon-reload
参考:
https://www.bilibili.com/video/BV1g54y1m7Ev?p=7
https://www.bilibili.com/video/BV1g54y1m7Ev?p=8