KubeEdge 常见故障排查(离线 / 消息积压 / 版本兼容 / 调度 / 设备)
一、背景
边缘环境复杂(弱网、资源受限、异构硬件),故障频发且难以现场排查。本文汇总 KubeEdge 常见故障的体系化排查方法。
二、环境信息
- KubeEdge v1.15 云边集群
- 日志路径:云端
/var/log/kubeedge/、边缘 /var/log/kubeedge/edgecore.log
三、操作要点(排查清单)
1. 边缘节点离线
1 2 3 4
| systemctl status edgecore journalctl -u edgecore -n 100
telnet 192.168.0.100 10000
|
- 原因:网络中断、token 过期、证书过期、云端 CloudHub 宕机
2. 消息积压 / 同步慢
- 边云通道压力大:调大 edgehub 缓冲区、合并上报
- 设备数据量大:优化采集频率、边缘预处理
3. 版本兼容问题
- 铁律:cloud 与 edge 主版本必须一致,否则握手失败
- 升级时先升云再升边,逐步滚动
4. 应用无法调度到边缘
1 2
| kubectl describe node edge-1 kubectl get pods -o wide
|
- 原因:nodeSelector 写错、taint 未容忍、边缘资源不足
5. 设备数据不上报
- 检查 DeviceInstance/Mapper 配置、边缘网络、mapper Pod 日志
6. 诊断命令
1 2
| keadm diagnose kubectl get edges
|
四、验证方式
1 2 3
| kubectl get nodes -o wide kubectl get pods -A -o wide
|
五、常见问题汇总
- 离线:网络/token/证书/CloudHub 四点优先查
- 积压:缓冲区与采集频率
- 兼容:cloud/edge 版本严格一致
- 调度:nodeSelector/taint/资源
- 设备:CRD/Mapper/网络三者联动