问题记录:K8s中安装calico,calico反复重启,原因:版本未匹配

问题描述

K8s版本1.23.6

calico-node-反复重启,READY状态一直为0,STATUS为CrashLoopBackOff,

查看节点日志

#calico-node-xxx 对应pod名称
kubectl logs calico-node-xxxx -n kube-system 

没有错误,只有info信息

但是一直反复重启,导致coredns一直处于未准备好状态

最后试出来的结论

calico与k8s的版本未匹配

解决:

删除calico,重新安装对应k8s版本

先删除calico pod

#删除calico pod 
kubectl delete -f calico.yaml

删掉calico.yaml文件

rm -f calico.yaml

重新下载

k8s版本1.23.6 calico版本3.23

curl https://docs.projectcalico.org/v3.23/manifests/calico.yaml  -O

重新安装

修改 calico.yaml 文件中的 CALICO_IPV4POOL_CIDR 配置,修改为与初始化(master中kubelet init的pod-network-cidr)的 cidr 相同


删除镜像 docker.io/ 前缀,避免下载过慢导致失败


sed -i 's#docker.io/##g' calico.yaml


#构建calico应用

kubectl apply -f calico.yaml

之后再查看,发现运行正常

问题记录:K8s中安装calico,calico反复重启,原因:版本未匹配_第1张图片

 查看calico与k8s版本匹配

官网查看匹配链接

问题记录:K8s中安装calico,calico反复重启,原因:版本未匹配_第2张图片

 

你可能感兴趣的:(kubernetes,kubernetes,docker,linux,calico)