k8s网络插件
1、版本选择
cacli版本对应关系查找。
参考:https://blog.csdn.net/LRXmrlirixing/article/details/126648454
https://docs.tigera.io/archive/v3.10/getting-started/kubernetes/requirements
本次安装的的k8s版本是v1.14.3,所以可以使用calico v3.10版本。
同样的页面:Installing Calico for policy and networking (recommended),我们看下安装方法。
[root@k8s-master1 kubeadms]# curl https://docs.projectcalico.org/v3.10/manifests/calico.yaml -O
[root@k8s-master1 kubeadms]# vi calico.yaml
# Cluster type to identify the deployment type
- name: CLUSTER_TYPE
value: "k8s,bgp"
- name: IP_AUTODETECTION_METHOD
value: "interface=ens33"
# Auto-detect the BGP IP address.
[root@k8s-master1 kubeadms]# kubectl create -f calico.yaml
[root@k8s-master1 kubeadms]# kubectl get pods -A -owide |grep calico-node
NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
kube-system calico-node-42d7g 0/1 Init:ImagePullBackOff 0 75s 192.168.1.134 k8s-node1 <none> <none>
kube-system calico-node-8mxbl 0/1 Pending 0 75s <none> k8s-master3 <none> <none>
kube-system calico-node-g8ckq 0/1 Init:ImagePullBackOff 0 75s 192.168.1.135 k8s-node2 <none> <none>
kube-system calico-node-hn8ks 0/1 Pending 0 75s <none> k8s-node3 <none> <none>
kube-system calico-node-r4kzp 0/1 Init:ImagePullBackOff 0 75s 192.168.1.131 k8s-master1 <none> <none>
kube-system calico-node-vjd4g 0/1 Init:ImagePullBackOff 0 75s 192.168.1.132 k8s-master2 <none> <none>
如上,很明显就是下载images失败,读取calico.yaml文件,看下需要下载那些镜像。
2、下载镜像
calico镜像下载地址:https://github.com/projectcalico/calico/releases
下载3.10.4版本:https://docs.tigera.io/archive/v3.10/release-notes/,, v3.10.4 下面的Release archive 下载这个链接就好。本地下载很慢,最好在外网环境下载。
如下截图下载,
下载过程超级慢,整个目录结构如下,比较全面。这里不仅有images镜像包,也有yaml配置文件和bin二进制信息。
[root@k8s-node2 ~]# cd /root/release-v3.10.4/images [root@k8s-node2 images]# ls calico-cni.tar calico-dikastes.tar calico-flannel-migration-controller.tar calico-kube-controllers.tar calico-node.tar calico-pod2daemon-flexvol.tar calico-typha.tar [root@k8s-node2 images]# docker load -i calico-cni.tar [root@k8s-node2 images]# docker load -i calico-node.tar [root@k8s-node2 images]# docker load -i calico-pod2daemon-flexvol.tar [root@k8s-node2 images]# docker images |grep calico calico/node v3.10.4 870da06857d7 4 years ago 192MB calico/cni v3.10.4 62ce410b90df 4 years ago 163MB calico/kube-controllers v3.10.4 0bffddb67f96 4 years ago 50.6MB calico/pod2daemon-flexvol v3.10.4 63fbf227cf10 4 years ago 9.78MB
查看,导入了image之后的节点,pod都已经正常启动了。
依次导入其他节点,操作网络部署完成。
也可以尝试一下第二种方法
参考:K8S Calico网络插件 - RidingWind - 博客园尝试手动从quay.io下载镜像。quay.io是一个公共镜像仓库。(速度比较快,建议使用这一种方法)
[root@k8s-node1 ~]#docker pull quay.io/calico/cni:v3.10.4 [root@k8s-node1 ~]#docker pull quay.io/calico/node:v3.10.4 [root@k8s-node1 ~]#docker pull quay.io/calico/pod2daemon-flexvol:v3.10.4 [root@k8s-node1 ~]#docker tag quay.io/calico/node:v3.10.4 calico/node:v3.10.4 [root@k8s-node1 ~]#docker tag quay.io/calico/pod2daemon-flexvol:v3.10.4 calico/pod2daemon-flexvol:v3.10.4 [root@k8s-node1 ~]#docker tag quay.io/calico/cni:v3.10.4 calico/cni:v3.10.4 [root@k8s-node1 ~]#docker images |grep calico
以上两种方案都是安装calico网络差距的方法。