linux的iostat磁碟監測記載

dotaddjj發表於2012-07-10

[root@server24 ~]# iostat -x /dev/sdb*

Linux 2.6.18-128.el5 (server24) 20120710

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/swrqm/s: 每秒進行merge的讀寫運算元據。

r/sw/s:每秒進行的讀寫IO裝置次數.

Rsec/swsec/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請求的發出模式,如果awaitsrvctm基本相等,說明I/O裝置的等待時間內一直在I/O服務,I/O基本沒有等待;如果await遠大於srvctmI/O佇列太長,I/O裝置的等待時間過多,可以考慮在軟硬體上著手。比如應用的業務修改,減小I/O的請求,或者更換磁碟和cpu

除此iostat還可以查詢cpu的具體資訊。

[root@server24 ~]# iostat -c

Linux 2.6.18-128.el5 (server24) 20120710

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) 20120710

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/skb_wrtn/s每秒I/O請求的kb資料量,由於預設的是以扇區做單位也就是512bytes的單位,加上-k後以kb為單位來衡量I/O請求。

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25362835/viewspace-1058783/,如需轉載,請註明出處,否則將追究法律責任。

相關文章