在kubeadm之前,我使用以下步骤将法兰绒ip&mtu值带给docker。
步骤1:停止Docker和Flannel
步骤2:启动Flannel并检查其状态;
步骤3:像这样更新Docker启动脚本
source /run/flannel/subnet.env
--bip=${FLANNEL_SUBNET} --mtu=${FLANNEL_MTU}
步骤4:启动Docker并检查其状态。
kubeadm
如何完成此步骤?我看到Docker守护进程首先启动,然后Flannel作为容器尝试低估集成过程。谢谢
SR
最佳答案
这是我在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
您将看到创建的法兰绒 pods ,但它陷入“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
为Docker设置这些环境变量
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"
注意:对于docker,请务必将ip-masq设置为false,否则kube-dns将无法正常工作。
重新加载服务配置,更改将生效。
sudo systemctl daemon-reload`
瞧,此后一切正常。
关于docker - kubeadm docker法兰绒集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44358883/