- 首先确定 k8s的版本,我的为1.20.9
kubectl get nodes
NAME STATUS ROLES AGE VERSION
master01 Ready control-plane,master 6h24m v1.20.9
- 然后去官网确定 自己需要哪个版本,可以参考这个文章,
- https://blog.csdn.net/LRXmrlirixing/article/details/126648454
- 比如我知道了,像我的k8s对应的calico 3.20版本以上。
- 因为 服务器没有翻墙,是无论如何都下载不下来镜像的。(除非特别低版本的 calico)
- 所以需要去下载 离线的docker文件。
- 在csnd都能下载,但是不能用迅雷,需要用 浏览器自带的 下载功能。
- 谷歌浏览器,删除或禁用迅雷插件,就是自带的下载了。
- 我下载了calico.tgz docker 镜像 版本为 calico 3.21.2
- 导入自己的docker 即可。里面有了 calico.yaml 使用 k8s运行即可。
- calico 离线docker 镜像,可以网上下载,或者找我要即可,我也上传csdn一份。
- 我上传的地址如下:https://download.csdn.net/download/qq120631157/87382343
- 这个问题困扰我好多天,如果没有积分,请私聊我,免费发。
docker load -i xxx.tar
kubectl apply -f calico.yaml
image: docker.io/calico/cni:v3.21.2
image: docker.io/calico/pod2daemon-flexvol:v3.21.2
image: docker.io/calico/node:v3.21.2
image: docker.io/calico/kube-controllers:v3.21.2
- 最终看到成功了,哭了
kubectl get pod -A
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system calico-kube-controllers-558995777d-grpms 1/1 Running 1 29s
kube-system calico-node-ngkcd 1/1 Running 0 29s
kube-system coredns-5897cd56c4-k4g67 1/1 Running 0 6h14m
kube-system coredns-5897cd56c4-q2659 1/1 Running 0 6h14m
kube-system etcd-master01 1/1 Running 4 6h14m
kube-system kube-apiserver-master01 1/1 Running 4 6h14m
kube-system kube-controller-manager-master01 1/1 Running 4 6h14m
kube-system kube-proxy-vdjhn 1/1 Running 4 6h14m
kube-system kube-scheduler-master01 1/1 Running 4 6h14m