1.节点资源压力告警,触发 MemoryPressure
或 DiskPressure
1.1 问题点
Kubernetes 节点报告内存或磁盘资源压力,标记节点状态为 NotReady
或应用 MemoryPressure
、DiskPressure
污点,导致调度器不再将新 Pod 调度到该节点
影响范围:
- 直接影响:节点上的现有 Pod 可能因资源不足而性能下降或被系统强制终止。
- 间接影响:集群的整体资源利用率降低,新部署或扩缩容的操作受阻,可能导致服务容量不足或响应延迟
1.2 排查方法
- 查看节点状态:使用
kubectl get node
查看所有节点状态,重点关注Conditions
列中的MemoryPressure
和DiskPressure
状态。 - 检查资源使用情况:使用
kubectl top nodes
查看节点的实时资源使用率,对比节点的总资源容量,判断是否存在过度消耗。 - 分析资源消耗大户:使用
kubectl top pods --all-namespaces --sort-by=memory
或--sort-by=cpu
查找占用资源最多的 Pod,分析其资源使用合理性。 - 检查磁盘使用情况:对于
DiskPressure
,使用df -h
或du -sh /*
(在节点上执行)查看磁盘空间使用情况,定位占用空间大的目录。 - 清理资源或调整策略:根据分析结果,可能需要清理无用数据、优化 Pod 资源请求/限制、调整日志留存策略、迁移部分工作负载到其他节点等