iostat分析IO性能

iostat分析IO性能

 

iostat工具查看进程IO请求下发的数量、系统处理IO请求的耗时,进而分析进程与操作系统的交互过程中IO方面是否存在瓶颈。

 

 

以下以Linux下举例:

 

 

单独执行iostat,显示的结果为从系统开机到当前执行时刻的统计信息。以上输出中,除最上面指示系统版本、主机名和日期的一行外,另有两部分:

avg-cpu: 总体cpu使用情况统计信息,对于多核cpu,这里为所有cpu的平均值

Device: 各磁盘设备的IO统计信息

 

 

对于cpu统计信息一行,我们主要看iowait的值,它指示cpu用于等待io请求完成的时间。Device中各列含义如下:

·        Device: 以sdX形式显示的设备名称

·        tps: 每秒进程下发的IO读、写请求数量

·        Blk_read/s: 每秒读扇区数量(一扇区为512bytes)

·        Blk_wrtn/s: 每秒写扇区数量

·        Blk_read: 取样时间间隔内读扇区总数量

·        Blk_wrtn: 取样时间间隔内写扇区总数量

我们可以使用-c选项单独显示avg-cpu部分的结果,使用-d选项单独显示Device部分的信息。

 

2.指定采样时间间隔与采样次数

与sar命令一样,我们可以以"iostatinterval [count] ”形式指定iostat命令的采样间隔和采样次数:

以上命令输出Device的信息,采样时间为1秒,采样2次,若不指定采样次数,则iostat会一直输出采样信息,直到按”ctrl+c”退出命令。注意,第1次采样信息与单独执行iostat的效果一样,为从系统开机到当前执行时刻的统计信息。

 

3.以kB为单位显示读写信息(-k选项)

我们可以使用-k选项,指定iostat的部分输出结果以kB为单位,而不是以扇区数为单位:

以上输出中,kB_read/s、kB_wrtn/s、kB_read和kB_wrtn的值均以kB为单位,相比以扇区数为单位,这里的值为原值的一半(1kB=512bytes*2)

扇区:磁道按512个字节为单位划分为等分物理空间;

 

4.更详细的io统计信息(-x选项)

为显示更详细的io设备统计信息,我们可以使用-x选项,在分析io瓶颈时,一般都会开启-x选项:

 

以上各列的含义如下:

·        rrqm/s: 每秒对该设备的读请求被合并次数,文件系统会对读取同块(block)的请求进行合并

·        wrqm/s: 每秒对该设备的写请求被合并次数

·        r/s: 每秒完成的读次数

·        w/s: 每秒完成的写次数

·        rkB/s: 每秒读数据量(kB为单位)

·        wkB/s: 每秒写数据量(kB为单位)

·        avgrq-sz:平均每次IO操作的数据量(扇区数为单位)·

·        avgqu-sz: 平均等待处理的IO请求队列长度

·        await: 平均每次IO请求等待时间(包括等待时间和处理时间,毫秒为单位)

·        svctm: 平均每次IO请求的处理时间(毫秒为单位)

·        %util采用周期内用于IO操作的时间比率,即IO队列非空的时间比率

 

对于以上示例输出,我们可以获取到以下信息:

  1. 每秒向磁盘上写3.5k左右数据(wkB/s值)
  1. 每秒有0.02次IO操作(r/s+w/s),其中以写操作为主体
  1. 平均每次IO请求等待处理的时间为247.62毫秒(await),处理耗时为2.71毫秒(svctm)
  1. 等待处理的IO请求队列中,平均有0个请求驻留(avgqu-sz )

 

以上各值之间也存在联系,我们可以由一些值计算出其他数值,例如:

util = (r/s+w/s) * (svctm/1000)

对于上面的dm-3例子:util = (0+0.17)*(4.68/1000) =0.0007956 = 0.07956% =0.08%

 


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值