linux下iostat命令詳解


iostat用於輸出CPU和磁盤I/O相關的統計信息

iostat語法

用法:iostat [ 選項 ] [ <時間間隔> [ <次數> ]]

常用選項說明:

-c:只顯示系統CPU統計信息,即單獨輸出avg-cpu結果,不包括device結果
-d:單獨輸出Device結果,不包括cpu結果
-k/-m:輸出結果以kB/mB為單位,而不是以扇區數為單位
-x:輸出更詳細的io設備統計信息
interval/count:每次輸出間隔時間,count表示輸出次數,不帶count表示循環輸出

說明:更多選項使用使用man iostat查看

常用實例

1、iostat,結果為從系統開機到當前執行時刻的統計信息

 

輸出含義:

    avg-cpu: 總體cpu使用情況統計信息,對於多核cpu,這里為所有cpu的平均值。重點關注iowait值,表示CPU用於等待io請求的完成時間。

    Device: 各磁盤設備的IO統計信息。各列含義如下:

Device: 以sdX形式顯示的設備名稱
tps: 每秒進程下發的IO讀、寫請求數量
KB_read/s: 每秒從驅動器讀入的數據量,單位為K。
KB_wrtn/s: 每秒從驅動器寫入的數據量,單位為K。
KB_read: 讀入數據總量,單位為K。
KB_wrtn: 寫入數據總量,單位為K。

2、iostat -x -k -d 1 2。每隔1S輸出磁盤IO的詳細詳細,總共采樣2次。

 

以上各列的含義如下:
rrqm/s: 每秒對該設備的讀請求被合並次數,文件系統會對讀取同塊(block)的請求進行合並
wrqm/s: 每秒對該設備的寫請求被合並次數
r/s: 每秒完成的讀次數
w/s: 每秒完成的寫次數
rkB/s: 每秒讀數據量(kB為單位)
wkB/s: 每秒寫數據量(kB為單位)
avgrq-sz:平均每次IO操作的數據量(扇區數為單位)
avgqu-sz: 平均等待處理的IO請求隊列長度
await: 平均每次IO請求等待時間(包括等待時間和處理時間,毫秒為單位)
svctm: 平均每次IO請求的處理時間(毫秒為單位)
%util: 采用周期內用於IO操作的時間比率,即IO隊列非空的時間比率

 重點關注參數

1、iowait% 表示CPU等待IO時間占整個CPU周期的百分比,如果iowait值超過50%,或者明顯大於%system、%user以及%idle,表示IO可能存在問題。

2、avgqu-sz 表示磁盤IO隊列長度,即IO等待個數。

3、await 表示每次IO請求等待時間,包括等待時間和處理時間

4、svctm 表示每次IO請求處理的時間

5、%util 表示磁盤忙碌情況,一般該值超過80%表示該磁盤可能處於繁忙狀態。

 

疑惑:dm-0/1/2是什么?怎么來的?

查看磁盤信息:

發現根本沒有dm字樣,那到底怎么來的?

我們根據可以得知:

dm-0、dm-1、dm-2的主設備號是253(是linux內核留給本地使用的設備號),次設備號分別是0、1、2,這類設備在/dev/mapper中

 

看到dm-0、dm-1、dm-2的詳細設備名后,知道這三個設備是屬於centos邏輯卷組的lvm設備。

這下找到dm的真正含義了~

 


免責聲明!

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



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