【排错】k8s实验环境重启后kubelet起不来
2022年10月26日 05:10:34 作者:Jiaozn 分类:K8s 评论(0)我的问题是:驱动问题,即docker的驱动与kubelet 驱动不一致
(1)查看docker驱动
root@rancher-master:~# docker info | grep Cgroup
Cgroup Driver: systemd
root@rancher-master:~# cat /var/lib/kubelet/config.yaml | grep cgroup
cgroupDriver: cgroupfs
解决方法:
修改/var/lib/kubelet/config.yaml内的
cgroupDriver: cgroupfs
改成
cgroupDriver: systemd
重启服务
systemctl daemon-reload
systemctl restart kubelet.service
systemctl status kubelet.service
思考步骤参考下面文章:
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
评论
发表评论