etcdctl –endpoints http://192.168.100.20:2379 set /coreos.com/network/config \\\'{NetWork:172.17.0.0/16,SubnetMin:172.17.0.0,SubnetMax:172.17.20.0,Backend:{Type:vxlan}}\\\’
2.2 minion節(jié)點(diǎn)安裝flannel
下載flannel軟件包
wget https://github.com/coreos/flannel/releases/download/v0.9.0/flannel-v0.9.0-linux-amd64.tar.gz
解壓并將解壓出的flanneld,mk-docker-opts.sh復(fù)制到/usr/local/bin下
cp flanneld,mk-docker-opts.sh /usr/local/bin
2.3 創(chuàng)建flannel的systemd服務(wù)
cat /lib/systemd/system/flanneld.service
[Unit]
Description=Flanneld
Documentation=https://github.com/coreos/flannel
After=network.target
Before=docker.service
[Service]
ExecStart=/usr/local/bin/flanneld –etcd-endpoints=http://192.168.100.20:2379 –iface=enp0s3 –ip-masq=true
Restart=on-failure
Type=notify
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target
啟動(dòng)flannel服務(wù)
systemctl start flanneld.service
flannel服務(wù)啟動(dòng)時(shí)主要做了以下幾步的工作:
– 從etcd中獲取network的配置信息。
– 劃分subnet,并在etcd中進(jìn)行注冊(cè)。
– 將子網(wǎng)信息記錄到/run/flannel/subnet.env中
cat /run/flannel/subnet.env
FLANNEL_NETWORK=172.17.0.0/16
FLANNEL_SUBNET=172.17.2.1/24
FLANNEL_MTU=1450
FLANNEL_IPMASQ=true
3 配置docker啟動(dòng)參數(shù)
使用flannel提供的腳本將subnet.env轉(zhuǎn)寫成Docker啟動(dòng)參數(shù),創(chuàng)建好的啟動(dòng)參數(shù)位于/run/docker_opts.env文件中
root@wangpei-VM:~# sh /usr/local/bin/mk-docker-opts.sh -d /run/docker_opts.env -c
root@wangpei-VM:~# cat /run/docker_opts.env
DOCKER_OPTS= –bip=172.17.2.1/24 –ip-masq=false –mtu=1450
將這條語(yǔ)句寫入 /etc/default/docker,作為docker啟動(dòng)的環(huán)境變量
cat /etc/default/docker |grep DOCKER_OPTS
DOCKER_OPTS= –bip=172.17.2.1/24 –ip-masq=false –mtu=1450
docker中的啟動(dòng)參數(shù)
root@192:~# awk \\\’!/#/{if($0!=)print}\\\’ /lib/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network.target docker.socket firewalld.service flanneld.service
Requires=docker.socket
[Service]
Type=notify
EnvironmentFile=-/etc/default/docker
ExecStartPre=/usr/local/bin/mk-docker-opts.sh -d /run/docker_opts.env -c
EnvironmentFile=-/run/docker_opts.env
ExecStart=/usr/bin/dockerd -H fd:// $DOCKER_OPTS
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=1048576
LimitNPROC=infinity
LimitCORE=infinity
TasksMax=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
[Install]
WantedBy=multi-user.target
加載配置,啟動(dòng)docker
root@wangpei-VM:~# systemctl daemon-reload
root@wangpei-VM:~# systemctl restart docker
更多關(guān)于云服務(wù)器,域名注冊(cè),虛擬主機(jī)的問(wèn)題,請(qǐng)?jiān)L問(wèn)西部數(shù)碼官網(wǎng):www.ps-sw.cn