LINUX 云原生 K8S KUBELET 服务无法启动报 CODE=EXITED, STATUS=1/FAILURE错误 多种原因及解决

出现这种问题的原因有多种,如果status=255且反复重启动则是正常的,配置并创建pod后就好了。如果是status=1/FAILURE则可能是以下几种问题

具体如下

1.证书过期导致kubelet无法正常起动。

可以参考:k8s kubelet 服务无法启动报 code=exited, status=1/FAILURE错误_世宝宝的博客-CSDN博客_code=exited status=1/failure

2.驱动问题,即docker的驱动与kubelet 驱动不一致

(1)查看docker驱动

root@rancher-master:~# docker info | grep Cgroup

Cgroup Driver: cgroupfs

Cgroup Version: 1

WARNING: No swap limit support

(2) 查看kubelet驱动

root@rancher-master:~# cat /var/lib/kubelet/config.yaml | grep cgroup

cgroupDriver: systemd

(3) 修改docker驱动,查看/etc/docker/daemon.json文件,没有的话,手动创建,添加以下内容

{

"exec-opts": ["native.cgroupdriver=systemd"]

}

3 .配置文件不存在

本人在Ubuntu20.04Sever中安装时,出现了这种情况,

(1)先去查看下你的:  /etc/systemd/system/kubelet.service.d下是否有10-kubeadm.conf.如果没有需要创建这个文件,并复制如下内容。

[Service]

Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"

Environment="KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml"

EnvironmentFile=-/var/lib/kubelet/kubeadm-flags.env

# This is a file that the user can use for overrides of the kubelet args as a last resort.

EnvironmentFile=-/etc/default/kubelet

ExecStart=

ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS

(2)如有有这个文件,则在文件中加入如代码

Environment="KUBELET_SYSTEM_PODS_ARGS=--pod-manifest-path=/etc/kubernetes/manifests --allow-privileged=true --fail-swap-on=false"

(3)重新启动kubelet.service        systemctl daemon-reload        systemctl restart kubelet.service  

你可能感兴趣的