iostat で io モニタリング

先日に引き続き、モニタリング。
今度は iostat(参考:*1,*2)。sysstat パッケージに含まれるツール。

インストールする


# yum -y install sysstat
(中略)
Installed:
sysstat.i386 0:7.0.2-11.el5

使う


# iostat -xn
-x and -n options are mutually exclusive
Linux 2.6.18-274.17.1.el5 (cent5.localdomain) 2012年01月15日

avg-cpu: %user %nice %system %iowait %steal %idle
13.14 0.02 4.27 0.07 0.00 82.49

Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
sda 0.30 20.86 1.24 3.41 41.91 194.23 50.75 0.02 5.10 0.58 0.27
sda1 0.03 0.00 0.00 0.00 0.06 0.00 29.01 0.00 0.67 0.65 0.00
sda2 0.28 20.86 1.24 3.41 41.84 194.23 50.77 0.02 5.10 0.58 0.27
dm-0 0.00 0.00 1.50 24.21 41.76 193.67 9.16 0.65 25.29 0.10 0.27
dm-1 0.00 0.00 0.01 0.07 0.08 0.56 8.00 0.00 4.05 0.06 0.00

Device: rBlk_nor/s wBlk_nor/s rBlk_dir/s wBlk_dir/s rBlk_svr/s wBlk_svr/s ops/s rops/s wops/s

オプションを指定する

man の結果を雰囲気翻訳で。。

cCPU 使用率レポートのみ。デバイス使用率レポートは出力しない。
dバイス使用レポートのみ。CPU 使用率レポートは出力しない。
kブロック表示でなく、キロバイトで表示。(kernels 2.4 以降で利用可)
mブロックやキロバイト表示でなく、メガバイトで表示。(kernels 2.4 以降で利用可)
nディレクトリ(単位?)の統計情報を出力する。(kernel 2.6.17以降で利用可)。xオプションの内容は対象外。
hバイス名をわかりやすく表示(?)
p [ { device | ALL } ]ブロックデバイスやそれらのパーティションの統計情報を出力する。
x オプションの内容は出力されない。
バイス名を指定すると、指定したデバイスとそのパーティションの統計情報が出力される。
ALLオプションを指定すると、システムに定義されている全てのブロックデバイスパーティションの情報が出力される
(使用されていないデバイスも含む)。(kernels 2.5 以降で利用可)
tレポートの時刻を表示.
Vバージョン番号を出力
x拡張された統計情報を出力する。 pオプションとnオプションで出力される情報は出力されない。
当オプションで出力される統計情報を得るには、/proc/diskstatsのファイルか mounted sysfs が必要なため、ちゃんと動かすには kernel 2.5 以降である必要がある。
2.5より古いカーネルの場合は、/proc/partitions の情報をもとに出力する。(パッチが当たっていることが前提)

結果の読み方

こちら参照のこと。