
【集群】K8S集群重启问题排查记录

💡简介
前段时间机房断电,导致大批量服务器故障。终于恢复正常后发现服务器上的 k8s 无法连接了,因此排查并记录一下过程。
🖼️背景
- 机房断电导致服务器重启,k8s 集群无法正常连接。
- 需要排查权限问题、服务启动问题及解决方案。
🧠思路
- 检查
kubectl get node
报错,判断权限问题。 - 检查
kubelet
服务状态,判断服务启动问题。 - 检查 Docker 及相关容器状态,判断组件问题。
- 记录常见问题与解决方法。
🔨解决
1. 权限问题排查
使用 kubectl get node
发现报错:
1 | The connection to the server localhost:8080 was refused - did you specify the right host or port? |
根据博客[1,2],判断是出现权限问题,admin.conf
文件未绑定,通过echo $KUBECONFIG
发现无输出,证明确实是该问题。
通过以下指令绑定相应权限文件:
1 | echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> /etc/profile |
2. 服务启动问题排查
继续使用 kubectl get node
发现报错:
1 | The connection to the server xx.xx.xx.xx:6443 was refused - did you specify the right host or port? |
根据博客[3,4],判断是服务启动不成功。依次检查6443端口
、kubelet
、docker及相关容器
,发现全都存在问题。具体检查指令及结果如下:
1 | # 检查 6443 端口,发现无输出,说明无应用监听该端口。其对应的是 kubelet,说明 kubelet 可能出现了问题 |
1 | # 检查 kubelet,发现果然未正常启动。 |
1 | $ docker ps -a | grep kube-apiserver |
🏥反思
- 服务器重启后,k8s 集群可能出现权限问题、服务启动问题,需及时排查。
- 检查
kubelet
服务状态、Docker 容器状态是排查问题的关键步骤。 - 记录常见问题与解决方法,便于后续参考。
- 希望这篇博客对你有帮助!如果你有任何问题或需要进一步的帮助,请随时提问。
- 如果你喜欢这篇文章,欢迎动动小手给我一个follow或star。
🗺参考文献
[3] k8s重启报错 :The connection to the server 192.168.102.149:6443 was refused
- 标题: 【集群】K8S集群重启问题排查记录
- 作者: Fre5h1nd
- 创建于 : 2025-05-19 23:24:14
- 更新于 : 2025-05-20 00:04:33
- 链接: https://freshwlnd.github.io/2025/05/19/k8s/k8s-host-restart/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论