重启机器后,kubelet没有自启动,手动启动失败,检查日志反馈找不到bootstrap-kubelet.conf这个文件。

systemctl start kubelet
journalctl -u kubelet
57481 run.go:74] "command failed" err="failed to run Kubelet: unable to load bootstrap kubeconfig: stat /etc/kubernetes/bootstrap-kubelet.conf: no such file or directory"

bootstrap-kubelet.conf这个文件的主要作用是引导 Kubelet 与控制平面节点通信,获得永久的 kubeconfig 文件和认证信息。

那么bootstrap-kubelet就相当于是引导令牌!,从这里就可以定位到是证书方面的问题

bootstrap-kubelet工作流程:
Kubelet 启动时读取 bootstrap-kubelet.conf 文件,并使用其中的引导令牌与 API 服务器进行认证。
Kubelet 请求加入集群,并尝试注册到控制平面。
API 服务器验证引导令牌,并为节点分配正式的认证凭据。
Kubelet 接收到正式的 kubeconfig 文件(/etc/kubernetes/kubelet.conf),然后切换到该文件进行后续通信

解决方法:
备份并重新生成证书

# 拷贝 admin.conf 到 kubelet.conf ,再重新启动kubelet服务
cp /etc/kubernetes/kubelet.conf /etc/kubernetes/kubelet.conf.old
cp -a /etc/kubernetes/admin.conf /etc/kubernetes/kubelet.conf
systemctl daemon-reload && systemctl restart kubelet

哪里有问题还望各位大佬指导出来!!!

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部