Total DISK READ: 12.34 M/s | Total DISK WRITE: 56.78 M/s Actual DISK READ: 12.10 M/s | Actual DISK WRITE: 55.90 M/s TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND 12345 be/4 mysql 1.20 M/s 35.60 M/s 0.00 % 92.34 % mysqld 23456 be/4 root 8.50 M/s 0.00 B/s 0.00 % 48.12 % tar czf backup.tar.gz 34567 be/4 www-data 0.00 B/s 15.80 M/s 0.00 % 61.45 % php-fpm 987 be/4 root 0.00 B/s 2.10 M/s 0.00 % 5.23 % jbd2/sda1-8
字段说明
字段
含义
说明
Total DISK READ
总读请求速率
所有进程发起的磁盘读取速率(总读请求速率)
Total DISK WRITE
总写请求速率
所有进程发起的磁盘写入速率(总写请求速率)
Actual DISK READ
实际读速率
实际落盘的磁盘读取速率(受页缓存命中情况影响)
Actual DISK WRITE
实际写速率
实际落盘的磁盘写入速率(受页缓存、写合并等机制影响)
TID
Thread ID
线程 ID(比 PID 更细粒度)
PRIO
I/O 优先级
be = best effort(普通优先级)
USER
进程所属用户
进程运行的用户
DISK READ
磁盘读取速率
该进程每秒从磁盘读取的数据量
DISK WRITE
磁盘写入速率
该进程每秒写入磁盘的数据量
SWAPIN
换页占比
因内存不足导致的换页 I/O 百分比
IO>
I/O 等待占比
最重要:进程被磁盘 I/O 阻塞的时间比例
COMMAND
命令名
进程 / 线程名称
排查磁盘 I/O 瓶颈时重点关注的字段
IO>(最重要)
举例:
1
IO> 92.34 %
含义:
进程 92% 的时间在等磁盘 I/O
几乎可以确定:磁盘是瓶颈
判断规则:
IO> > 30% → I/O 明显慢
IO> > 60% → 严重 I/O 阻塞
IO> > 80% → 磁盘被打爆
DISK READ / DISK WRITE
举例:
1
DISK WRITE 35.60 M/s
用来判断:
磁盘是读取多,还是写入多
磁盘是否有异常的大流量进程
特别注意:
磁盘吞吐量高 ≠ 磁盘一定慢
必须结合 IO> 来判断才有意义
Total / Actual 顶部汇总行(系统级)
举例:
1 2
Total DISK READ: 12.34 M/s | Total DISK WRITE: 56.78 M/s Actual DISK READ: 12.10 M/s | Actual DISK WRITE: 55.90 M/s
字段:
Total DISK READ:所有进程发起的磁盘读取速率(总读请求速率)
Total DISK WRITE:所有进程发起的磁盘写入速率(总写请求速率)
Actual DISK READ:实际落盘的磁盘读取速率(受页缓存命中情况影响)
Actual DISK WRITE:实际落盘的磁盘写入速率(受页缓存、写合并等机制影响)
Total 与 Actual 两者差距大的可能原因
Page Cache(页缓存)命中高
写请求被缓存 / 合并
vmstat
vmstat 无需安装,缺点只能看整体的磁盘 I/O 吞吐量,看不到具体的磁盘。
vmstat 概述
vmstat 适合用来判断的事情
适用场景
用法
是否有磁盘读写行为
看 bi / bo 是否为 0
是否突然爆发 I/O
看是否瞬间飙升
写入型 / 读取型的吞吐量
对比 bi vs bo
vmstat 不适合用来判断的事情
不适用场景
原因
哪块磁盘 I/O 最高
看不到具体磁盘
磁盘是否打满
没有 %util
I/O 是否排队
没有 await
vmstat 使用
vmstat 的使用
1
vmstat 1
输出示例如下:
1 2 3 4 5 6 7
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 1 0 0 24642772 6851660 22099404 0 0 50 16 133 71 3 1 95 0 0 0 0 0 24644776 6851660 22096364 0 0 0 37 10080 9298 1 0 98 0 0 0 0 0 24644308 6851660 22096384 0 0 0 409 3063 8706 1 0 99 0 0 0 0 0 24652476 6851660 22096388 0 0 0 226 3145 8780 1 0 99 0 0 0 0 0 24640804 6851660 22096400 0 0 0 0 4060 10007 1 1 98 0 0