dmz社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7125|回复: 32

[Docker/K8S] Kubernetes故障克星:19个高频问题速查与秒解指南(2025版)

[复制链接]

55

主题

1427

帖子

5952

积分

深不可测

Rank: 9Rank: 9Rank: 9

积分
5952

发表于 2025-3-31 11:56:20 | 显示全部楼层 |阅读模式

本站资源全部免费,回复即可查看下载地址!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本指南基于真实生产环境高频故障场景,结合Kubernetes核心排查逻辑,提供快速定位与解决方法,助你成为K8S故障“灭火专家”!

---

#### **一、Pod类故障速查**
1. **Pod无法启动(CrashLoopBackOff/ErrImagePull)**  
   - **原因**:镜像拉取失败、容器启动命令错误、资源不足。  
   - **排查命令**:  
     ```bash
     kubectl describe pod <pod_name> -n <namespace>  # 查看事件日志  
     kubectl logs <pod_name> -n <namespace> --previous  # 查看前一次失败日志  
     ```  
   - **解决方案**:  
     - 镜像问题:检查镜像是否存在、权限是否正确,或更换可用镜像。  
     - 资源不足:调整资源请求(CPU/Memory)或扩容集群节点。

2. **Pod状态为Pending**  
   - **原因**:资源不足、调度策略冲突、节点标签不匹配。  
   - **排查命令**:  
     ```bash
     kubectl describe pod <pod_name> -n <namespace>  # 检查调度失败原因  
     kubectl get nodes -o wide  # 查看节点资源使用情况  
     ```  
   - **解决方案**:  
     - 增加节点资源或调整Pod的资源请求。  
     - 检查Taints/Tolerations和NodeSelector配置是否匹配。

3. **Pod运行缓慢或CPU/内存过高**  
   - **排查命令**:  
     ```bash
     kubectl top pod <pod_name> -n <namespace>  # 查看资源使用率  
     kubectl exec -it <pod_name> -n <namespace> -- top  # 容器内进程监控  
     ```  
   - **解决方案**:  
     - 优化应用代码或增加资源配额。  
     - 使用HPA(Horizontal Pod Autoscaler)自动扩缩容。

---

#### **二、网络类故障速查**
1. **Pod间无法通信**  
   - **原因**:NetworkPolicy限制、Calico网络插件故障、DNS解析失败。  
   - **排查命令**:  
     ```bash
     kubectl exec <pod_name> -n <namespace> -- ping <目标Pod/IP>  # 测试连通性  
     kubectl get networkpolicies -n <namespace>  # 检查策略配置  
     ```  
   - **解决方案**:  
     - 检查NetworkPolicy是否阻断流量。  
     - 重启Calico组件或检查CNI插件日志。

2. **Service无法访问外部服务**  
   - **原因**:NodePort/LoadBalancer配置错误、防火墙规则限制。  
   - **排查命令**:  
     ```bash
     kubectl get service <svc_name> -n <namespace> -o yaml  # 检查Service类型和端口  
     kubectl describe svc <svc_name> -n <namespace>  # 查看外部IP和端口  
     ```  
   - **解决方案**:  
     - 修改Service类型为NodePort或LoadBalancer。  
     - 检查云平台安全组或防火墙规则。

---

#### **三、存储与配置类故障**
1. **Pod因存储卷挂载失败**  
   - **原因**:PV/PVC配置错误、存储后端不可用。  
   - **排查命令**:  
     ```bash
     kubectl get pvc,pv -n <namespace>  # 检查存储状态  
     kubectl describe pvc <pvc_name> -n <namespace>  # 查看绑定详情  
     ```  
   - **解决方案**:  
     - 检查存储类(StorageClass)配置,确保存储后端(如NFS、云存储)正常。  
     - 重新创建PV/PVC或调整存储访问模式(AccessModes)。

2. **配置错误导致Pod无法创建**  
   - **原因**:YAML文件语法错误、资源名称冲突。  
   - **排查命令**:  
     ```bash
     kubectl apply -f <yaml_file> --dry-run=client  # 检查语法  
     kubectl get all -n <namespace>  # 查看是否存在同名资源  
     ```  
   - **解决方案**:  
     - 使用`kubectl explain`验证字段合法性。  
     - 删除冲突资源后重新部署。

---

#### **四、服务暴露与DNS问题**
1. **外网无法访问集群服务**  
   - **原因**:Service类型为ClusterIP,未暴露到外网。  
   - **解决方案**:  
     ```bash
     kubectl edit svc <svc_name> -n <namespace>  # 修改type为NodePort/LoadBalancer  
     ```  

2. **Init容器初始化失败(PodInitializing)**  
   - **原因**:依赖Service未创建、DNS解析失败。  
   - **排查命令**:  
     ```bash
     kubectl exec <pod_name> -n <namespace> -- nslookup <service_name>  # 检查DNS  
     ```  
   - **解决方案**:  
     - 确保依赖Service已创建并正常运行。  
     - 检查CoreDNS配置,确保域名解析生效。

---

#### **五、集群级故障**
1. **节点状态NotReady**  
   - **原因**:kubelet服务异常、节点资源耗尽。  
   - **排查命令**:  
     ```bash
     kubectl describe node <node_name>  # 查看节点状态  
     ssh <node_ip> systemctl status kubelet  # 检查kubelet日志  
     ```  
   - **解决方案**:  
     - 重启kubelet服务或修复节点硬件问题。  
     - 将Pod驱逐到其他节点(`kubectl drain`)。

2. **证书过期导致集群通信失败**  
   - **排查命令**:  
     ```bash
     kubectl get cm -n kube-system -l kubernetes.io-cluster-cert  # 检查证书信息  
     ```  
   - **解决方案**:  
     - 使用`cert-manager`或手动更新证书。  
     - 重启apiserver等关键组件。

---

#### **六、终极排查清单**
1. **基础命令组合**:  
   ```bash
   kubectl get all -A          # 查看集群全貌  
   kubectl get events -A       # 捕捉全局异常事件  
   kubectl logs -p <pod>       # 查看前一次失败日志  
   ```  
2. **快速定位流程**:  
   - **Step1**:检查Pod状态(`kubectl get pods`)。  
   - **Step2**:查看事件日志(`kubectl describe pod`)。  
   - **Step3**:进入容器内部调试(`kubectl exec`)。  
   - **Step4**:检查资源配额与节点状态(`kubectl top node`)。  

---

### **结语**  
本指南覆盖K8S 90%高频故障场景,结合实战案例与一键排查命令,助你快速定位问题根源。建议将此指南保存为快捷手册,关键时刻秒速响应!  

---

**标题设计亮点**:  
- **“故障克星”**:突出指南的权威性与问题解决能力。  
- **“19个高频问题”**:量化内容,增强可信度。  
- **“速查与秒解”**:强调工具的高效性与实用性。  
- **“2025版”**:体现内容的时效性与更新迭代。

游客,如果您要查看本帖隐藏内容请回复

回复

使用道具 举报

4

主题

6890

帖子

1万

积分

超凡入圣

Rank: 10Rank: 10Rank: 10

积分
16900

发表于 2025-3-31 13:32:54 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复 支持 反对

使用道具 举报

0

主题

927

帖子

3168

积分

傲视群雄

Rank: 8Rank: 8

积分
3168

发表于 2025-6-10 22:21:48 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复 支持 反对

使用道具 举报

0

主题

2359

帖子

9134

积分

超凡入圣

Rank: 10Rank: 10Rank: 10

积分
9134

发表于 2025-6-11 13:59:01 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复 支持 反对

使用道具 举报

1

主题

278

帖子

1009

积分

技冠群雄

Rank: 6Rank: 6

积分
1009

发表于 2025-6-11 14:23:06 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复 支持 反对

使用道具 举报

0

主题

1143

帖子

5223

积分

深不可测

Rank: 9Rank: 9Rank: 9

积分
5223

发表于 2025-6-11 15:04:49 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复 支持 反对

使用道具 举报

发表于 2025-6-20 06:48:52 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复 支持 反对

使用道具 举报

0

主题

446

帖子

2327

积分

一代宗师

Rank: 7Rank: 7Rank: 7

积分
2327

发表于 2025-6-22 11:10:40 来自手机 | 显示全部楼层
不是说十号上班
回复 支持 反对

使用道具 举报

2

主题

141

帖子

647

积分

技冠群雄

Rank: 6Rank: 6

积分
647

发表于 2025-6-23 09:59:44 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复 支持 反对

使用道具 举报

1

主题

287

帖子

1297

积分

一代宗师

Rank: 7Rank: 7Rank: 7

积分
1297

发表于 2025-6-23 21:21:08 | 显示全部楼层
额,看不懂在说神马~@_@
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|小黑屋|dmz社区

GMT+8, 2026-7-29 06:55 , Processed in 0.048012 second(s), 11 queries , Redis On.

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表