首页/云/可观测性速查/主机 CPU/内存/磁盘使用率的标准查询
Prometheus 与采集64 条

主机 CPU/内存/磁盘使用率的标准查询

主机使用率查询有两个固定要点:CPU 用 idle 模式反向计算,内存用 MemAvailable 口径;磁盘要过滤伪文件系统并按挂载点分组。

可观测性速查云更新于 2026-10-13

三类使用率的共同套路

主机使用率查询有两个固定要点:CPU 用空闲时间反向计算,内存用可用量口径,磁盘要先过滤伪文件系统再按挂载点分组。掌握这三条就能覆盖绝大多数主机容量判断,也能避免把缓存与伪设备算进使用率。

CPU 为什么要用空闲时间反推

CPU 时间是一组按模式累计的计数器,直接相加不代表使用率。把各模式相加后用总量减去空闲比例,得到的才是非空闲占比,也就是通常说的使用率。按实例聚合时记得保留 cpu 维度与否会导致两种完全不同的视角:整体水位与单核热点。

内存口径的差异

Linux 会把大量空闲内存用于页缓存,因此空闲内存少并不代表压力大。判断内存是否吃紧应看可用内存,它已经扣除了不可回收的部分;同时结合交换分区换入换出速率判断是否已经开始置换,一旦出现持续置换,延迟通常会同步恶化。

基本信息

CPU 查询用 1 减去 idle 模式占比
内存查询可用内存除以总内存
磁盘查询可用空间除以总空间,并过滤伪文件系统
窗口建议至少覆盖 4 个采样点,抓取间隔调大时同步放宽

典型使用场景

  • 容量看板:三类使用率的趋势线是扩容决策的主要依据
  • 水位告警:文件系统与内存使用率越过阈值时触发通知
  • 故障定位:CPU 高伴随负载高通常是计算密集,内存高伴随置换则是容量不足
  • 发布对比:发布前后比较同一主机的资源曲线,判断新版本开销
  • 批量巡检:按集群聚合出整体水位,快速找出最紧张的一批机器

三类使用率查询

三类使用率查询
# CPU 使用率(按实例聚合,5 分钟窗口)
100 - (avg by (instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)

# 内存使用率(可用内存口径)
(1 - node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes) * 100

# 文件系统使用率(过滤 tmpfs 等伪文件系统)
(1 - node_filesystem_avail_bytes{fstype!~"tmpfs|overlay|squashfs"}
   / node_filesystem_size_bytes{fstype!~"tmpfs|overlay|squashfs"}) * 100

单核视角与交换活动

单核视角与交换活动
# 单核使用率:保留 cpu 维度
100 - (rate(node_cpu_seconds_total{mode="idle"}[5m]) * 100)

# 交换活动:出现持续置换说明内存已经不足
rate(node_vmstat_pswpin[5m])
rate(node_vmstat_pswpout[5m])

输出与异常判读

指标正常表现异常信号
CPU 使用率平稳波动,峰值可解释持续高位且延迟同步上升
内存使用率受页缓存影响有小幅波动可用量持续下降并伴随置换
文件系统使用率增长缓慢可预测短期快速攀升或个别挂载点先满
系统负载不超过核心数量级远超核心数且回落缓慢

从使用率到结论

使用率只是入口,结论要结合饱和度:CPU 使用率高但负载未超过核心数,通常只是繁忙;磁盘使用率高而 IO 等待正常,说明容量尚有余量;内存使用率高但可用量稳定,则无需处理。把使用率与饱和信号放在同一张面板上,能显著减少误判。

按实例聚合用平均,观察单核差异时去掉模式过滤并按 cpu 维度分组,两种视角分别回答整体水位与热点问题。
使用率阈值不要照搬:数据库与编译节点长期高位运行属于常态,阈值应结合自身基线与业务容忍度设定,而不是统一取 80%。
容器场景要区分容器可见的主机指标与容器自身配额:以容器方式运行的采集器若未做处理,会把整个节点的负载算到单个容器上。

易错点

  • 总量为 0 的挂载点会产生无意义结果,展示前先过滤掉这类序列
  • 抓取间隔调大而窗口不变:采样点过少会让曲线抖动明显,需同步放宽窗口
  • 用空闲内存判断内存压力:页缓存的存在会让所有机器看起来都内存紧张
  • 忽略挂载点维度:把多个分区求和后判读,会把个别分区打满的风险平均掉

数据来源与参考

  • node_exporter 指标文档
  • Prometheus 文档 · rate() 使用要点
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌