iostat
CPU の利用状況とディスクの入出力に関する情報を継続的に監視できる
主にディスク I/O を調べるときに使う
ブロックデバイスレベルであり、OS カーネルの内部の情報を取っているので、通常、ファイルキャッシュといった OS のファイルシステムレベルの動作は記録されない
ビジー率をよく見る
active
- OS から見て、ディスクに発行済みのものという意味
- キューが長くなるとレスポンスが悪化
wait
- ディスクに発行されずに残っているものという意味
- キューが長くなるとかなり悪化
デバイスが多い場合には負荷がやや高い
- 1 〜 5 分程度で取得するのが良い
1 つの I/O のレスポンスは数ミリ秒
- キャッシュヒットしない場合
ストレージ
- 結果はブロックデバイスで出力
$ iostat -d -mx 1 5
Linux 3.10.0-862.11.6.el7.x86_64 (tools) 2018年10月16日 _x86_64_ (4 CPU)
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
vda 0.00 0.23 0.12 0.25 0.02 0.03 291.58 0.13 341.54 52.34 480.92 8.41 0.31
dm-0 0.00 0.00 0.12 0.42 0.02 0.03 199.43 0.28 522.15 53.37 655.48 5.76 0.31
dm-1 0.00 0.00 0.00 0.01 0.00 0.00 8.24 0.00 296.67 24.12 345.16 23.40 0.02
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.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 0.00 0.00
dm-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.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 0.00 0.00
dm-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.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 0.00 0.00
dm-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
vda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.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 0.00 0.00
dm-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
item | contents |
---|---|
r/s | 1 秒間あたりの読み込み回数 |
w/s | 1 秒間あたりの書き込み回数 |
rMB/s | 1 秒間あたりの読み込み量 |
wMB/s | 1 秒間あたりの書き込み量 |
avgqu-sz | 待機キューに存在する I/O リクエスト数 要チェック項目 |
await | I/O 応答時間 要チェック項目 |
CPU 情報
item | contents |
---|---|
%user | ユーザプロセスによる CPU の使用率 |
%nice | 実行優先度を変更したユーザプロセスによる CPU の使用率 |
%sys | システムプロセスによる CPU の使用率 |
%iowait | I/O 終了待ち時間(I/O 進行中でその終了を待っている時間) |
デバイス情報
item | contents |
---|---|
tps | 1 秒間の I/O リクエスト数(転送回数) |
Blk_read/s | 1 秒間のディスクの読み込み量(ブロック/秒) |
Blk_wrtn/s | 1秒間のディスクの書き込み量(ブロック/秒) |
Blk_read | ディスクの読み込み量(ブロック数) |
Blk_wrtn | ディスクの書き込み量(ブロック数) |
kB_read/s | 1 秒間のディスクの読み込み量(KB/秒) カーネル2.4+有効 |
kB_wrtn/s | 1 秒間のディスクの書き込み量(ブロック/秒) カーネル2.4+有効 |
kB_read | ディスクの読み込み量(KB単位) カーネル2.4+有効 |
kB_wrtn | ディスクの書き込み量(KB単位) カーネル2.4+有効 |
rrqm/s | 1 秒間デバイスへマージされた読み込みリクエスト数 |
wrqm/s | 1 秒間デバイスへマージされた書き込みリクエスト数 |
r/s | 1 秒間の読み込みリクエスト数 |
w/s | 1 秒間の書き込みリクエスト数 |
rsec/s | 1 秒間の読み込みセクタ数(デバイスから) |
wsec/s | 1 秒間の書き込みセクタ数(デバイスへ) |
rkB/s | 1 秒間の読み込みキロバイト(KB)数(デバイスから) |
wkB/s | 1 秒間の読み込みキロバイト(KB)数(デバイスへ) |
avgrq-sz | デバイスへの I/O リクエストの平均サイズ(セクタ) |
avgqu-sz | デバイスへの I/O リクエストのキュー(待ち行列)の平均サイズ |
await | デバイスへの I/O リクエストの平均待ち時間(ミリ秒) キューにいる時間+処理時間 |
svctm | デバイスへのIOリクエストの平均処理時間(ミリ秒) |
%util | デバイスへの I/O リクエスト期間 CPU の使用率(デバイス関連部分) 100 % に近いとそのディスクの性能限界に近い可能性が高い |