この記事では、ホスト ネットワークで仮想マシン キュー (VMQ) が有効になっていて、仮想ネットワークで無効になっている場合に、VLAN を使用するゲスト VM 上のネットワーク接続が失われる問題の解決策について説明します。
適用対象: Windows Server 2008 R2 Service Pack 1
元の KB 番号: 2681638
現象
シナリオを考えてみましょう。
- Hyper-V がインストールされている Windows Server 2008 R2 Service Pack 1 または Microsoft Hyper-V Server 2008 R2 を実行しているサーバー。
- VM のライブ マイグレーションにより、VLAN を使用するゲスト VM 上のネットワーク接続が削除されます。 移行が完了すると、ネットワークが復元されます。
- 問題は、仮想マシン キュー (VMQ) が HOST ネットワークで有効で、仮想ネットワークで無効になっている場合にのみ発生します。
Note
ホスト ネットワークで VMQ を無効にした場合、ゲスト VM のライブ マイグレーションはネットワークドロップなしで成功します。
原因
NIC は、新機能 "VMQ- 仮想マシン キュー" で導入されています。 以前の Hyper-V はキューの作成と VM 間のトラフィックの分離に使用されましたが、VMQ が有効になっている場合、このオプションは NIC にオフロードされます。 キューの作成と並べ替えは、NIC によって行われます。
NIC で VMQ を有効にするだけでは不十分です。 VMQ では、VMQ 機能を理解してサポートするために、VMSMP のレジストリがいくつか必要です。
解決方法
注意事項
このタスクには、レジストリを変更する手順が含まれます。 ただし、レジストリを正しく変更していない場合、重大な問題が発生する可能性があります。 したがって、次の手順を注意深く実行してください。 保護のために、レジストリを変更する前に、バックアップします。 その後、問題が起こった場合は、レジストリを復元できます。
この特定の問題を解決するには、次の手順に従って、ホスト サーバーにレジストリ サブキーを追加します。
コマンド プロンプト ウィンドウを管理者特権で開くには、[スタート] ボタンをクリックし、[すべてのプログラム] をポイントします。次に、[アクセサリ] をクリックし、[コマンド プロンプト] を右クリックして、[管理者として実行] をクリックします。
「 regedit」と入力し、Enter キーを押します。
レジストリ エディターで、サブキー
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318
を開き、操作するネットワーク アダプターのサブキーを見つけます。 サブキーは 4 つの数値 (0003 や 0010 など) です。 記録しておいてください。 この手順の後半で必要になります。管理者特権のコマンド プロンプト ウィンドウに戻ります。
コマンド プロンプトで、使用しているネットワーク アダプターの種類に基づいて次のコマンドを入力します。 コマンドごとに、この手順の前のサブキーを ID に置き換えます。
1 GBPS ネットワーク アダプターの場合は、「
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318\ID /v *MaxRssProcessors /t REG_DWORD /d 1 /f
」と入力し、Enter キーを押します。 次に、「reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318\ID /v *RssBaseProcNumber /t REG_DWORD /d 0 /f
」と入力し、Enter キーを押します。10 GBPS ネットワーク アダプターの場合は、「
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318\ID /v *MaxRssProcessors /t REG_DWORD /d 3 /f
」と入力し、Enter キーを押します。 次に、「reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318\ID /v *RssBaseProcNumber /t REG_DWORD /d 0 /f
」と入力し、Enter キーを押します。レジストリの変更を有効にするには、ホスト サーバーを再起動します。
重要
複数のネットワーク アダプターを構成する場合は、重複する RSS プロセッサが存在しないように、各アダプターに異なる値が割り当てられている必要があります。
たとえば、ネットワーク アダプター A の値が *RssBaseProcNumber に割り当てられ、値 3 が *MaxRssProcessors に割り当てられている場合、ネットワーク アダプター B の *RssBaseProcNumber は 4 である必要があります。
詳細
VMQ は新しい機能であり、Hyper-V クラスターで使用されます。 VMQ の完全なチェックリストを次に示します。
仮想マシン キュー (VMQ) は、Windows 7 および Windows Server 2008 R2 ゲストでのみ機能します。
仮想マシン キュー (VMQ) を有効にしている場合、仮想マシン チムニー (VMC) は機能しません。 VMC を無効のままにしておく必要があります。
統合 NIC が VM 用に構成されていることを確認します。
詳細については、次の記事を参照してください。