今天按照網上和書上的要求,將目前的kubernetes網絡換成flannel。其實配置起來仍是很簡單的,可是一旦出現了問題,將很難解決。node
配置方法我這邊不給出了。由於網上這樣的教程一大把,在說下去也無心義。可是錯誤仍是碰見了幾個。docker
個人環境:centos7(master+2個node )+ etcd3.2.7(搭建在master上)+ flannel 0.9(每一個node上)centos
1.問題:配置自flanneld啓動腳本,總出現: Couldn't fetch network config: client: etcd cluster is unavai...scheme網絡
緣由:配置文件中配置了變量,可是再啓動文件中指定變量名錯誤。如FLANNEL_ETCD 我寫成了FLANNEL_ETCD_PREFIX.fetch
很低級的錯誤請注意centos7
2.啓動了FLANNEL和docker,但docker0的IP仍是原來的樣子,仍是沒法與同一Node的flannel0在同一網段。
緣由:教程
grep "docker_env" `which mk-docker-opts.sh` 找到flannel爲docker建立的文件位置。eg:個人文件在:/run/docker_opts.envkubernetes
而後cat /usr/lib/systemd/system/docker.service中發現沒有source這個這個文件。(若是docker啓動文件是本身寫的,須要在啓動文件中加入這些變量)ast
因此,我就加上了這麼幾行(根據具體調整下列的參數位置):變量
EnvironmentFile=-/run/flannel/docker ###(mk-docker-opts.sh -k DOCKER_OPTS -d /run/flannel/docker)
$DOCKER_OPT_BIP\
$OCKER_OPT_IPMASQ\
$DOCKER_OPT_MTU
最後重啓docker 後,發現問題解決了。