返回首页

磁盘 IO 监控参考 — iostat/vmstat 字段详解与五指标框架

📅 创建于 2026-07-30 🔄 更新于 2026-07-30 📝 864 字

来源:未知来源 | 发布日期:2026-07-30

磁盘 IO 监控参考

系统级 IO 监控的两大核心工具 iostat 和 vmstat 逐字段解读,配合使用率/饱和度/IOPS/吞吐量/响应时间五指标框架,快速判断磁盘瓶颈。

五指标框架

指标 含义 典型阈值
I/O 使用率 (%util) 磁盘处理 IO 的时间百分比 > 80% 饱和,> 95% 严重
饱和度 (avgqu-sz) IO 请求队列拥堵程度 > 8 严重,> 50 夯死
IOPS (r/s, w/s) 每秒读写请求数 HDD ~200, SSD 几万, NVMe 几十万
吞吐量 (rMB/s, wMB/s) 每秒传输数据总量 结合带宽上限
响应时间 (await) IO 请求从发出到完成的平均等待 HDD > 50ms, SSD > 10ms, NVMe > 5ms

iostat:磁盘 IO 核心监控

iostat -xm 2
  • -x:扩展信息
  • -m:MB 单位
  • 2:每 2 秒刷新

avg-cpu 段

字段 含义 异常信号
%user 用户态 CPU 占比 结合 us/sy 判断
%nice nice 优先级进程 CPU 占比
%system 内核态 CPU 占比 sy 高 + cs 高 → 上下文切换
%iowait CPU 等待 IO 完成的时间百分比 > 10% → IO 瓶颈
%steal 虚拟机被宿主机偷走的 CPU 虚拟机场景
%idle CPU 空闲百分比 持续低 → CPU 不足

Device 段

字段 含义 对应指标 异常阈值
rrqm/s 每秒合并读请求数
wrqm/s 每秒合并写请求数
r/s 每秒读请求次数 IOPS 结合设备上限
w/s 每秒写请求次数 IOPS 结合设备上限
rMB/s 每秒读取数据量 吞吐量 结合带宽上限
wMB/s 每秒写入数据量 吞吐量 结合带宽上限
avgrq-sz 平均 IO 请求大小(扇区) < 8KB 随机小 IO
avgqu-sz 平均队列长度 饱和度 > 2 积压,> 8 严重,> 50 夯死
await 平均 IO 等待时间 (ms) 响应时间 HDD > 50ms, SSD > 10ms
svctm 平均服务时间 (ms)
%util 设备忙碌时间百分比 使用率 > 80% 饱和,> 95% 严重

核心判断:await vs svctm

关系 含义
await ≈ svctm 几乎没有等待时间,磁盘响应正常
await >> svctm 队列太长,磁盘响应太慢,需要优化

vmstat:系统级资源监控

vmstat 2 5
  • 2:每 2 秒刷新
  • 5:输出 5 次

procs 段

字段 含义 异常信号
r 就绪队列进程数(CPU 瓶颈指标) > CPU 核心数 → CPU 瓶颈
b 阻塞等待 IO 的进程数(磁盘瓶颈指标) > 0 → 磁盘 IO 慢

memory 段(KB)

字段 含义 异常信号
swpd 已使用 swap 总量 持续上涨 + si 频繁非 0 → 内存不足
free 物理内存剩余量 Linux 用空闲内存做缓存,低是正常的
buff 块设备缓冲区(磁盘元数据缓存)
cache 页缓存(文件读写缓存)

swap 段

字段 含义 异常信号
si swap in(每秒从交换区读入内存) 长期非 0 → 内存压力
so swap out(每秒写入交换区) 长期非 0 → 内存压力

io 段(1 块 = 512 字节)

字段 含义 异常信号
bi 每秒从磁盘读入块数 持续高 → 读 IO 压力大
bo 每秒写入磁盘块数 持续高 → 写 IO 压力大

system 段

字段 含义 异常信号
in 每秒硬件中断次数 突增 → 设备频繁中断
cs 每秒上下文切换次数 突增 → 多线程锁竞争

cpu 段(总和 100%)

字段 含义 异常信号
us 用户态 CPU 占比 持续 > 80% → CPU 密集
sy 内核态 CPU 占比 高 + cs 高 → 上下文切换
id 空闲 CPU 占比 持续低 → CPU 不足
wa iowait(关键 IO 瓶颈指标) > 10% + b > 0 → IO 瓶颈
st steal(虚拟机场景) > 10% → 宿主机超卖

综合决策表

场景 关键指标组合 判断
磁盘饱和 %util > 90% + await 高 + avgqu-sz 持续走高 磁盘处理能力不足
队列堆积 avgqu-sz > 8 + await 高但 %util 不高 应用并发 IO 过多
响应延迟 await 远大于 svctm 磁盘队列太长,响应太慢
CPU 瓶颈 r > 核心数 + us/sy 高 + wa 低 CPU 资源不足
IO 瓶颈 wa > 10% + b > 0 + bi/bo 高 + r 不大 磁盘 IO 瓶颈
内存不足 si/so 频繁非 0 + swpd 上涨 + free 走低 物理内存不足
上下文切换 cs 巨大 + sy 不断升高 多线程锁竞争

相关工具

工具 用途 场景
iostat 磁盘 IO 性能监控 吞吐量/IOPS/延迟
vmstat 系统整体资源监控 CPU/内存/IO 综合判断
iotop 按进程查看 IO 定位具体进程
atop 分磁盘分进程精细化统计 长期监控
pidstat -d 进程级 IO 统计 进程维度
fio 基准测试 磁盘性能压测

关联页面

页面关联点
linux-disk-io-troubleshoot磁盘 IO 排查实战(%util 陷阱 + await 真相 + 完整排查决策树)
linux-disk-inspection-tools-guide磁盘排查工具实战指南(iostat/smartctl/lsscsi 详解)
linux-disk-io-tuning生产级 Linux 磁盘 IO 调优(调度器/内核参数/fio 基准测试)
server-performance-four-dimensions服务器性能五维排查(CPU/内存/磁盘/网络/文件系统)
linux-load-average-guideLinux Load Average 详解(含 wa 字段深度解析)
linux-load-high-cpu-low-troubleshootingLinux Load 高但 CPU 低的排查思路
linux-perf-troubleshooting-handbookLinux 服务器性能排查实战手册