前面已经提到,在初始化 k8s-master 时并没有网络相关配置,所以无法跟 node 节点通信,因此状态都是“NotReady”。但是通过 kubeadm join 加入的 node 节点已经在k8s-master 上可以看到。
那么,这个时候我们该怎么办呢????????
安装flannel
Master 节点NotReady 的原因就是因为没有使用任何的网络插件,此时Node 和Master的连接还不正常。目前最流行的Kubernetes 网络插件有Flannel、Calico、Canal、Weave 这里选择使用flannel。
所有主机:
master上传kube-flannel.yml,所有主机上传flannel_v0.12.0-amd64.tar
[root@k8s-master ~]# docker load < flannel_v0.12.0-amd64.tar
安装插件:cni-plugins-linux-amd64-v0.8.6.tgz
可以从官网上下载,kubernets.io找到这个插件,解压,安装即可!
上传插件:
[root@huyang1 ~]# tar xf cni-plugins-linux-amd64-v0.8.6.tgz
[root@huyang1 ~]# cp flannel /opt/cni/bin/
master主机:
[root@k8s-master ~]# kubectl apply -f kube-flannel.yml(官方文档,官网下载)
[root@k8s-master ~]# kubectl get nodes
[root@k8s-master ~]# kubectl get pods -n kube-system
过程有延迟,需注意!
已经是ready状态