Linux下使用iostat 监视I/O状态(3)

xvda              0.02    0.69    0.56  113.65    13.80  713.21    12.73    0.00    0.03  0.48  5.53

xvdb              0.02    17.88    1.07  18.19    21.24  144.27    17.19    0.13    6.71  1.69  3.25

Device:        rrqm/s  wrqm/s    r/s    w/s    rkB/s    wkB/s avgrq-sz avgqu-sz  await  svctm  %util

xvda              0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  0.00  0.00

xvdb              0.00    0.00    0.00    5.00    0.00    20.00    8.00    0.11  22.00  4.40  2.20

Device:        rrqm/s  wrqm/s    r/s    w/s    rkB/s    wkB/s avgrq-sz avgqu-sz  await  svctm  %util

xvda              0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  0.00  0.00

xvdb              0.00    0.00    0.00  16.00    0.00    64.00    8.00    0.80  50.19  6.81  10.90

总IO(io)/s = r/s(读) +w/s(写)

平均等待时间 = 单个 I/O 服务时间 * ( 1 + 2 + … + 请求总数-1) / 请求总数

参数说明

rrqm/s:每秒进行 merge 的读操作数目.即 delta(rmerge)/s

wrqm/s:每秒进行 merge 的写操作数目.即 delta(wmerge)/s

r/s:每秒完成的读 I/O 设备次数.即 delta(rio)/s

w/s:每秒完成的写 I/O 设备次数.即 delta(wio)/s

rsec/s:每秒读扇区数.即 delta(rsect)/s

wsec/s:每秒写扇区数.即 delta(wsect)/s

rkB/s:每秒读K字节数.是 rsect/s 的一半,因为每扇区大小为512字节.(需要计算)

wkB/s:每秒写K字节数.是 wsect/s 的一半.(需要计算)

avgrq-sz: 平均每次设备I/O操作的数据大小 (扇区).delta(rsect+wsect)/delta(rio+wio)

avgqu-sz: 平均I/O队列长度.即 delta(aveq)/s/1000 (因为aveq的单位为毫秒).

await:平均每次设备I/O操作的等待时间 (毫秒).即 delta(ruse+wuse)/delta(rio+wio)

svctm:平均每次设备I/O操作的服务时间 (毫秒).即 delta(use)/delta(rio+wio)

%util:一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的.即 delta(use)/s/1000 (因为use的单位为毫秒)

如果%util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈.
如果idle小于70% IO压力就较大了,一般读取速度有较多的wait

avgqu-sz 是需要注意的地方,这个就是直接每次操作的数据的大小,如果次数多,但数据小的话,其实 IO 也会很小.如果数据大,才IO 的数据会高,通过 avgqu-sz × ( r/s or w/s ) = rsec/s or wsec/s

CPU Utilization Report 

[root@localhost ~]# iostat -c 1 10

Linux 2.6.32-431.11.2.el6.x86_64 (localhost)        01/08/2016      _x86_64_        (4 CPU)

avg-cpu:  %user  %nice %system %iowait  %steal  %idle

5.09    0.00    2.08    4.28    0.00  88.55

avg-cpu:  %user  %nice %system %iowait  %steal  %idle

1.75    0.00    0.50    0.00    0.00  97.75

avg-cpu:  %user  %nice %system %iowait  %steal  %idle

1.50    0.00    0.50    0.00    0.00  98.00

avg-cpu:  %user  %nice %system %iowait  %steal  %idle

0.25    0.00    0.25    0.00    0.00  99.50


参数说明

%user:CPU处在用户模式下的时间百分比

%nice:CPU处在带NICE值的用户模式下的时间百分比

%system:CPU处在系统模式下的时间百分比

%iowait:CPU等待输入输出完成时间的百分比

%steal:管理程序维护另一个虚拟处理器时,虚拟CPU的无意识等待时间百分比

%idle:CPU空闲时间百分比

如果%iowait的值过高,表示硬盘存在I/O瓶颈,%idle值高,表示CPU较空闲

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/15571.html