您好,登錄后才能下訂單哦!
1、dstat
[root@test ~]# dstat
----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--
usr sys idl wai hiq siq| read writ| recv send| in out | int csw
0 1 97 2 0 0| 22k 5834B| 0 0 | 0 0 | 30 39
0 0 100 0 0 0| 0 0 | 826B 826B| 0 0 | 25 37
0 0 100 0 0 0| 0 0 | 424B 346B| 0 0 | 20 33
0 0 100 0 0 0| 0 0 | 396B 346B| 0 0 | 23 40
0 0 100 0 0 0| 0 0 | 364B 346B| 0 0 | 25 40
1 0 98 0 0 1| 0 0 | 212B 346B| 0 0 | 20 35
常用 dstat -r -d
[root@test ~]# dstat -r -d
--io/total- -dsk/total-
read writ| read writ
0.71 0.44 | 22k 5784B
0 0 | 0 0
0 0 | 0 0
0 0 | 0 0
0 0 | 0 0
0 0 | 0 0
0 0 | 0 0
查看占用進程最多的io
[root@test ~]# dstat --top-io
----most-expensive----
i/o process
bash 38k 619B
sshd: root@ 146B 196B
sshd: root@ 78B 116B
sshd: root@ 78B 116B
2、iostat
$iostat -d -k 1 10
參數 -d 表示,顯示設備(磁盤)使用狀態;-k某些使用block為單位的列強制使用Kilobytes為單位;1 10表示,數據顯示每隔1秒刷新一次,共顯示10次
rrqm/s: 每秒進行 merge 的讀操作數目。即 delta(rmerge)/s
wrqm/s: 每秒進行 merge 的寫操作數目。即 delta(wmerge)/s
r/s: 每秒完成的讀 I/O 設備次數。即 delta(rio)/s
w/s: 每秒完成的寫 I/O 設備次數。即 delta(wio)/s
rsec/s: 每秒讀扇區數。即 delta(rsect)/s
wsec/s: 每秒寫扇區數。即 delta(wsect)/s
rkB/s: 每秒讀K字節數。是 rsect/s 的一半,因為每扇區大小為512字節。(需要計算)
wkB/s: 每秒寫K字節數。是 wsect/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)
%util: 一秒中有百分之多少的時間用于 I/O 操作,或者說一秒中有多少時間 I/O 隊列是非空的。即 delta(use)/s/1000 (因為use的單位為毫秒)
如果 %util 接近 100%,說明產生的I/O請求太多,I/O系統已經滿負荷,該磁盤
可能存在瓶頸。
idle小于70% IO壓力就較大了,一般讀取速度有較多的wait.
同時可以結合vmstat 查看查看b參數(等待資源的進程數)和wa參數(IO等待所占用的CPU時間的百分比,高過30%時IO壓力高)
[root@test ~]# iostat -d -k 2
Linux 2.6.32-279.el6.x86_64 (test) 12/22/2014 _x86_64_ (1 CPU)
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 1.07 20.18 5.32 143249 37750
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 0.00 0.00 0.00 0 0
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 0.00 0.00 0.00 0 0
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 0.00 0.00 0.00 0 0
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 -d -k 1 10 #查看TPS和吞吐量信息
iostat -d -x -k 1 10 #查看設備使用率(%util)、響應時間(await)
iostat -c 1 10 #查看cpu狀態
[命令:] iostat [-c|-d] [-k] [-t] [間隔描述] [檢測次數]
參 數:
-c : 僅顯示cpu的狀態
-d : 僅顯示存儲設備的狀態,不可以和-c一起使用
-k : 默認顯示的是讀入讀出的block信息,用-k可以改成KB大小來顯示
-t : 顯示日期
-p device | ALL : device為某個設備或者某個分區,如果使用ALL,就表示要顯示所有分區和設備的信息
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。