[root@server24 ~]# iostat -x /dev/sdb*
Linux 2.6.18-128.el5 (server24) 2012年07月10日
avg-cpu: %user %nice %system %iowait %steal %idle
12.10 0.02 0.71 2.33 0.00 84.83
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
sdb 0.32 10.16 5.13 3.02 292.06 105.34 48.79 0.31 38.14 9.43 7.68
sdb1 0.05 0.86 0.57 0.43 50.28 10.38 60.31 0.07 73.90 23.96 2.41
sdb2 0.00 0.00 0.17 0.00 21.98 0.00 127.48 0.00 3.30 2.51 0.04
sdb3 0.27 9.29 4.38 2.58 219.80 94.95 45.18 0.24 33.84 10.31 7.18
rrqm/s和wrqm/s: 每秒进行merge的读写操作数据。
r/s和w/s:每秒进行的读写IO设备次数.
Rsec/s和wsec/s:每秒读写的扇区数。
Avgrq-sz:平均每次设备I/O等待时间,即是每秒读写的扇区数除以每秒读写的IO设备次数。
Avgqu-sz:平均I/O队列长度。
Await:平均每秒I/O设备操作的等待时间,单位毫秒。
Svctm:平均每次I/O设别操作的服务时间,单位毫秒。
Util:每秒的IO设别的繁忙百分比,也就是每秒的I/O队列中非空的百分比。
Until过大,I/O过于繁忙,磁盘可能存在瓶颈或者说系统对于磁盘请求过多,磁盘可能无法满足系统的IO请求。Svctm一般小于await,和oracle的等待时间计算一样,可能会出现同时等待。
Srvctl设备I/O服务时间跟磁盘性能,cpu和内存的负荷都相关,好的磁盘的I/O能力更突出,性能强的cpu和足够的内存,请求的I/O设备的服务时间会越短,相应的srvctl也就越小了。
Await的大小取决于srvctm以及I/O队列的长度和I/O请求的发出模式,如果await和srvctm基本相等,说明I/O设备的等待时间内一直在I/O服务,I/O基本没有等待;如果await远大于srvctm,I/O队列太长,I/O设备的等待时间过多,可以考虑在软硬件上着手。比如应用的业务修改,减小I/O的请求,或者更换磁盘和cpu。
除此iostat还可以查询cpu的具体信息。
[root@server24 ~]# iostat -c
Linux 2.6.18-128.el5 (server24) 2012年07月10日
avg-cpu: %user %nice %system %iowait %steal %idle
12.15 0.02 0.71 2.32 0.00 84.79
其中的iowait表示的是cpu用于IO等待的百分比
一般常用的还有iostat –d –k
[root@server24 ~]# iostat -d -k /dev/sdb*
Linux 2.6.18-128.el5 (server24) 2012年07月10日
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sdb 8.11 145.46 52.48 278691068 100545374
sdb1 1.00 25.04 5.18 47977809 9933316
sdb2 0.17 10.95 0.00 20971231 4653
sdb3 6.94 109.47 47.29 209741455 90607405
其中的tps表示每秒设备传输次数,一次传输代表一次I/O请求,kb_read/s和kb_wrtn/s每秒I/O请求的kb数据量,由于默认的是以扇区做单位也就是512bytes的单位,加上-k后以kb为单位来衡量I/O请求。
[@more@]
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25362835/viewspace-1058783/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/25362835/viewspace-1058783/