linux 查看磁盤IO狀態(tài)操作指南
發(fā)布日期:2022-04-01 19:46 | 文章來(lái)源:源碼之家
Linux系統(tǒng)出現(xiàn)了性能問(wèn)題,一般我們可以通過(guò)top.iostat,vmstat等命令來(lái)查看初步定位問(wèn)題。其中iostat可以給我們提供豐富的IO狀態(tài)數(shù)據(jù)。 www.jb51.net
iostat結(jié)果分析
[kefu@SZ-8 linux]$ iostat -x -k
Linux 2.6.18-128.el5_cyou_1.0 (SZ-8.30) 09/08/2011
avg-cpu: %user %nice %system %iowait %steal %idle
16.58 0.00 2.79 0.46 0.00 80.16
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
sda 0.06 29.28 0.22 37.14 10.21 265.68 14.77 0.02 0.51 0.15 0.55
sda1 0.00 0.00 0.00 0.00 0.00 0.00 10.79 0.00 2.66 2.43 0.00
sda2 0.01 0.78 0.10 0.36 0.81 4.58 23.51 0.00 1.21 0.84 0.04
sda3 0.03 15.17 0.09 35.39 8.98 202.24 11.91 0.01 0.26 0.12 0.44
sda4 0.00 0.00 0.00 0.00 0.00 0.00 2.00 0.00 33.33 33.33 0.00
sda5 0.01 1.59 0.03 0.51 0.34 8.40 32.20 0.00 1.19 0.58 0.03
sda6 0.00 0.00 0.00 0.12 0.00 0.48 8.18 0.00 5.02 4.53 0.05
sda7 0.00 0.00 0.00 0.00 0.00 0.00 45.00 0.00 5.52 3.04 0.00
sda8 0.00 0.00 0.00 0.00 0.00 0.00 40.88 0.00 7.62 6.03 0.00
sda9 0.00 0.00 0.00 0.00 0.00 0.00 39.71 0.00 7.37 5.83 0.00
sda10 0.00 0.00 0.00 0.00 0.00 0.00 37.57 0.00 5.70 3.54 0.00
sda11 0.00 11.74 0.01 0.76 0.08 49.97 131.48 0.01 10.74 0.57 0.04
sdb 0.01 3.91 20.24 20.21 1262.95 1853.94 154.09 0.52 12.84 1.97 7.95
rrqm/s:每秒進(jìn)行merge的讀操作數(shù)目。即delta(rmerge)/s
wrqm/s:每秒進(jìn)行merge的寫操作數(shù)目。即delta(wmerge)/s
r/s:每秒完成的讀I/O設(shè)備次數(shù)。即delta(rio)/s
w/s:每秒完成的寫I/0設(shè)備次數(shù)。即delta(wio)/s
rsec/s:每秒讀扇區(qū)數(shù)。即delta(rsect)/s
wsec/s:每秒寫扇區(qū)數(shù)。即delta(wsect)/s
rKB/s:每秒讀K字節(jié)數(shù)。是rsec/s的一半,因?yàn)槊可葏^(qū)大小為512字節(jié)
wKB/s:每秒寫K字節(jié)數(shù)。是wsec/s的一半
avgrq-sz:平均每次設(shè)備I/O操作的數(shù)據(jù)大小(扇區(qū))。即delta(rsect+wsect)/delta(rio+wio)
avgqu-sz:平均I/O隊(duì)列長(zhǎng)度。即delta(aveq)/s/1000(因?yàn)閍veq的單位為毫秒)
await:平均每次設(shè)備I/O操作的等待時(shí)間(毫秒)。即delta(ruse+wuse)/delta(rio+wio)
svctm:平均每次設(shè)備I/O操作的服務(wù)時(shí)間(毫秒)。即delta(use)/delta(rio+wio)
%util:一秒中有百分之多少的時(shí)間用于I/O操作,或者說(shuō)一秒中有多少時(shí)間I/O隊(duì)列是非空的。即delta(usr)/s/1000(因?yàn)閡se的單位為毫秒)
如果%util接近100%,說(shuō)明產(chǎn)生的I/O請(qǐng)求太多,I/O系統(tǒng)已經(jīng)滿負(fù)載,該磁盤可能存在瓶頸。
比較重要的參數(shù)
%util:一秒中有百分之多少的時(shí)間用于I/O操作,或者說(shuō)一秒中有多少時(shí)間I/O隊(duì)列是非空的
svctm:平均每次設(shè)備I/O操作的服務(wù)時(shí)間
await:平均每次設(shè)備I/O操作的等待時(shí)間
avgqu-sz:平均I/O隊(duì)列長(zhǎng)度
如果%util接近100%,表明I/O請(qǐng)求太多,I/O系統(tǒng)已經(jīng)滿負(fù)荷,磁盤可能存在瓶頸,一般%util大于70%,I/O壓力就比較大,讀取速度有較多的wait。
同時(shí)可以結(jié)合vmstat查看查看b參數(shù)(等待資源的進(jìn)程數(shù))和wa參數(shù)(I/O等待所占用的CPU時(shí)間的百分比,高過(guò)30%時(shí)I/O壓力高)
await的大小一般取決于服務(wù)時(shí)間(svctm)以及I/O隊(duì)列的長(zhǎng)度和I/O請(qǐng)求的發(fā)出模式。如果svctm比較接近await,說(shuō)明I/O幾乎沒(méi)有等待時(shí)間;如果
await遠(yuǎn)大于svctm,說(shuō)明I/O隊(duì)列太長(zhǎng),應(yīng)用得到的響應(yīng)時(shí)間變慢。
形象的比喻
r/s+w/s類似于交款人的總數(shù)
平均隊(duì)列長(zhǎng)度(avgqu-sz)類似于單位時(shí)間里平均排隊(duì)的人數(shù)
平均服務(wù)時(shí)間(avctm)類似于收銀員的收款速度
平均等待時(shí)間(await)類似于平均每人的等待時(shí)間
平均I/O數(shù)據(jù)(avgrq-sz)類似于平均每人所買的東西
I/O操作率(%util)類似于收款臺(tái)前有人排隊(duì)的時(shí)間比例
svctm一般要小于await(因?yàn)橥瑫r(shí)等待的請(qǐng)求的等待時(shí)間被重復(fù)計(jì)算了),svctm的大小一般和磁盤性能有關(guān),CPU/內(nèi)存的負(fù)荷也會(huì)對(duì)其有影響,請(qǐng)求過(guò)多也會(huì)
間接導(dǎo)致svctm的增加。await的大小一般取決于服務(wù)時(shí)間(svctm)以及I/O隊(duì)列的長(zhǎng)度和I/O請(qǐng)求的發(fā)出模式。如果svctm比較接近await,說(shuō)明I/O幾乎沒(méi)有
等待時(shí)間;如果await遠(yuǎn)大于svctm,說(shuō)明I/O隊(duì)列太長(zhǎng),應(yīng)用得到的響應(yīng)時(shí)間變慢,如果響應(yīng)時(shí)間超過(guò)了用戶可以容許的范圍,這時(shí)可以考慮更換更快的磁盤,調(diào)
整內(nèi)核elevator算法,優(yōu)化應(yīng)用,或者升級(jí)CPU
隊(duì)列長(zhǎng)度(avcqu-sz)也可作為衡量系統(tǒng)I/O負(fù)荷的指標(biāo),但由于avcqu-sz是按照單位時(shí)間的平均值,所以不能反映瞬間的I/O洪水。
iostat結(jié)果分析
[kefu@SZ-8 linux]$ iostat -x -k
Linux 2.6.18-128.el5_cyou_1.0 (SZ-8.30) 09/08/2011
avg-cpu: %user %nice %system %iowait %steal %idle
16.58 0.00 2.79 0.46 0.00 80.16
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
sda 0.06 29.28 0.22 37.14 10.21 265.68 14.77 0.02 0.51 0.15 0.55
sda1 0.00 0.00 0.00 0.00 0.00 0.00 10.79 0.00 2.66 2.43 0.00
sda2 0.01 0.78 0.10 0.36 0.81 4.58 23.51 0.00 1.21 0.84 0.04
sda3 0.03 15.17 0.09 35.39 8.98 202.24 11.91 0.01 0.26 0.12 0.44
sda4 0.00 0.00 0.00 0.00 0.00 0.00 2.00 0.00 33.33 33.33 0.00
sda5 0.01 1.59 0.03 0.51 0.34 8.40 32.20 0.00 1.19 0.58 0.03
sda6 0.00 0.00 0.00 0.12 0.00 0.48 8.18 0.00 5.02 4.53 0.05
sda7 0.00 0.00 0.00 0.00 0.00 0.00 45.00 0.00 5.52 3.04 0.00
sda8 0.00 0.00 0.00 0.00 0.00 0.00 40.88 0.00 7.62 6.03 0.00
sda9 0.00 0.00 0.00 0.00 0.00 0.00 39.71 0.00 7.37 5.83 0.00
sda10 0.00 0.00 0.00 0.00 0.00 0.00 37.57 0.00 5.70 3.54 0.00
sda11 0.00 11.74 0.01 0.76 0.08 49.97 131.48 0.01 10.74 0.57 0.04
sdb 0.01 3.91 20.24 20.21 1262.95 1853.94 154.09 0.52 12.84 1.97 7.95
rrqm/s:每秒進(jìn)行merge的讀操作數(shù)目。即delta(rmerge)/s
wrqm/s:每秒進(jìn)行merge的寫操作數(shù)目。即delta(wmerge)/s
r/s:每秒完成的讀I/O設(shè)備次數(shù)。即delta(rio)/s
w/s:每秒完成的寫I/0設(shè)備次數(shù)。即delta(wio)/s
rsec/s:每秒讀扇區(qū)數(shù)。即delta(rsect)/s
wsec/s:每秒寫扇區(qū)數(shù)。即delta(wsect)/s
rKB/s:每秒讀K字節(jié)數(shù)。是rsec/s的一半,因?yàn)槊可葏^(qū)大小為512字節(jié)
wKB/s:每秒寫K字節(jié)數(shù)。是wsec/s的一半
avgrq-sz:平均每次設(shè)備I/O操作的數(shù)據(jù)大小(扇區(qū))。即delta(rsect+wsect)/delta(rio+wio)
avgqu-sz:平均I/O隊(duì)列長(zhǎng)度。即delta(aveq)/s/1000(因?yàn)閍veq的單位為毫秒)
await:平均每次設(shè)備I/O操作的等待時(shí)間(毫秒)。即delta(ruse+wuse)/delta(rio+wio)
svctm:平均每次設(shè)備I/O操作的服務(wù)時(shí)間(毫秒)。即delta(use)/delta(rio+wio)
%util:一秒中有百分之多少的時(shí)間用于I/O操作,或者說(shuō)一秒中有多少時(shí)間I/O隊(duì)列是非空的。即delta(usr)/s/1000(因?yàn)閡se的單位為毫秒)
如果%util接近100%,說(shuō)明產(chǎn)生的I/O請(qǐng)求太多,I/O系統(tǒng)已經(jīng)滿負(fù)載,該磁盤可能存在瓶頸。
比較重要的參數(shù)
%util:一秒中有百分之多少的時(shí)間用于I/O操作,或者說(shuō)一秒中有多少時(shí)間I/O隊(duì)列是非空的
svctm:平均每次設(shè)備I/O操作的服務(wù)時(shí)間
await:平均每次設(shè)備I/O操作的等待時(shí)間
avgqu-sz:平均I/O隊(duì)列長(zhǎng)度
如果%util接近100%,表明I/O請(qǐng)求太多,I/O系統(tǒng)已經(jīng)滿負(fù)荷,磁盤可能存在瓶頸,一般%util大于70%,I/O壓力就比較大,讀取速度有較多的wait。
同時(shí)可以結(jié)合vmstat查看查看b參數(shù)(等待資源的進(jìn)程數(shù))和wa參數(shù)(I/O等待所占用的CPU時(shí)間的百分比,高過(guò)30%時(shí)I/O壓力高)
await的大小一般取決于服務(wù)時(shí)間(svctm)以及I/O隊(duì)列的長(zhǎng)度和I/O請(qǐng)求的發(fā)出模式。如果svctm比較接近await,說(shuō)明I/O幾乎沒(méi)有等待時(shí)間;如果
await遠(yuǎn)大于svctm,說(shuō)明I/O隊(duì)列太長(zhǎng),應(yīng)用得到的響應(yīng)時(shí)間變慢。
形象的比喻
r/s+w/s類似于交款人的總數(shù)
平均隊(duì)列長(zhǎng)度(avgqu-sz)類似于單位時(shí)間里平均排隊(duì)的人數(shù)
平均服務(wù)時(shí)間(avctm)類似于收銀員的收款速度
平均等待時(shí)間(await)類似于平均每人的等待時(shí)間
平均I/O數(shù)據(jù)(avgrq-sz)類似于平均每人所買的東西
I/O操作率(%util)類似于收款臺(tái)前有人排隊(duì)的時(shí)間比例
svctm一般要小于await(因?yàn)橥瑫r(shí)等待的請(qǐng)求的等待時(shí)間被重復(fù)計(jì)算了),svctm的大小一般和磁盤性能有關(guān),CPU/內(nèi)存的負(fù)荷也會(huì)對(duì)其有影響,請(qǐng)求過(guò)多也會(huì)
間接導(dǎo)致svctm的增加。await的大小一般取決于服務(wù)時(shí)間(svctm)以及I/O隊(duì)列的長(zhǎng)度和I/O請(qǐng)求的發(fā)出模式。如果svctm比較接近await,說(shuō)明I/O幾乎沒(méi)有
等待時(shí)間;如果await遠(yuǎn)大于svctm,說(shuō)明I/O隊(duì)列太長(zhǎng),應(yīng)用得到的響應(yīng)時(shí)間變慢,如果響應(yīng)時(shí)間超過(guò)了用戶可以容許的范圍,這時(shí)可以考慮更換更快的磁盤,調(diào)
整內(nèi)核elevator算法,優(yōu)化應(yīng)用,或者升級(jí)CPU
隊(duì)列長(zhǎng)度(avcqu-sz)也可作為衡量系統(tǒng)I/O負(fù)荷的指標(biāo),但由于avcqu-sz是按照單位時(shí)間的平均值,所以不能反映瞬間的I/O洪水。
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
相關(guān)文章
關(guān)注官方微信