部署k8s ssl集群實踐12:work節點配置docker
阿新 • • 發佈:2018-09-02
cti ive con 14. ins type mtu sys oba 部署docker
docker 從 1.13 版本開始,可能將 iptables FORWARD chain的默認策略設置為
DROP,從而導致 ping 其它 Node 上的 Pod IP 失敗,遇到這種情況時,需要手動
設置策略為 ACCEPT :
iptables -P FORWARD ACCEPT
並且把以下命令寫入 /etc/rc.local 文件中,防止節點重啟iptables
FORWARD chain的默認策略又還原為DROP
/sbin/iptables -P FORWARD ACCEPT
舊的三節點docker已經安裝好
只需要安裝新節點的docker
但是所有節點都需要修改docker配置文件
安裝參考前面的基礎篇裏的安裝方法
所有work節點都需要修改以下參數
需要修改dokcer的參數
[root@nfs-store ~]# systemctl status docker ● docker.service - Docker Application Container Engine ?? Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) ?? Active: active (running) since 三 2018-08-29 14:47:45 CST; 1s ago ? ?? Docs: https://docs.docker.com Main PID: 5934 (dockerd) ? ? Tasks: 16 ?? Memory: 14.5M ?? CGroup: /system.slice/docker.service ? ? ? ? ?? ├─5934 /usr/bin/dockerd ? ? ? ? ?? └─5940 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start... 8月 29 14:47:44 nfs-store dockerd[5934]: time="2018-08-29T14:47:44.989167050+08:00" level=info msg="[graphdriver] using ...erlay 8月 29 14:47:44 nfs-store dockerd[5934]: time="2018-08-29T14:47:44.992032549+08:00" level=info msg="Graph migration to c...conds" 8月 29 14:47:44 nfs-store dockerd[5934]: time="2018-08-29T14:47:44.993033475+08:00" level=info msg="Loading containers: start." 8月 29 14:47:45 nfs-store dockerd[5934]: time="2018-08-29T14:47:45.000879000+08:00" level=info msg="Firewalld running: false" 8月 29 14:47:45 nfs-store dockerd[5934]: time="2018-08-29T14:47:45.102773462+08:00" level=info msg="Default bridge (dock...dress" 8月 29 14:47:45 nfs-store dockerd[5934]: time="2018-08-29T14:47:45.145154328+08:00" level=info msg="Loading containers: done." 8月 29 14:47:45 nfs-store dockerd[5934]: time="2018-08-29T14:47:45.157327519+08:00" level=info msg="Daemon has completed...ation" 8月 29 14:47:45 nfs-store dockerd[5934]: time="2018-08-29T14:47:45.157365151+08:00" level=info msg="Docker daemon" commi...3.1-ce 8月 29 14:47:45 nfs-store dockerd[5934]: time="2018-08-29T14:47:45.165294766+08:00" level=info msg="API listen on /var/r....sock" 8月 29 14:47:45 nfs-store systemd[1]: Started Docker Application Container Engine. Hint: Some lines were ellipsized, use -l to show in full. [root@nfs-store ~]#
修改這個文件:
/usr/lib/systemd/system/docker.service
[root@nfs-store ~]# cat /usr/lib/systemd/system/docker.service |grep -v ^# [Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network.target firewalld.service [Service] Type=notify EnvironmentFile=/run/flannel/docker ExecStart=/usr/bin/dockerd --log-level=error $DOCKER_NETWORK_OPTIONS ExecReload=/bin/kill -s HUP $MAINPID LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity TimeoutStartSec=0 Delegate=yes KillMode=process [Install] WantedBy=multi-user.target [root@nfs-store ~]#
$DOCKER_NETWORK_OPTIONS;
dockerd 運行時會調用其它 docker 命令,如 docker-proxy,所以需要將 docker 命
令所在的目錄加到 PATH 環境變量中;
flanneld 啟動時將網絡配置寫入 /run/flannel/docker 文件中,dockerd 啟動前
讀取該文件中的環境變量 DOCKER_NETWORK_OPTIONS ,然後設置 docker0 網橋網
段;
如果指定了多個 EnvironmentFile 選項,則必須將 /run/flannel/docker 放
在最後(確保 docker0 使用 flanneld 生成的 bip 參數);
docker 需要以 root 用於運行;
DROP,從而導致 ping 其它 Node 上的 Pod IP 失敗,遇到這種情況時,需要手動
設置策略為 ACCEPT :
iptables -P FORWARD ACCEPT
並且把以下命令寫入 /etc/rc.local 文件中,防止節點重啟iptables
FORWARD chain的默認策略又還原為DROP
/sbin/iptables -P FORWARD ACCEPT
重啟docker,可以看到所有work節點同一個節點的flannel和docker是一個網段了
3: flannel.1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue state UNKNOWN
? ? link/ether 7a:a5:c6:8d:1e:55 brd ff:ff:ff:ff:ff:ff
? ? inet 172.30.14.0/32 scope global flannel.1
? ? ?? valid_lft forever preferred_lft forever
4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN
? ? link/ether 02:42:18:17:e4:f7 brd ff:ff:ff:ff:ff:ff
? ? inet 172.30.14.1/24 scope global docker0
? ? ?? valid_lft forever preferred_lft forever
部署k8s ssl集群實踐12:work節點配置docker