node yum升级后kubelet.service启动失败

发布时间 2023-08-14 19:09:16作者: 小油2018
systemctl status kubelet
启动失败
查看日志
journalctl -u kubelet --no-pager
Aug 14 14:01:33 K8S-2 systemd[1]: kubelet.service: main process exited, code=exited, status=1/FAILURE Aug 14 14:01:33 K8S-2 systemd[1]: Unit kubelet.service entered failed state. Aug 14 14:01:33 K8S-2 systemd[1]: kubelet.service failed. Aug 14 14:01:43 K8S-2 systemd[1]: kubelet.service holdoff time over, scheduling restart. Aug 14 14:01:43 K8S-2 systemd[1]: Stopped kubelet: The Kubernetes Node Agent. Aug 14 14:01:43 K8S-2 systemd[1]: Started kubelet: The Kubernetes Node Agent. Aug 14 14:01:43 K8S-2 kubelet[2777]: Flag --cgroup-driver has been deprecated, This parameter should be set via the config file specified by the Kubelet's --config flag. See https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ for more information. Aug 14 14:01:43 K8S-2 kubelet[2777]: E0814 14:01:43.915300 2777 run.go:74] "command failed" err="failed to parse kubelet flag: unknown flag: --network-plugin"

journalctl 的 -u 参数可以指定服务进行过滤,这样可以屏蔽掉其他无关日志。 --no-pager 参数可以一次性输出日志,当然如果你只是在线查看,则可以不用这个参数,只是输出日志受到屏幕宽度限制,需要通过方向键滚动。

问题分析:

根据日志可以初步判断,应该是cni网络模块除了问题,kebelet重启后,启动网络插件的命令无法执行
执行yum 升级后kube相关的插件版本和master不一致问题导致的,即master节点的kubeadm、kubelet、kubernetes-cni、kubectl和node节点的版本不一致,尝试将node节点的kubeadm、kubelet、kubernetes-cni、kubectl版本降级至与master节点一致
rpm -qa | grep kube

 

 

解决:

讲node节点的kube相关插件降级

yum downgrade kubernetes-cni-0.8.6-0.x86_64  kubeadm-1.18.6-0.x86_64 kubectl-1.18.6-0.x86_64 kubelet-1.18.6-0.x86_64 -y
systemctl daemon-reload
systemctl restart kubelet.service