2017-06-04 38 views
2

在kubeadm之前,我使用這些步驟爲docker帶上絨布ip & mtu值。kubeadm docker flannel integration

第1步:停止Docker和Flannel
第2步:啓動Flannel並檢查其狀態;
第3步:更新泊塢啓動腳本這樣

source /run/flannel/subnet.env 
--bip=${FLANNEL_SUBNET} --mtu=${FLANNEL_MTU} 

第4步:啓動泊塢窗並檢查其狀態。

如何使用kubeadm完成此步驟?我看到Docker deamon進程首先啓動,然後Flannel作爲容器嘗試低估整合過程。

感謝 SR

回答

2

下面是我設置的絨布在Kubernetes v1.7.3的步驟。

安裝絨布

kubectl create -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel-rbac.yml 
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml 

您將看到絨布莢創造,但它屬於一種「CrashLoopBackOff」狀態,並重新啓動,直到永遠。

在Kubeadm安裝絨布後,子網信息將被記錄在文件/run/flannel/subnet.env中。

cat /run/flannel/subnet.env 
FLANNEL_NETWORK=10.244.0.0/16 
FLANNEL_SUBNET=10.244.0.1/24 
FLANNEL_MTU=1450 
FLANNEL_IPMASQ=true 

設置爲泊塢窗

mkdir -p /usr/lib/systemd/system/docker.service.d 
sudo cat <<EOF> /usr/lib/systemd/system/docker.service.d/flannel.conf 
[Service] 
EnvironmentFile=-/run/flannel/docker 
EOF 

sudo cat <<EOF> /run/flannel/docker 
DOCKER_OPT_BIP="--bip=10.244.0.1/24" 
DOCKER_OPT_IPMASQ="--ip-masq=false" 
DOCKER_OPT_MTU="--mtu=1450" 
DOCKER_NETWORK_OPTIONS=" --bip=10.244.0.1/24 --ip-masq=false --mtu=1450" 
這些環境變量

注:不要設置IP-僞裝爲假的碼頭工人,否則KUBE-DNS不能正常工作。

重新加載服務配置,則更改將生效。

sudo systemctl daemon-reload` 

瞧,一切工作之後。