使用iostat分析IO性能

使用iostat分析IO性能linux

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

1.不加選項執行iostatexpress

[patrickxu@vm1 ~]$ iostat
Linux 2.6.32-279.19.3.el6.ucloud.x86_64 (vm1)   06/11/2017  _x86_64_    (8 CPU)性能

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.08    0.00    0.06    0.00    0.00   99.86ui

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
vda               0.45         0.29         8.10    6634946  183036680
vdb               0.12         3.11        30.55   70342034  689955328spa

單獨執行iostat,顯示的結果爲從系統開機到當前執行時刻的統計信息。隊列

以上輸出中,包含三部分:進程

選項內存

說明ci

第一行

最上面指示系統版本、主機名和當前日期

avg-cpu

整體cpu使用狀況統計信息,對於多核cpu,這裏爲全部cpu的平均值

Device

各磁盤設備的IO統計信息

Device中各列參數含義以下:

選項

說明

%user

CPU在用戶態執行進程的時間百分比。

%nice

CPU在用戶態模式下,用於nice操做,所佔用CPU總時間的百分比

%system

CPU處在內核態執行進程的時間百分比

%iowait

CPU用於等待I/O操做佔用CPU總時間的百分比

%steal

管理程序(hypervisor)爲另外一個虛擬進程提供服務而等待虛擬CPU的百分比

%idle

CPU空閒時間百分比

1. 若 %iowait 的值太高,表示硬盤存在I/O瓶頸

2. 若 %idle 的值高但系統響應慢時,有多是CPU等待分配內存,此時應加大內存容量

3. 若 %idle 的值持續低於1,則系統的CPU處理能力相對較低,代表系統中最須要解決的資源是 CPU

avg-cpu中各列參數含義以下:

選項

說明

Device

設備名稱

tps

每秒向磁盤設備請求數據的次數,包括讀、寫請求,爲rtps與wtps的和。出於效率考慮,每一次IO下發後並非當即處理請求,而是將請求合併(merge),這裏tps指請求合併後的請求計數。

Blk_read/s

Indicate the amount of data read from the device expressed in a number of blocks per second. Blocks are equivalent to sectors with kernels 2.4 and later and therefore have a size of 512 bytes. With older kernels, a block is of indeterminate size.

Blk_wrtn/s

Indicate the amount of data written to the device expressed in a number of blocks per second.

Blk_read

取樣時間間隔內讀扇區總數量

Blk_wrtn

取樣時間間隔內寫扇區總數量

咱們可使用-c選項單獨顯示avg-cpu部分的結果,使用-d選項單獨顯示Device部分的信息。

2.指定採樣時間間隔與採樣次數

與sar命令同樣,咱們能夠以」iostat interval [count] 」形式指定iostat命令的採樣間隔和採樣次數:

[patrickxu@vm1 ~]$ iostat -d 2 3
Linux 2.6.32-279.19.3.el6.ucloud.x86_64 (vm1)   06/12/2017  _x86_64_    (8 CPU)

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
vda               0.45         0.29         8.10    6634946  183051408
vdb               0.12         3.11        30.55   70342034  689955328

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
vda               0.00         0.00         0.00          0          0
vdb               0.00         0.00         0.00          0          0

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
vda               1.50         0.00        12.00          0         24
vdb               0.00         0.00         0.00          0          0

以上命令輸出Device的信息,採樣時間爲1秒,採樣2次,若不指定採樣次數,則iostat會一直輸出採樣信息,直到按」ctrl+c」退出命令。注意,第1次採樣信息與單獨執行iostat的效果同樣,爲從系統開機到當前執行時刻的統計信息。

3.以kB爲單位顯示讀寫信息(-k選項)/以mB爲單位顯示讀寫信息(-m選項)

咱們可使用-k選項,指定iostat的部分輸出結果以kB爲單位,而不是以扇區數爲單位:

[patrickxu@vm1 ~]$ iostat -d -k
Linux 2.6.32-279.19.3.el6.ucloud.x86_64 (vm1)   06/12/2017  _x86_64_    (8 CPU)

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
vda               0.45         0.15         4.05    3317473   91525980
vdb               0.12         1.56        15.27   35171017  344977664

 

以上輸出中,kB_read/s、kB_wrtn/s、kB_read和kB_wrtn的值均以kB爲單位,相比以扇區數爲單位,這裏的值爲原值的一半(1kB=512bytes*2)

4.更詳細的io統計信息(-x選項)

爲顯示更詳細的io設備統計信息,咱們可使用-x選項,在分析io瓶頸時,通常都會開啓-x選項:

linux # iostat -x -k -d 1
Linux 2.6.16.60-0.21-smp (linux)     06/13/12

……
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0.00  9915.00    1.00   90.00     4.00 34360.00   755.25    11.79  120.57   6.33  57.60

 

以上各列的含義以下:

選項

說明

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隊列非空的時間比率

對於以上示例輸出,咱們能夠獲取到如下信息:

- 每秒向磁盤上寫30M左右數據(wkB/s值)

- 每秒有91次IO操做(r/s+w/s),其中以寫操做爲主體

- 平均每次IO請求等待時間爲120.57毫秒,處理時間爲6.33毫秒

- 等待處理的IO請求隊列中,平均有11.79個請求駐留

實際查看時,通常結合着多個選項查看: 如iostat -dxm 3

[root@yg-uhost724 ~]# iostat -dxm 5
Linux 2.6.32-279.19.16.el6.ucloud.x86_64 (yg-uhost724)  06/12/2017  _x86_64_    (24 CPU)

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0.69    29.89    1.36   21.52     0.05     0.20    23.04     0.04    1.96   0.29   0.67
sdb             682.88  1811.86   77.94  417.73     2.97     8.71    48.27     0.01    0.03   0.10   4.89
dm-14             0.00     0.00    0.03   41.47     0.00     0.16     8.00     0.01    0.12   0.02   0.10
dm-0              0.00     0.00    0.00    0.00     0.00     0.00     8.00     0.00    7.24   0.07   0.00
dm-2              0.00     0.00    0.00    0.00     0.00     0.00     8.00     0.00    0.07   0.04   0.00
dm-3              0.00     0.00    0.00    0.98     0.00     0.00     8.00     0.00    3.57   0.22   0.02
dm-5              0.00     0.00    0.18   50.51     0.00     0.20     8.00     0.03    0.44   0.01   0.07
dm-1              0.00     0.00    1.50    5.51     0.01     0.02     8.00     0.03    4.04   0.04   0.03
dm-6              0.00     0.00  123.23 1042.56     0.48     4.07     8.00     0.01    0.01   0.02   1.90
dm-4              0.00     0.00  635.74 1069.59     2.48     4.18     8.00     0.00    0.04   0.01   2.39
sdc               7.23   106.32    0.52    0.94     0.03     0.42   627.54     0.02   13.32  17.58   2.58

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await  svctm  %util sda               0.00    15.00    0.40   17.80     0.00     0.10    10.90     0.00    0.10   0.10   0.18 sdb              82.60 11967.00  414.60 2500.20     1.94    56.51    41.07    12.07    4.14   0.07  21.02 dm-14             0.00     0.00    0.00    0.20     0.00     0.00     8.00     0.00    0.00   0.00   0.00 dm-0              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00 dm-2              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00 dm-3              0.00     0.00    0.00    1.80     0.00     0.01     8.00     0.00    0.11   0.11   0.02 dm-5              0.00     0.00    0.00    2.00     0.00     0.01     8.00     0.00    0.00   0.00   0.00 dm-1              0.00     0.00    0.00    2.40     0.00     0.01     8.00     0.01    4.17   1.25   0.30 dm-6              0.00     0.00    0.00   45.20     0.00     0.18     8.00     0.11    2.45   0.55   2.48 dm-4              0.00     0.00  497.20 14415.80     1.94    56.31     8.00    72.87    4.83   0.01  19.14 sdc               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00

相關文章
相關標籤/搜索