web-dev-qa-db-ja.com

Hyper Vでディスクの待ち時間が長い(平均ディスク書き込みで20ミリ秒から100ミリ秒)

HyperVを12GB、i7サーバーで実行しており、5つのVMが実行されています。 VMの動作が非常に遅いという印象を受けましたが、メモリ消費量とCPU使用率は言及する価値がないため、パフォーマンスモニターを開始し、非常に高いと思われる2つのメトリックがあることがわかりました。ディスク書き込み:40ms〜100ms平均ディスク読み取り:部分的に最大60ミリ秒

(スクリーンショットを参照してください: Performance Monitor

これらの数値はかなり高いと思いますが、100%確実ではありません。誰かがそれを確認できますか?レイテンシーを減らすために何ができるでしょうか?

更新1:このページによると ディスク使用量の監視 MicrosoftからPhysicalDisk:%Disk Timeは90%を超えてはならず、PhysicalDisk:現在のディスクキューの長さは1.5から2を超えてはなりません。キューの長さ)を大幅に。ほぼ同じ構成と負荷を持つオフィスのローカルサーバーで同じメトリックを確認しました(ディスクモデル/メーカーについてはわかりませんが、小売用PCです)。ここで、%ディスク時間は約20から40です!

enter image description here

1
Heinrich

お気に入りのコーヒーショップで働いているバリスタが1人だけで、4人の同僚と一緒にいる場合、平均して、各自が飲み物を受け取るのに時間がかかります。

同様に、単一の回転ディスクを共有する場合、仮想サーバーは適切に機能しません。理由は単純です。ほとんどのコンピューティングアプリケーションでは、ディスク遅延がパフォーマンスの主なボトルネックです。複数のVM間で単一のディスクを共有する場合、サーバーがそれ自体に単一のドライブを持っている場合でも、各VMはディスクの読み取り/書き込みが十分に遅いのを順番に待つ必要があります。

典型的な小規模の非クラスター化Hyper-Vサーバーディスク構成の例:

 Disk  Configuration               Function
 C:    RAID-1 mirror (2 disks)     Operating system
 D:    DVD-ROM drive               Installation discs
 E:    RAID-10 array (4+ disks)    Hyper-V Guests

Hyper-Vホストに多数のゲストがいる場合、ビジー状態のSQLデータベースサーバーをホストしている場合、またはHyper-Vクラスターの一部である場合は、DASまたはSAN複数のコンピューターから同時にアクセスできる数十の物理ディスク。Server2008Enterpriseライセンスに含まれる4つのゲストサーバーオペレーティングシステムを超えることはめったにない、一般的な小規模ビジネスのHyper-V環境では、SAN/DASソリューションはやり過ぎであることがよくあります。 -一般的な1Uまたは2Uサーバーシャ​​ーシに適合する8台のドライブで十分な場合があります。

ソリッドステートストレージ(および/またはIntelの新しいRapid Storage Technologyなどのハイブリッドストレージオプション)のコストの低下は、最終的にルールを変更する可能性がありますが、単一の回転ディスクにチェーンされた場合、複数の仮想サーバーが適切に機能することは期待できません。

RAIDを使用しないことによるその他の潜在的な結果には、不必要なダウンタイムや、最新のバックアップ以降に書き込まれたすべてのデータが失われる可能性が高いことなどがあり、パフォーマンスへの影響よりもさらに重要です。ただし、これらの懸念は元の質問の範囲外です。

5
Skyhawk

使用しているストレージとその構成方法に関する情報がない場合、答えるのは困難です。最悪のシナリオでは、OSが存在する同じ物理ディスク上で5つのVMを実行している可能性があります。存在します...そしてこれは本当に物事を遅くします。

また、これらのVMがディスクI/Oに関して実際に何をしているのかを知ることは、問題の診断に大いに役立ちます。

1
Massimo