主机重启后k8s kubelet无法自动启动问题解决梳理

这篇具有很好参考价值的文章主要介绍了主机重启后k8s kubelet无法自动启动问题解决梳理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.问题描述

OS Version:CentOS Linux release 7.9.2009 (Core)

K8S Version:Kubernetes v1.20.4

K8S安装配置完成后,重启服务器发现,kubelet没有正常启动(systemctl status kubelet)

命令:

systemctl status kubelet

[root@centos79-3 ~]# systemctl status kubelet
● kubelet.service - kubelet: The Kubernetes Node Agent
   Loaded: loaded (/usr/lib/systemd/system/kubelet.service; enabled; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/kubelet.service.d
           └─10-kubeadm.conf
   Active: activating (auto-restart) (Result: exit-code) since Wed 2023-10-11 10:08:43 CST; 1s ago
     Docs: https://kubernetes.io/docs/
  Process: 8583 ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS (code=exited, status=255)
 Main PID: 8583 (code=exited, status=255)

Oct 11 10:08:43 centos79-3 kubelet[8583]: goroutine 148 [chan receive]:
Oct 11 10:08:43 centos79-3 kubelet[8583]: k8s.io/kubernetes/vendor/k8s.io/client-go...0)
Oct 11 10:08:43 centos79-3 kubelet[8583]: /workspace/src/k8s.io/kubernetes/_output/...aa
Oct 11 10:08:43 centos79-3 kubelet[8583]: created by k8s.io/kubernetes/vendor/k8s.i...er
Oct 11 10:08:43 centos79-3 kubelet[8583]: /workspace/src/k8s.io/kubernetes/_output/...6e
Oct 11 10:08:43 centos79-3 kubelet[8583]: goroutine 149 [chan receive]:
Oct 11 10:08:43 centos79-3 kubelet[8583]: k8s.io/kubernetes/vendor/k8s.io/client-go...0)
Oct 11 10:08:43 centos79-3 kubelet[8583]: /workspace/src/k8s.io/kubernetes/_output/...aa
Oct 11 10:08:43 centos79-3 kubelet[8583]: created by k8s.io/kubernetes/vendor/k8s.i...er
Oct 11 10:08:43 centos79-3 kubelet[8583]: /workspace/src/k8s.io/kubernetes/_output/...6e
Hint: Some lines were ellipsized, use -l to show in full.
[root@centos79-3 ~]# 

输入kubectl -n kube-system get pods命令,有如下报错:

命令:

kubectl -n kube-system get pods

[root@centos79-3 ~]# kubectl -n kube-system get pods
The connection to the server 192.168.10.236:6443 was refused - did you specify the right host or port?
[root@centos79-3 ~]# 

2.原因分析

由于K8S的要求,在部署K8S的服务器,必须全程关闭交换内存(swap),之前安装K8S时,我只是使用swapoff -a命令暂时关闭swap,而机器重启后,swap还是会自动启动,从而导致kubelet无法启动。

3.解决方案

3.1.方案一

1.首先执行命令关闭swap

命令:

swapoff -a

[root@centos79-3 ~]# free -m        --关闭前
              total        used        free      shared  buff/cache   available
Mem:           3931         384        3121          27         425        3306
Swap:          3967           0        3967
[root@centos79-3 ~]# swapoff -a     --执行关闭
[root@centos79-3 ~]# free -m        --关闭后
              total        used        free      shared  buff/cache   available
Mem:           3931         420        3034          27         476        3269
Swap:             0           0           0
[root@centos79-3 ~]# 

2.编辑/etc/fstab文件

命令:

vim /etc/fstab

3.将/dev/mapper/centos-swap swap swap default 0 0这一行注释掉(在其前面加个#)。

#
# /etc/fstab
# Created by anaconda on Tue Jun  6 13:46:52 2023
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=56bcbfd5-823b-48ef-af0e-0d6269c5c353 /boot                   xfs     defaults        0 0
/dev/mapper/centos-home /home                   xfs     defaults        0 0
#/dev/mapper/centos-swap swap                    swap    defaults        0 0     --#号注释

4.编辑完成后保存退出,重启服务器后kubelet就可以正常自动启动了

命令:

cat /etc/fstab

[root@centos79-3 ~]# cat /etc/fstab 

#
# /etc/fstab
# Created by anaconda on Tue Jun  6 13:46:52 2023
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=56bcbfd5-823b-48ef-af0e-0d6269c5c353 /boot                   xfs     defaults        0 0
/dev/mapper/centos-home /home                   xfs     defaults        0 0
#/dev/mapper/centos-swap swap                    swap    defaults        0 0
[root@centos79-3 ~]# 

5.验证

命令:

kubectl -n kube-system get pods

[root@centos79-3 ~]# kubectl -n kube-system get pods
NAME                                       READY   STATUS    RESTARTS   AGE
calico-kube-controllers-7854b85cf7-hn2zk   1/1     Running   2          14h
calico-node-6wt56                          1/1     Running   2          14h
calico-node-f2s8w                          1/1     Running   1          14h
coredns-7f89b7bc75-plrq9                   1/1     Running   2          17h
coredns-7f89b7bc75-xdx8j                   1/1     Running   2          17h
etcd-centos79-3                            1/1     Running   3          17h
kube-apiserver-centos79-3                  1/1     Running   5          17h
kube-controller-manager-centos79-3         1/1     Running   3          17h
kube-proxy-gbl8k                           1/1     Running   3          17h
kube-proxy-l8mm8                           1/1     Running   2          17h
kube-scheduler-centos79-3                  1/1     Running   3          17h
[root@centos79-3 ~]# 

kubectl -n kube-system get nodes文章来源地址https://www.toymoban.com/news/detail-772671.html

[root@centos79-3 ~]# kubectl -n kube-system get nodes
NAME         STATUS   ROLES                  AGE   VERSION
cent79-2     Ready    <none>                 17h   v1.20.4
centos79-3   Ready    control-plane,master   17h   v1.20.4
[root@centos79-3 ~]# 

到了这里,关于主机重启后k8s kubelet无法自动启动问题解决梳理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • k8s kubectl 启动失败Unit kubelet.service entered failed state.

    怀疑是配置文件的路径出现问题 使用命令查看具体的报错信息: 报错显示没有 /usr/local/bin/kubelet 这个文件或目录,实际ls查看是有的。 此时配置文件存在,怀疑是路径出现问题,找不到。后来检查kubelet.service文件,发现配置了 “WorkingDirectory”,给它指定了工作目录。重新

    2024年01月16日
    浏览(42)
  • k8s master组件无法重启

    1.案例 k8s的master组件出错,删掉pod重新拉起也无法正常启动 kubectl get pod -n kube-system  可以看到controller和scheduler组件都显示异常  kubectl describe pod kube-apiserver-k8s-master03 -n kube-system 通过describe查看组件容器的详细信息也并没有报错输出 kubectl delete pod kube-controller-manager-k8s-master0

    2024年02月09日
    浏览(32)
  • windows wsl2 docker+k8s+cuda容器无法启动问题解决

    docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running hook #1: error running hook: exit status 1, stdout: , stderr: Auto-detected mode as \\\'legacy\\\' nvidia-container-cli: mount error: file creation failed: /var/lib/docker/overl

    2024年02月13日
    浏览(38)
  • 重启某个节点、重启电脑服务器后,kubernetes无法运行,k8s无法运行

    环境:ubuntu18.04 LTS 现象:按步骤安装kubernetes后,正常启动,各个命令均可正常使用。服务器重启后,执行命令错误信息如下: The connection to the server 127.0.0.1:6443 was refused - did you specify the right host or port? 排查防火墙设置 查看端口是否打开 如果无法连接,可以关闭防火墙 重新

    2024年02月05日
    浏览(44)
  • k8s中,kubelet 出现问题, k8s-master node not found.

    由于一些其他问题,需要kubeadm reset,在做完kubeadm reset后,出现以下问题。 执行systemctl restart kubelet。 出现 k8s-master node not found,尽管 kubelet依旧是active状态 排查 hostname、etc/hosts等均正常。 通过journalctl -xe kubelet查看,依旧是如下错误。  经过多方尝试未果。又尝试着kubelet初

    2024年02月07日
    浏览(32)
  • 【k8s问题定位】k8s中的pod不停的重启,定位问题原因与解决方法

    现象: running的pod,短时间内重启次数太多   定位问题方法: 查看pod日志 本次使用以下命令,解决了问题 问题原因: OOM,pod被kill掉,重启了( 内存不够用 )   查看该服务的deployment.yaml文件 发现我们deployment.yaml对服务的内存使用,做了限制 解决方法: 将limit的memory数值提高,然后

    2024年02月09日
    浏览(45)
  • k8s kubelet日志报...“ err=“failed to parse kubelet flag: unknown flag: --network-plugin“问题解决梳理

    在k8s master get nodes时,报如下错误 命令: kubectl get nodes 查看kubelet服务状态,发现服务处于loaded状态,输入如下信息: 命令: systemctl status kubelet  查看kubelet日志,有如下报错 命令: journalctl -xefu kubelet 根据日志初步分析,是cni网络模块出了问题,kubelet重启后,导致启动网络

    2024年02月22日
    浏览(33)
  • k8s、docker添加daemon.json添加“exec-opts“: [“native.cgroupdriver=systemd“]后无法启动的问题

    考虑k8s下docker下载镜像太慢,修改了daemon.json,按照手册抄,添加 结果发现k8s起不来了, – Unit docker.service has begun starting up. Aug 10 22:02:01 k8s-master dockerd[1831]: unable to configure the Docker daemon with file /etc/docker/daemon.json : the following directives are specified both as a flag and in the configuration

    2024年02月13日
    浏览(27)
  • 自建K8S一年多没用,忽然想使用下。kubelet启动失败,报错:main process exited, code=exited, status=255/n/a

    通过system status kubelet 查看报错,基本没有什么有效信息,所以使用 就可以看到以下报错:Jan 16 20:49:17 master kubelet[3824]: I0116 20:49:17.402577    3824 server.go:425] Version: v1.15.0 Jan 16 20:49:17 master kubelet[3824]: I0116 20:49:17.402770    3824 plugins.go:103] No cloud provider specified. Jan 16 20:49:17 master k

    2024年01月24日
    浏览(38)
  • k8s pod 无法启动一直ContainerCreating

    查看详细信息如下 Failed to create pod sandbox: rpc error: code = Unknown desc = [failed to set up sandbox container “334d991a478b9640c66c67b46305122d7f0eefc98b2b4e671301f1981d9b9bc6” network for pod “yupay-vip-5c4bb7db5c-s6m52”: networkPlugin cni failed to set up pod “yupay-vip-5c4bb7db5c-s6m52_yupay” network: error getting ClusterInforma

    2024年04月28日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包