web-dev-qa-db-ja.com

仮想マシン内のディスク遅延

私は、組織内のクラスター化された仮想マシンのパフォーマンスの問題をいくつか調べてきました。実際、この問題は、私が調べたほとんどの仮想マシンに影響を与えているようです。ホストとVMはどちらも2008R2とSP1)です。

さまざまな記事やアドバイスを読んだことから、I/Oレイテンシーが最も重要な指標であると私は信じています。私はこのメトリックを3つの異なる場所で調べました。

  • ストレージアプライアンスのLUNレイテンシ
  • Hyper-vホストでの論理ディスクの平均秒/書き込みおよび平均秒/読み取り
  • 上記と同じですが、仮想マシン自体にあります

これは、発生する可能性のある遅延の原因を絞り込むための取り組みです。案の定、これは私が見つけたものです..。

私が見ているのは、LUNで許容可能な遅延(3〜15ミリ秒)、Hyper-Vホストで最大20ミリ秒(まだ許容可能)であると私が考えるものです。 VM)で同じメトリックを見ると、一度に最大10秒間、平均で約20〜30ミリ秒、最大300ミリ秒の定期的なスパイクが見られます。

この特定のVMはSQLサーバーですが、同じことが非SQLサーバーにも当てはまります。DBファイルのオンアクセススキャンを回避するために、関連する例外がAVソリューションに追加されます。 VHDは、動的に拡張するのではなく、固定サイズです。

だから私の質問のために:

この遅延の考えられる原因、および/またはこれを絞り込むためにVM(またはホスト上でさえ)内で使用できる他のメトリックは何ですか?

3
john

VM内の時間の測定は、仮想プロセッサが継続的に実行されないため、問題になる可能性があります。実際に何が起こっているのかを明確に把握したい場合は、管理OSのパフォーマンスモニターを使用してください。 Hyper-V仮想ストレージデバイスの場合。これをリソースモニターからのデータと相関させて、ディスクへのアクセスをめぐって何が競合しているかを確認することもできます。

一般に、特定のVHDの応答時間は、そのVHDをホストしているボリュームで他に何が起こっているかと関係があります。

3
Jake Oshins

VMの「ディスクレイテンシ」は、ホストがIOリクエストにCPUサイクルを使用する必要があるため、ホストのCPUレイテンシである可能性があります。

ホストは全体的に負荷が高いですか?それとも、多くのVMを実行しているだけですか? hyper-vに相当するものはわかりませんが、VMWareメトリックはCPUの準備時間です。基本的に、VMホストの実行を待機する頻度です。

1
AngerClown