自建K8S一年多没用,忽然想使用下。kubelet启动失败,报错:main process exited, code=exited, status=255/n/a

这篇具有很好参考价值的文章主要介绍了自建K8S一年多没用,忽然想使用下。kubelet启动失败,报错:main process exited, code=exited, status=255/n/a。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

通过system status kubelet 查看报错,基本没有什么有效信息,所以使用

journalctl -xefu 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 kubelet[3824]: I0116 20:49:17.402781    3824 server.go:791] Client rotation is on, will bootstrap in background
Jan 16 20:49:17 master kubelet[3824]: E0116 20:49:17.404041    3824 bootstrap.go:263] Part of the existing bootstrap client certificate is expired: 2023-01-29 16:57:44 +0000 UTC
Jan 16 20:49:17 master kubelet[3824]: F0116 20:49:17.404130    3824 server.go:273] failed to run Kubelet: unable to load bootstrap kubeconfig: stat /etc/kubernetes/bootstrap-kubelet.conf: no such file or directory
Jan 16 20:49:17 master systemd[1]: kubelet.service: main process exited, code=exited, status=255/n/a
Jan 16 20:49:17 master systemd[1]: Unit kubelet.service entered failed state.
Jan 16 20:49:17 master systemd[1]: kubelet.service failed.
Jan 16 20:49:27 master systemd[1]: kubelet.service holdoff time over, scheduling restart.
Jan 16 20:49:27 master systemd[1]: Started kubelet: The Kubernetes Node Agent.
Jan 16 20:49:27 master systemd[1]: Starting kubelet: The Kubernetes Node Agent...
Jan 16 20:49:27 master kubelet[3837]: 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.
Jan 16 20:49:27 master kubelet[3837]: 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.
Jan 16 20:49:27 master kubelet[3837]: I0116 20:49:27.652013    3837 server.go:425] Version: v1.15.0
Jan 16 20:49:27 master kubelet[3837]: I0116 20:49:27.652255    3837 plugins.go:103] No cloud provider specified.
Jan 16 20:49:27 master kubelet[3837]: I0116 20:49:27.652267    3837 server.go:791] Client rotation is on, will bootstrap in background
Jan 16 20:49:27 master kubelet[3837]: E0116 20:49:27.653673    3837 bootstrap.go:263] Part of the existing bootstrap client certificate is expired: 2023-01-29 16:57:44 +0000 UTC
Jan 16 20:49:27 master kubelet[3837]: F0116 20:49:27.653727    3837 server.go:273] failed to run Kubelet: unable to load bootstrap kubeconfig: stat /etc/kubernetes/bootstrap-kubelet.conf: no such file or directory
Jan 16 20:49:27 master systemd[1]: kubelet.service: main process exited, code=exited, status=255/n/a
Jan 16 20:49:27 master systemd[1]: Unit kubelet.service entered failed state.
Jan 16 20:49:27 master systemd[1]: kubelet.service failed.
 

最开始看,关键是/etc/kubernetes/bootstrap-kubelet.conf: no such file or directory 以为是配置文档丢失了。所以重新生成:

kubectl config set-cluster <cluster-name> --server=<api-server-url> --kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf

 其中,<cluster-name>是集群的名称,<api-server-url>是Kubernetes API服务器的URL。这条命令将创建一个新的kubeconfig文件,并将其保存到/etc/kubernetes/bootstrap-kubelet.conf路径下。

创建了kubeconfig文件后,我们需要将其复制到正确的位置。可以使用以下命令将kubeconfig文件复制到正确的位置:

sudo cp /etc/kubernetes/bootstrap-kubelet.conf /var/lib/kubelet/kubeconfig

重启kubelet 后,发现依旧启动失败,报错如下:

 

Unit kubelet.service has finished starting up.
-- 
-- The start-up result is done.
Jan 16 21:42:37 master systemd[1]: Starting kubelet: The Kubernetes Node Agent...
-- Subject: Unit kubelet.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit kubelet.service has begun starting up.
Jan 16 21:42:37 master kubelet[1795]: 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.
Jan 16 21:42:37 master kubelet[1795]: 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.
Jan 16 21:42:37 master kubelet[1795]: I0116 21:42:37.126156    1795 server.go:425] Version: v1.15.0
Jan 16 21:42:37 master kubelet[1795]: I0116 21:42:37.126316    1795 plugins.go:103] No cloud provider specified.
Jan 16 21:42:37 master kubelet[1795]: I0116 21:42:37.126326    1795 server.go:791] Client rotation is on, will bootstrap in background
Jan 16 21:42:37 master kubelet[1795]: E0116 21:42:37.127732    1795 bootstrap.go:263] Part of the existing bootstrap client certificate is expired: 2023-01-29 16:57:44 +0000 UTC
Jan 16 21:42:37 master kubelet[1795]: F0116 21:42:37.127950    1795 server.go:273] failed to run Kubelet: unable to load bootstrap kubeconfig: invalid configuration: no configuration has been provided
Jan 16 21:42:37 master systemd[1]: kubelet.service: main process exited, code=exited, status=255/n/a
Jan 16 21:42:37 master systemd[1]: Unit kubelet.service entered failed state.
Jan 16 21:42:37 master systemd[1]: kubelet.service failed.
Jan 16 21:42:47 master systemd[1]: kubelet.service holdoff time over, scheduling restart.
Jan 16 21:42:47 master systemd[1]: Started kubelet: The Kubernetes Node Agent.
-- Subject: Unit kubelet.service has finished start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit kubelet.service has finished starting up.
-- 
-- The start-up result is done.
Jan 16 21:42:47 master systemd[1]: Starting kubelet: The Kubernetes Node Agent...
-- Subject: Unit kubelet.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
 

找了很多资源看,发现有可能是kubelet.conf的证书权限有问题,

然后就删除了新创建的bootstrap-kubelet.conf。拷贝 admin.conf 到 kubelet.conf ,再重新启动kubelet服务 

cp -a /etc/kubernetes/admin.conf /etc/kubernetes/kubelet.conf

systemctl daemon-reload  && systemctl restart kubelet

自建K8S一年多没用,忽然想使用下。kubelet启动失败,报错:main process exited, code=exited, status=255/n/a,kubernetes,kubelet,容器

启动成功。文章来源地址https://www.toymoban.com/news/detail-820140.html

到了这里,关于自建K8S一年多没用,忽然想使用下。kubelet启动失败,报错:main process exited, code=exited, status=255/n/a的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 第四篇:k8s之节点kubelet预留资源配置

    最近k8s在使用过程中遇到这样一个问题 由于Pod没有对内存及CPU进行限制,导致Pod在运行过程中所需的内存超过了节点本身的内存(OOM),从而导致节点崩溃,使得运行在该节点上的所有Pod都失败了 为了解决这个问题以及提高节点的稳定性,综合k8s的一些特性,方案如下 每个

    2024年02月15日
    浏览(37)
  • 主机重启后k8s kubelet无法自动启动问题解决梳理

    OS Version:CentOS Linux release 7.9.2009 (Core) K8S Version:Kubernetes v1.20.4 K8S安装配置完成后,重启服务器发现,kubelet没有正常启动(systemctl status kubelet) 命令: systemctl status kubelet 输入kubectl -n kube-system get pods命令,有如下报错: 命令: kubectl -n kube-system get pods 由于K8S的要求,在部署K8S的服

    2024年02月03日
    浏览(44)
  • kubeadmin搭建自建k8s集群

    在开始之前,部署Kubernetes集群的虚拟机需要满足以下几个条件: 操作系统 CentOS7.x-86_x64 硬件配置:2GB或更多RAM,2个CPU或更多CPU,硬盘30GB或更多【注意master需要两核】 可以访问外网,需要拉取镜像,如果服务器不能访问外网,需要提前下载镜像包并导入节点服务器中(网上

    2024年04月27日
    浏览(24)
  • 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日
    浏览(40)
  • gitlab 通过变量连接自建K8S

    KUBECONFIG: /etc/deploy/config 是一个变量定义,在gitlab的ci/cd 控制台配置 ,它指定了将要创建的文件路径。这个变量的目的是为了方便在后续的阶段中使用。 在 deploy 阶段的脚本中,可以看到以下命令: 这里的目的是将 $kube_config 的值进行 Base64 解码,并将解码后的内容写入到 /

    2024年02月08日
    浏览(36)
  • k8s kubelet coredns ubuntu修改dns配置文件读取路径

    coredns 服务默认使用节点上的dns配置,由于在 Ubuntu18 及以上版本,默认是启用 systemd-resolved 服务的,且配置nameserver配置文件默认为 /run/systemd/resolve/resolv.conf , 且kubelet默认的dns文件读取也是该文件。因不习惯使用该服务来管理dns配置,所以需要修改kubelet的默认读取dns的文件

    2024年02月15日
    浏览(45)
  • k8s kubectl 启动失败Unit kubelet.service entered failed state.

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

    2024年01月16日
    浏览(50)
  • 云上攻防-云原生篇&Kubernetes&K8s安全&API&Kubelet未授权访问&容器执行

    Kubernetes是一个开源的, 用于编排云平台中多个主机上的容器化的应用,目标是让部署容器化的应用能简单并且高效的使用, 提供了应用部署,规划,更新,维护的一种机制 。其核心的特点就是能够自主的管理容器来保证云平台中的容器按照用户的期望状态运行着,管理员可

    2024年02月08日
    浏览(81)
  • k8s报错的解决办法: kubelet的日志出现 Error getting node的报错。

    先看一下报错的图片 这是在初始化maser的时候报的错。 我的环境情况 k8s:1.22.12 docker: 18.06.3 操作系统以及内核版本 解决办法 首先检查你到底写没写错 确定你的主机名字无误后,那么就进行这一步吧,无奈之举了 修改docker的配置文件 修改kubelet的启动项 或者 直接使用老版本

    2023年04月09日
    浏览(48)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包