linux系統iostat命令詳解


iostat  -k 3 5  (以KB為單位,每3秒統計一次,共統計5次)

• avg-cpu: 總體cpu使用情況統計信息,對於多核cpu,這里為所有cpu的平均值
    %user    用戶空間占用CPU百分比
    %nice 用戶進程空間內改變過優先級的進程占用CPU百分比
    %system  內核空間占用CPU百分比
    %iowait  IO等待占用百分比
    %steal  虛擬機占用百分比
    %idle 空閑百分比

• Device: 各磁盤設備的IO統計信息
• tps:每秒IO次數
• kB_read/s:每秒從設備(drive expressed)讀取的數據量
• kB_wrtn/s:每秒向設備(drive expressed)寫入的數據量
• kB_read:讀取的總數據量
• kB_wrtn:寫入的總數據量


iostat  -x  詳細信息.

rrqm/s:每秒進行merge的讀操作數目。即delta(rmerge)/s
wrqm/s:每秒進行merge的寫操作數目。即delta(wmerge)/s
r/s:每秒完成的讀I/O設備次數。即delta(rio)/s
w/s:每秒完成的寫I/0設備次數。即delta(wio)/s
rsec/s:每秒讀扇區數。即delta(rsect)/s
wsec/s:每秒寫扇區數。即delta(wsect)/s
rKB/s:每秒讀K字節數。是rsec/s的一半,因為每扇區大小為512字節
wKB/s:每秒寫K字節數。是wsec/s的一半
avgrq-sz:平均每次設備I/O操作的數據大小(扇區)。即delta(rsect+wsect)/delta(rio+wio)
avgqu-sz:平均I/O隊列長度。即delta(aveq)/s/1000(因為aveq的單位為毫秒)
await:平均每次設備I/O操作的等待時間(毫秒)。即delta(ruse+wuse)/delta(rio+wio)
svctm:平均每次設備I/O操作的服務時間(毫秒)。即delta(use)/delta(rio+wio)  !!!svctm越接近於await則說明等待時間少
%util:一秒中有百分之多少的時間用於I/O操作,或者說一秒中有多少時間I/O隊列是非空的。80%表示設備已經很忙了,即delta(usr)/s/1000(因為use的單位為毫秒)


重點指標:r/s,w/s,avgqu-sz,await,svctm,%util

性能判斷依據:

1、%util很大 超過80%
2、await遠大於svctm
3、avgqu-sz 隊列很長
4、r/s,w/s,IO讀寫次數頻繁
5、IO等待時間占用百分比大 %iowait
    iowait% <20%      良好
    iowait% <35%      一般
    iowait% >50%
6、svctm一般要小於await(因為同時等待的請求的等待時間被重復計算了),svctm的大小一般和磁盤性能有關,CPU/內存的負荷也會對其有影響,請求過多也會間接導致svctm的增加。
7、await的大小一般取決於服務時間(svctm)以及I/O隊列的長度和I/O請求的發出模式。如果svctm比較接近await,說明I/O幾乎沒有等待時間;
8、如果await遠大於svctm,說明I/O隊列太長,應用得到的響應時間變慢,如果響應時間超過了用戶可以容許的范圍,這時可以考慮更換更快的磁盤,調整內核elevator算法,優化應用,或者升級CPU

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM