登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
签到
每天签到奖励2-10圆
导读
排行榜
TG频道
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
VIP申请
VIP网盘
网盘
联系我们
发帖说明
每日签到
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
业界区
›
安全
›
K8S证书更新时-误删‘apiserver|scheduler|controller-m ...
K8S证书更新时-误删‘apiserver|scheduler|controller-manager’除组件
[ 复制链接 ]
钱匾
2025-6-1 18:22:58
K8S 证书更新时-误删除组件
[root@master ~] eth0 = 172.17.64.32
# docker rm -f docker ps | grep -E 'apiserver|scheduler|controller-manager'| awk '{print$1}'
7856f2a3068e
2e1a6956d8a1
e9e3cb7870a9
31b19f4e2b22
c028146f88a5
abe4207808a3
[root@master ~] eth0 = 172.17.64.32
# docker ps | grep -E 'apiserver|scheduler|controller-manager'
[root@master ~] eth0 = 172.17.64.32
#
[root@master ~] eth0 = 172.17.64.32
# kubectl get pod
The connection to the server 172.17.64.32:6443 was refused - did you specify the right host or port?
复制代码
1、 起因K8S集群证书过期更新:
执行了 kubeadm certs renew all,成功更新了 Kubernetes 集群的证书(包括 API Server、Controller Manager、Scheduler 等)。
更新用户凭证 之后重启 kubelet,解决Unable to connect to the server: x509: certificate has expired or is not yet valid 证书报错
2、 误删除容器:
本是重启组件服务的,眼疾手快直接删除了,以为k8s会自动拉起,后面才发现这些组件时通过这些 Pod 由
kubelet 直接管理
,不依赖 Kubernetes API Server 的调度和控制,
在执行 docker rm -f $(docker ps | grep -E 'apiserver|scheduler|controller-manager' | awk '{print $1}') 后,删了 apiserver、scheduler、controller-manager 容器,导致集群状态不稳定,API Server 等组件无法访问。
3、Kubelet 服务失败:
尝试重启 kubelet 后,服务进入“激活中”状态,最终失败,原因是无法加载配置文件 /etc/kubernetes/kubelet.conf,并且日志显示证书过期或丢失。
kubeadm init phase kubeconfig kubelet 命令未能解决问题,因文件损坏或丢失,导致 kubelet 仍然无法启动。
4、删除 kubelet.conf 文件并重新生成配置:
手动删除了 /etc/kubernetes/kubelet.conf 文件:
# 记得备份在删除
# cp /etc/kubernetes/kubelet.conf /opt/
# rm -rf /etc/kubernetes/kubelet.conf
复制代码
执行了 kubeadm init phase kubeconfig kubelet 重新生成了 kubelet.conf 文件:
# kubeadm init phase kubeconfig kubelet
复制代码
生成新的 kubelet.conf 文件后,重启了 kubelet 服务:
# systemctl restart kubelet
复制代码
5、问题解决:
重启 kubelet 后,服务成功启动,容器重新被拉起,并且 kubelet 重新注册到集群中。可以通过以下命令确认集群状态:
# kubectl get node
复制代码
# docker ps | grep -E 'apiserver|scheduler|controller-manager' | awk '{print $1}'
复制代码
问题总结:
根本问题
:在证书更新后,kubelet 无法加载证书和配置文件,导致 Kubernetes 集群无法正常运行。误操作删除容器后,API Server 等组件也无法启动,进一步导致 kubelet 启动失败。
解决方案
:删除 /etc/kubernetes/kubelet.conf 文件,重新生成并应用新的配置文件,最后重启 kubelet 服务。这样就恢复了正常的集群状态。
如果以后还遇到类似的情况,可以提前备份相关配置文件,特别是 kubelet.conf,以防配置丢失或者损坏。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
K8S
证书
更新
误删
apiserver
相关帖子
flink on k8s的基本介绍
架构师必备:缓存更新模式总结
k8s之基础概念
博客园出海记-K8S集群优化:一次命中注定的失败
K8s中的RBAC认证授权之基于HTTPS证书给User授权认证
k8s之pod概念
IIS8.5 安装证书
SignTool 使用 SafeNet eToken 硬证书进行代码签名
NocoBase 本周更新汇总:优化及缺陷修复
nginx证书缓存功能
vip免费申请,1年只需15美金$
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
安全
flink on k8s的基本介绍
0
455
钦遭聘
2025-10-01
业界
架构师必备:缓存更新模式总结
0
554
那虻
2025-10-01
业界
k8s之基础概念
0
592
卢铃语
2025-10-05
业界
博客园出海记-K8S集群优化:一次命中注定的失败
0
96
鞍汉
2025-10-06
业界
K8s中的RBAC认证授权之基于HTTPS证书给User授权认证
0
207
驼娑
2025-10-07
业界
k8s之pod概念
1
295
蒋炸役
2025-10-08
安全
IIS8.5 安装证书
2
265
勉欤铅
2025-10-10
安全
SignTool 使用 SafeNet eToken 硬证书进行代码签名
2
768
羔迪
2025-10-12
安全
NocoBase 本周更新汇总:优化及缺陷修复
1
196
涂流如
2025-10-12
业界
nginx证书缓存功能
0
384
梁丘艷蕙
2025-10-17
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
签约作者
程序园优秀签约作者
发帖
钱匾
2025-6-1 18:22:58
关注
0
粉丝关注
16
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
anyue1937
9994893
dage888
999994
3934307807
992122
4
富账慕
9977
5
邹语彤
9979
6
二艰糖
9997
7
刎唇
9993
8
匝抽
9986
9
聚怪闩
9960
10
孙淼淼
9977
查看更多