ITPub博客

首页 > Linux操作系统 > Linux操作系统 > linux I/O 瓶颈监控

linux I/O 瓶颈监控

原创 Linux操作系统 作者:pingley 时间:2012-03-16 10:52:03 0 删除 编辑
linux I/O 瓶颈监控
[oracle@zeng ~]$ iostat -xd
Linux 2.6.32-71.el6.i686 (zeng)         03/16/2012      _i686_  (1 CPU)
Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
scd0              0.21     0.00    0.21    0.00     1.66     0.00     8.00     0.00    2.23   2.23   0.05
sda              18.43     0.53   12.94    2.18   761.75    21.56    51.80     0.20   13.03   5.53   8.36
-x 表示显示扩展的统计信息。
-d 表示显示设备的利用报表。
字段解释:
Device    表示设备名或者分区名。
rrqm/s    每秒总计的等待队列中写设备的请求数量。
wrqm/s    每秒总计的等待队列中读设备的请求数量。
r/s       表示每秒的读请求。
w/s       表示每秒的写请求。
rsec/s    每秒读扇区的数量。
wsec/s    每秒写扇区的数量。
avgrq-sz  平均每次I/O请求的扇区数。
avgqu-sz  平均的I/O请求的队列长度。
await     平均每次I/O请求的平均响应时间(毫秒)。
svctm     平均每次I/O请求的服务时间(毫秒).
%util     I/O请求所占用的CPU时间百分比。如果该值接近100%,意味着I/O设备已经满负荷工作。
如果发现每秒的读写数量很高,I/O请求时间占用的CPU时间接近100%,说明出现了I/O瓶颈.
[oracle@zeng ~]$ iostat
Linux 2.6.32-71.el6.i686 (zeng)         03/16/2012      _i686_  (1 CPU)
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.56    0.00    4.51    0.50    0.00   94.42
Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
scd0              0.03         0.21         0.00        384          0
sda               2.11        99.81         3.73     179708       6722
iostat 不带任何选项默认输出的是系统自上次启动以来的平均统计信息。第一部分输出的是CPU利用率情况。第二部分
输出的是磁盘I/O利用率相关的情况。可以通过指定时间间隔实时的监控I/O的状况,甚至监控次数来获得更加精细的报表。
oracle@zeng ~]$ iostat -d 5
Linux 2.6.32-71.el6.i686 (zeng)         03/16/2012      _i686_  (1 CPU)
Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
scd0              0.02         0.18         0.00        384          0
sda               1.82        85.40         3.32     179708       6986
字段解释:
tps         表示I/O设备每秒的I/O传送次数。传送指的是一次I/O请求。多个逻辑上的I/O请求可以合并为一个I/O请求。
所有一次传送对应的逻辑请求的数量是不确定的。
Blk_read/s  表示每秒从设备上读取的block数量。block的大小等于磁盘扇区的大小.kernel 2.4及其以后是512 bytes.
Blk_wrtn/s  表示每秒写入设备的block数量.
Blk_read    表示读取的block的总量。
Blk_wrtn    表示写入的block的总量。
[oracle@zeng ~]$ iostat 3 3 
Linux 2.6.32-71.el6.i686 (zeng)         03/16/2012      _i686_  (1 CPU)
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.36    0.04    3.58    0.89    0.00   95.13
Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
scd0              0.02         0.13         0.00        384          0
sda               4.03       109.23         7.45     318468      21730
每3秒报告一次I/O 状态。次数是3次。可以把上面的信息重定向输出到文件。
使用sar 进行实时,当前,历史I/O监控。
查看昨天的I/O 状态。
[oracle@zeng ~]$ sar -d -f /var/log/sa/sa15
Linux 2.6.32-71.el6.i686 (zeng)         03/15/2012      _i686_  (1 CPU)
09:51:03 AM       LINUX RESTART
10:00:01 AM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util
10:10:01 AM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:10:01 AM    dev8-0      5.14    164.58     54.68     42.69      0.02      4.70      4.15      2.13
10:20:01 AM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:20:01 AM    dev8-0      4.06      2.96     50.26     13.11      0.03      6.45      6.24      2.53
10:30:01 AM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:30:01 AM    dev8-0      2.88      0.09     38.64     13.43      0.02      5.47      5.31      1.53
10:40:01 AM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:40:01 AM    dev8-0      4.75    182.14    219.21     84.55      0.04      8.48      6.55      3.11
-d 表示的是每一个块设备(block device)。
[oracle@zeng ~]$ iostat -xd
Linux 2.6.32-71.el6.i686 (zeng)         03/16/2012      _i686_  (1 CPU)
Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
scd0              0.21     0.00    0.21    0.00     1.66     0.00     8.00     0.00    2.23   2.23   0.05
sda              18.43     0.53   12.94    2.18   761.75    21.56    51.80     0.20   13.03   5.53   8.36
-x 表示显示扩展的统计信息。
-d 表示显示设备的利用报表。
字段解释:
Device    表示设备名或者分区名。
rrqm/s    每秒总计的等待队列中写设备的请求数量。
wrqm/s    每秒总计的等待队列中读设备的请求数量。
r/s       表示每秒的读请求。
w/s       表示每秒的写请求。
rsec/s    每秒读扇区的数量。
wsec/s    每秒写扇区的数量。
avgrq-sz  平均每次I/O请求的扇区数。
avgqu-sz  平均的I/O请求的队列长度。
await     平均每次I/O请求的平响应时间(毫秒)。
svctm     平均每次I/O请求的服务时间(毫秒).
%util     I/O请求所占用的CPU时间百分比。如果该值接近100%,意味着I/O设备已经满负荷工作。
如果发现每秒的读写数量很高,I/O请求时间占用的CPU时间接近100%,说明出现了I/O瓶颈.
[oracle@zeng ~]$ iostat
Linux 2.6.32-71.el6.i686 (zeng)         03/16/2012      _i686_  (1 CPU)
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.56    0.00    4.51    0.50    0.00   94.42
Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
scd0              0.03         0.21         0.00        384          0
sda               2.11        99.81         3.73     179708       6722
iostat 不带任何选项默认输出的是系统自上次启动以来的平均统计信息。第一部分输出的是CPU利用率情况。第二部分
输出的是磁盘I/O利用率相关的情况。可以通过指定时间间隔实时的监控I/O的状况,甚至监控次数来获得更加精细的报表。
oracle@zeng ~]$ iostat -d 5
Linux 2.6.32-71.el6.i686 (zeng)         03/16/2012      _i686_  (1 CPU)
Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
scd0              0.02         0.18         0.00        384          0
sda               1.82        85.40         3.32     179708       6986
字段解释:
tps         表示I/O设备每秒的I/O传送次数。传送指的是一次I/O请求。多个逻辑上的I/O请求可以合并为一个I/O请求。
所有一次传送对应的逻辑请求的数量是不确定的。
Blk_read/s  表示每秒从设备上读取的block数量。block的大小等于磁盘扇区的大小.kernel 2.4及其以后是512 bytes.
Blk_wrtn/s  表示每秒写入设备的block数量.
Blk_read    表示读取的block的总量。
Blk_wrtn    表示写入的block的总量。
[oracle@zeng ~]$ iostat 3 3 
Linux 2.6.32-71.el6.i686 (zeng)         03/16/2012      _i686_  (1 CPU)
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.36    0.04    3.58    0.89    0.00   95.13
Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
scd0              0.02         0.13         0.00        384          0
sda               4.03       109.23         7.45     318468      21730
每3秒报告一次I/O 状态。次数是3次。可以把上面的信息重定向输出到文件。
使用sar 进行实时,当前,历史I/O监控。
查看昨天的I/O 状态。
[oracle@zeng ~]$ sar -d -f /var/log/sa/sa15
Linux 2.6.32-71.el6.i686 (zeng)         03/15/2012      _i686_  (1 CPU)
09:51:03 AM       LINUX RESTART
10:00:01 AM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util
10:10:01 AM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:10:01 AM    dev8-0      5.14    164.58     54.68     42.69      0.02      4.70      4.15      2.13
10:20:01 AM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:20:01 AM    dev8-0      4.06      2.96     50.26     13.11      0.03      6.45      6.24      2.53
10:30:01 AM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:30:01 AM    dev8-0      2.88      0.09     38.64     13.43      0.02      5.47      5.31      1.53
10:40:01 AM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:40:01 AM    dev8-0      4.75    182.14    219.21     84.55      0.04      8.48      6.55      3.11
-d 表示的是每一个块设备(block device)。
-f 指定读取的历史I/O 状态统计文件。
字段解释:
rd_sec/s  每秒从设备中读入的扇区数量。大小为512bytes.
wr_sec/s  每秒写入设备的扇区数量.大小为512bytes。
avgrq-sz  平均每次I/O请求的扇区数。
avgqu-sz  平均I/O请求的队列长度。
输出中的其他字段同iostat。如果每秒从设备中读取、写入的扇出数量很大。说明出现了I/O 瓶颈。确定了什么时间
出现了I/O 瓶颈再通过其他工具.比如oracle AWR确定具体是什么事件导致的I/O 瓶颈。
sar 用作实时I/O 状态统计。
[oracle@zeng ~]$ sar -d 3 5
Linux 2.6.32-71.el6.i686 (zeng)         03/16/2012      _i686_  (1 CPU)
10:49:20 AM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util
10:49:23 AM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
10:49:23 AM    dev8-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
sar 用作当天的I/O 状态统计。
[oracle@zeng ~]$ sar -d 
Linux 2.6.32-71.el6.i686 (zeng)         03/16/2012      _i686_  (1 CPU)
08:57:26 AM       LINUX RESTART
09:00:02 AM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util
09:10:01 AM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
09:10:01 AM    dev8-0      0.36      6.18      1.67     21.68      0.00      7.89      6.35      0.23
09:20:02 AM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
记得要加-d 选项。表示报告块设备的活动信息统计。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26110315/viewspace-718721/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-02-06

  • 博文量
    169
  • 访问量
    745387