iostat 查看整体情况
iostat -x 3
avg-cpu: %user %nice %system %iowait %steal %idle
0.85 0.00 2.89 15.62 0.00 80.65
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
loop0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sda 4.00 35.00 1284.00 62.00 324472.00 580.00 482.99 2.07 1.55 1.62 0.06 0.74 100.00
观察两个指标:
%util
%util 是一个重要的磁盘 I/O 性能指标,用于衡量磁盘设备在指定时间段内的利用率。具体来说,%util 表示磁盘设备忙于处理 I/O 请求的时间百分比。
- 0% <= %util < 100%:表示磁盘设备的利用率在 0% 到 100% 之间。
- %util 接近 100%:表示磁盘设备几乎一直在处理 I/O 请求,这通常意味着磁盘 I/O 存在瓶颈,可能会影响系统的性能。
- %util 较低:表示磁盘设备大部分时间处于空闲状态,I/O 负载较低。
%iowait:
用于衡量 CPU 在等待 I/O 操作完成时所花费的时间百分比。具体来说,%iowait 表示 CPU 空闲且有未完成的 I/O 请求的时间百分比。
- 0% <= %iowait < 100%:表示 CPU 等待 I/O 操作的时间占总时间的比例。
- %iowait 接近 0%:表示 CPU 很少或几乎没有时间在等待 I/O 操作,系统 I/O 性能良好。
- %iowait 较高:表示 CPU 经常在等待 I/O 操作完成,这可能意味着 I/O 子系统存在瓶颈,影响了系统的整体性能。
iotop 查看进程
在 iotop 输出中,关注 IO> 列,它显示了每个进程的 I/O 使用情况。找出 I/O 使用量较高的进程。