約1か月前に、最初のHyper-VベースのWebソリューションをオンラインで公開しました(下の図)。 Bing/Google/Baidu/McAfee Secure/etcのクロール中など、トラフィックが増加している間、仮想マシン間の通信の問題が断続的に発生します。この問題は数分続き、本格的な停止ではありません。一部のリクエストは完全に正常に機能しますが、他のリクエストはエラーになります。 VMとホストシステムのシステムログを調べましたが、失敗を示すものは何もありません(ASP.net ODBC Web上のエラーVMデータベースホストに到達できないため)。
単一の8年前のWindowsServer 2k3 Webおよびデータベースサーバーを使用した古いセットアップでは、すべてのトラフィックを問題なく処理できましたが、新しい開発能力が制限されていました。 4GBのRAMと古い2GHzデュアルコアプロセッサしかありませんでした。新しいサーバーには、32GBのRAMとクアッドコア3.4GHzXeonがあります。ハードウェアは、すべてが機能しているときに古いものを水から吹き飛ばします。ページの読み込みが速くなり、クエリの実行が速くなります。
私が考えることができる唯一のことは、DBとWebが別々のVM上にあるが、同じ仮想ネットワークを共有しているため、トラフィックがアダプター上で本質的に2倍になることです。または、Hyper-Vネットワークの方法に問題がある可能性があります。構成済み。
外部として設定された単一の共有仮想スイッチがあります。ハードウェアファイアウォールを使用して、外界へのポートをブロックします。ネットワークアダプタと現在の仮想スイッチのセットアップのスクリーンショットを含めました。
ホストとVMでどのプロパティを有効/無効にする必要があるのかわかりません。マシンには2つのNICがありますが、現在すべてが1つのポートにセットアップされています。 1つのポートを管理者用に、もう1つを仮想スイッチ用に使用することをお勧めします。これにより、ボックスにログインしたときにパフォーマンスが向上すると確信していますが、現在の問題が修正されるかどうかはわかりません。
誰かがホストとVMにあるNicプロパティについてのガイダンスを提供したり、ネットワークパフォーマンスを向上させるための微調整をガイドしたりできますか?
Bartłomiejからの回答に加えて、チームの負荷分散モードをHyper-Vポートに変更し、チーム内の両方のアダプターをアクティブに設定することもお勧めします。
このようにして、チーム内の両方のアダプターを積極的に活用します。
GUIからではなく、PowerShellからすべてのHyper-Vホストネットワークをセットアップすることをお勧めします。 GUIはあなたが望むほど多くの制御を与えません。
スイッチに依存しないチームを作成して確認します
PS C:\> Get-NetLbfoTeam Team1 Name : Team1 Members : {Gi2, Gi1} TeamNics : Team1 TeamingMode : SwitchIndependent LoadBalancingAlgorithm : TransportPorts Status : Up