问题描述:
在使用
kubeadm
工具初始化k8s后,并且安装了 flanneld 网络组建后,/var/log/messages 依旧报错, Unable to update cni config: no valid networks found in /etc/cni/net.d
问题原因是 :
似乎在v1.16中,kubelet将验证cni配置文件,如果不支持cniVersion,将返回错误: https://github.com/kubernetes/kubernetes/pull/80482
当前,kube-flannel.yaml的configmap中的cni-conf.json数据缺少cniVersion字段,因此plugin flannel does not support config version ""返回类似错误。似乎我们需要将支持的cniVersion添加到kube-flannel.yaml。
解决:
在cbr0
这一行上面新增一行:
"cniVersion":"0.3.1",
并且 需要手动把 coredns 的pod 都删除,要重新生成,即可解决。