磁盘 IO
iostat -d -k -t 2
每隔 2 秒统计一次磁盘 IO 信息,直到按 Ctrl+C 终止程序,-d 选项表示统计磁盘信息, -k 表示以每秒 KB
的形式显示,-t 要求打印出时间信息,2 表示每隔 2 秒输出一次。第一次输出的磁盘 IO 负载状况提
供了关于自从系统启动以来的统计信息。随后的每一次输出则是每个间隔之间的平均 IO 负载状况。
[root@localhost 桌面]# iostat -d -k -t 2
Linux 2.6.32-431.el6.x86_64 (localhost.localdomain) 2016 年 10 月 15 日 _x86_64_(1 CPU)
2016 年 10 月 15 日 22 时 37 分 12 秒
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 3.83 88.69 12.04 322980 43861
scd0 0.02 0.06 0.00 216 0
2016 年 10 月 15 日 22 时 37 分 14 秒
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 0.00 0.00 0.00 0 0
scd0 0.00 0.00 0.00 0 0
……………………………………//直到 ctrl+c 才结束
Device: 显示磁盘名称
tps: 表示每秒钟输出到物理磁盘的传输次数。一次传输就是一个对物理磁盘的 I/O 请求。多个逻辑请求
可被并为对磁盘的一个单一 I/O 请求。传输具有中等的大小。
kB_read/s: 每秒从磁盘读取的数据量,单位为 KB。
kB_wrtn/s: 每秒从写入磁盘的数据量,单位为 KB。
Kb_read: 读取的 KB 总数。
Kb_wrtn: 写入的 KB 总数。
iostat 还有一个比较常用的选项-x,该选项将用于显示和 io 相关的扩展数据。
iostat -d -x -k 1 2 //1 是间隔时间 s,2 是次数
rrqm/s:每秒这个设备相关的读取请求有多少被 Merge 了(当系统调用需要读取数据的时候,VFS 将请求
发到各个 FS,如果 FS 发现不同的读取请求读取的是相同 Block 的数据,FS 会将这个请求合并 Merge);
wrqm/s:每秒这个设备相关的写入请求有多少被 Merge 了。
rsec/s:每秒读取的扇区数;
wsec/:每秒写入的扇区数。
rKB/s:The number of read requests that were issued to the device per second;
wKB/s:The number of write requests that were issued to the device per second;
avgrq-sz 平均请求扇区的大小
avgqu-sz 是平均请求队列的长度。毫无疑问,队列长度越短越好。
await: 每一个 IO 请求的处理的平均时间(单位是微秒毫秒)。这里可以理解为 IO 的响应时间,一般
地系统 IO 响应时间应该低于 5ms,如果大于 10ms 就比较大了。
这个时间包括了队列时间和服务时间,也就是说,一般情况下,await 大于 svctm,它们的差值越小,则
说明队列时间越短,反之差值越大,队列时间越长,说明系统出了问题。
svctm 表示平均每次设备 I/O 操作的服务时间(以毫秒为单位)。如果 svctm 的值与 await 很接近,
表示几乎没有 I/O 等待,磁盘性能很好,如果 await 的值远高于 svctm 的值,则表示 I/O 队列等待太长,
系统上运行的应用程序将变慢。
%util: 在统计时间内所有处理 IO 时间,除以总共统计时间。例如,如果统计间隔 1 秒,该设备有 0.8
秒在处理 IO,而 0.2 秒闲置,那么该设备的%util = 0.8/1 = 80%,所以该参数暗示了设备的繁忙程度
。一般地,如果该参数是 100%表示设备已经接近满负荷运行了(当然如果是多磁盘,即使%util 是
100%,因为磁盘的并发能力,所以磁盘使用未必就到了瓶颈)。
[root@localhost 桌面]# iostat -d -x -k 1 2
Linux 2.6.32-431.el6.x86_64 (localhost.localdomain) 2016 年 10 月 15 日 _x86_64_(1 CPU)
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await
svctm %util
sda 5.79 1.74 2.37 1.02 76.66 11.04 51.85 0.06 18.45
4.03 1.36
scd0 0.00 0.00 0.01 0.00 0.05 0.00 6.86 0.00 3.73
3.73 0.01
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await
svctm %util
sda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
0.00 0.00
scd0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
0.00 0.00