標籤:查看系統資源
iostat用於輸出CPU和磁碟I/O相關的統計資訊
命令參數
-C 顯示CPU使用方式
-d 顯示磁碟使用方式
-k 以 KB 為單位顯示
-m 以 M 為單位顯示
-N 顯示磁碟陣列(LVM) 資訊
-n 顯示NFS 使用方式
-p[磁碟] 顯示磁碟和分區的情況
-t 顯示終端和CPU的資訊
-x 顯示詳細資料
-V 顯示版本資訊
avg-cpu段:
%user: 在使用者層級運行所使用的CPU的百分比.
%nice: nice操作所使用的CPU的百分比.
%sys: 在系統層級(kernel)運行所使用CPU的百分比.
%iowait: CPU等待硬體I/O時,所佔用CPU百分比.
%idle: CPU空閑時間的百分比.
Device段:
tps: 每秒鐘發送到的I/O請求數.
Blk_read /s: 每秒讀取的block數.
Blk_wrtn/s: 每秒寫入的block數.
Blk_read: 讀入的block總數.
Blk_wrtn: 寫入的block總數.
參數 -d 表示,顯示裝置(磁碟)使用狀態;-k某些使用block為單位的列強制使用Kilobytes為單位;2表示,資料顯示每隔2秒重新整理一次。
tps:該裝置每秒的傳輸次數(Indicate the number of transfers per second that were issued to the device.)。"一次傳輸"意思是"一次I/O請求"。多個邏輯請求可能會被合并為"一次I/O請求"。"一次傳輸"請求的大小是未知的。
kB_read/s:每秒從裝置(drive expressed)讀取的資料量;
kB_wrtn/s:每秒向裝置(drive expressed)寫入的資料量;
kB_read:讀取的總資料量;
kB_wrtn:寫入的總數量資料量;這些單位都為Kilobytes。
iostat還有一個比較常用的選項-x,該選項將用於顯示和io相關的擴充資料。
rrqm/s:每秒這個裝置相關的讀取請求有多少被Merge了(當系統調用需要讀取資料的時候,VFS將請求發到各個FS,如果FS發現不同的讀取請求讀取的是相同Block的資料,FS會將這個請求合并Merge);
wrqm/s:每秒這個裝置相關的寫入請求有多少被Merge了。
rsec/s:每秒讀取的扇區數;
wsec/s:每秒寫入的扇區數。
rKB/s:The number of read requests that were issued to the device per second;
wKB/s:The number of write requests that were issued to the device per second;
avgrq-sz 平均請求扇區的大小
avgqu-sz 是平均請求隊列的長度。毫無疑問,隊列長度越短越好。
await: 每一個IO請求的處理的平均時間(單位是微秒毫秒)。這裡可以理解為IO的響應 時間,一般地系統IO回應時間應該低於5ms,如果大於10ms就比較大了。
這個時間包括了隊列時間和服務時間,也就是說,一般情況下,await大於svctm,它們的差值越小,則說明隊列時間越短,反之差值越大,隊列時間越長,說明系統出了問題。
svctm 表示平均每次裝置I/O操作的服務時間(以毫秒為單位)。如果svctm的值與await很接近,表示幾乎沒有I/O等待,磁碟效能很好,如果await的值遠高於svctm的值,則表示I/O隊列等待太長, 系統上啟動並執行應用程式將變慢。
%util: 在統計時間內所有處理IO時間,除以總共統計時間。例如,如果統計間隔1秒,該裝置有0.8秒在處理IO,而0.2秒閑置,那麼該裝置的%util = 0.8/1 = 80%,所以該參數暗示了裝置的繁忙程度
。一般地,如果該參數是100%表示裝置已經接近滿負荷運行了(當然如果是多磁碟,即使%util是100%,因為磁碟的並發能力,所以磁碟使用未必就到了瓶頸)。
備忘:如果 %util 接近 100%,說明產生的I/O請求太多,I/O系統已經滿負荷,該磁碟可能存在瓶頸。如果 svctm 比較接近 await,說明 I/O 幾乎沒有等待時間;如果 await 遠大於 svctm,說明I/O 隊列太長,io響應太慢,則需要進行必要最佳化。如果avgqu-sz比較大,也表示有當量io在等待。
使用頻率高命令:
iostat -d -k 1 10 #查看TPS和輸送量資訊(磁碟讀寫速度單位為KB)
iostat -d -m 2 #查看TPS和輸送量資訊(磁碟讀寫速度單位為MB)
iostat -d -x -k 1 10 #查看裝置使用率(%util)、回應時間(await)
iostat -c 1 10 #查看cpu狀態
iostat 監視I/O子系統