iostat

iostat是一个基于/proc/diskstats文件计算的IO统计工具,它在周期性的去读取/proc/diskstats的IO统计信息并通过一定的公式计算出来。输出如下:

$iostatLinux 4.4.0-116-generic (jpc)   03/18/2018  _x86_64_    (8 CPU)
avg-cpu:  %user   %nice %system %iowait  %steal   %idle           
          5.94    0.08    3.02    2.08    0.00   88.89
Device: tps      kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda     12.15       243.01       110.93    5014986    2289276
sdb     17.88        83.01        89.09    1712994    1838461
$iostat
Linux 4.4.0-116-generic (jpc)   03/18/2018  _x86_64_    (8 CPU)
avg-cpu:  %user   %nice %system %iowait  %steal   %idle           
          5.94    0.08    3.02    2.08    0.00   88.89
Device: tps      kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda     12.15       243.01       110.93    5014986    2289276
sdb     17.88        83.01        89.09    1712994    1838461

tps:transfer per second,每秒传输的IO数量
kB_read/s:每秒读取的KB数量
kB_wrtn/s:每秒写的KB数量
kB_read:累计读取的KB数
kB_wrtn:累计写的KB数量

$iostat -x
Linux 4.4.0-116-generic (jpc)   03/18/2018  _x86_64_    (8 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle   5.11    0.19    3.10    1.83    0.00   89.78
Device: rrqm/s wrqm/s   r/s    w/s     rkB/s    wkB/s     avgrq-sz avgqu-sz await  r_await  w_await  svctm  %util  
sda    0.06     7.13   18.23    7.51   614.39   163.88    60.47     0.03     1.11   0.64     2.27     0.42   1.09
sdb    0.77     3.13   15.46   11.81   249.41   128.89    27.75     0.08     3.03   0.52     6.32     0.18   0.49

rrqm/s:每秒合并读IO的次数
wrqm/s:每秒合并写IO的次数
r/s:每秒读IO完成的次数
w/s:每秒写IO完成的次数
rkB/s:每秒读IO的KB数量
wkB/s:每秒写IO的KB数量
avgrq-sz:平均IO扇区数
avgqu-sz:平均未完成的IO数量,包括在队列中的和硬件正在处理的。
await:平均每个IO耗时,包括在队列中和硬件操作的时间。
r_wait:平均每个读IO耗时**w_wait**:平均每个写IO耗时
svctm:Warning! Do not trust this field any more. This field will be removed in a future sysstat version
%util:磁盘利用率,只要有IO操作就算,由于硬件的并发处理IO能力,即使%util达到100%也不意味着已达存储介质的性能极限,只能说明在这个统计周期内,该介质一直都有IO操作。

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.