web-dev-qa-db-ja.com

仮想マシンのディスクI / O遅延の急増

過去数日以来、1つの仮想マシンで奇妙なI/Oスパイクが発生しています。

その2.6.32-504.el6.x86_64#1 SMP Tue Sep 16 01:56:35 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux Red Hat Enterprise Linux Serverリリース6.6(サンティアゴ)

Elasticsearchデータノードを実行している約50Gのメモリと24CPU。

そのelasticsearchノードに向かうリクエストでタイムアウトを検出し、今のところvmを調べた後、散発的にディスクI/Oがスタックしていることを確認することができました。仮想マシンのディスクの1つでiopingを使用しました

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):リクエスト= 1時間= 3.76ミリ秒(ウォームアップ)

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):request = 2 time = 1.17 s

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):request = 3 time = 131.7 us

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):request = 4 time = 282.8 us

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):リクエスト= 5時間= 999.4ミリ秒

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):リクエスト= 6時間= 632.7ミリ秒

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):リクエスト= 7時間= 2.15秒(遅い)

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):リクエスト= 8時間= 400.2ミリ秒

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):request = 9 time = 20.0 s(slow)

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):リクエスト= 10時間= 1.10ミリ秒(高速)

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):リクエスト= 11時間= 1.30ミリ秒(高速)

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):リクエスト= 12時間= 2.20ミリ秒(高速)

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):リクエスト= 13時間= 2.61ミリ秒(高速)

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):request = 14 time = 203.6 us(高速)

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):リクエスト= 15時間= 1.09ミリ秒(高速)

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):request = 16 time = 319.3 us(高速)

4 KiB <<</dev/sdf1(ブロックデバイス100.0 GiB):request = 17 time = 249.8 us(高速)

ご覧のとおり、一度に20秒のスパイクがありました。仮想マシンはvmwareesxiブレード上にあります。データストアはさらに3台の仮想マシンで使用されていますが、このような遅延の問題は発生していません。 fsckとtune2fsを試しましたが、どちらもファイルシステムに問題はありませんでした。

これが発生し始めたとき、仮想マシンに更新はありませんでした。この問題をデバッグする方法に関するヒントをいただければ幸いです。

編集:ここに-d情報があります。 lvが100%ビジーになり、Java(elasticsearchはその時点で読み取っています)

LVM | vg00-lv_data |忙しい100%| | 8904を読む| 4を書く| | KiB/r 11 | KiB/w 4 |
| MBr/s 10.03 | MBw/s 0.00 | | avq 21.41 | avio1.12ミリ秒|

PIDTID
RDDSK WRDSK
WCANCL DSK
CMD 1/1

2629-
100.3M 12K 0K 100%
Java

結局、すべてがelasticsearchによって引き起こされたようです。ノードをクラスターから除外してから再度追加したため、シャードがマシンから再配置されてからマシンに戻されました。問題を解決した奇妙な理由で。