最近 VMWare が買収され、ライセンス体系がぐっと変わることになって、場合によってライセンス費用が爆上がりになることもあります。
その背景で、様々なところで脱 VMWare が話題になり、Hyper-v という Windows Server が提供している仮想化技術もまた盛り上がっていったりして、、、
昔は Hyper-v のパフォーマンスの問題であったり、機能が不充実で、色々 VMWare の製品に劣っているところがありましたが、ここ数年の成長を経て今、ほぼ同等なものが提供できるようになっています。さらに、Windows への親和性や、Hyper-v のみで様々な VMWare では別途ライセンス費用が発生する vCenter なしでは使えない機能も使えたりするので、ある意味では優れている面もあったりはします。
VMware の監視面は確かにすごく使いやすい部分もあったりしますが、Hyper-v は戦えるぐらいにはなっているのではないでしょうか。
今回は、自分的に理解が難しかった仮想スイッチ周りの話を分かりやすく説明しようと思います。
Hyper-v の仮想スイッチとは
Hyper-V 仮想スイッチは、Hyper-V サーバーの役割をインストールすると Hyper-V マネージャーで使用できる、ソフトウェアベースのレイヤー 2 イーサネット ネットワーク スイッチです。
Hyper-V 仮想スイッチには、VM を仮想ネットワークと物理ネットワークの両方に接続するための、プログラムで管理される拡張可能な機能が含まれています。 また、Hyper-V 仮想スイッチでは、セキュリティ、分離、およびサービスのレベルでポリシーを適用できます。
上記ドキュメントに書いたように、簡単に言うと、Hyper-v 上の仮想マシンが他の仮想マシンや、Hyper-v ホスト(以降 ホスト と記載)の Nic を使って、ホストがアクセスできるネットワークと通信するために使うものになります。
おおむね、以下のパターンが考えられます。
1) ホスト OS と VM 間の通信 + 外部との通信
2) VM 間の通信 + 外部との通信
3) ホスト OS と VM 間の通信
4) VM 同士のみの通信
仮想スイッチの作成
Hyper-v 役割有効する際に、物理 NIC ごとに仮想スイッチを作成するような選択しもあります。
この際に、仮想スイッチを作成して、物理 NIC がそのスイッチに接続するようなイメージになります。要するに、この仮想スイッチに他の VM も接続すると、VM がホストの物理 NIC を使って、ホストがアクセスできるネットワークにアクセスできるようになります。※ 上記 1)
※ NIC と関連付けの仮想スイッチを作成する際に、ネットワーク瞬断が発生する(該当物理 NIC の瞬断)
作成した仮想スイッチの設定はこちらになります。
また、この画面は役割有効後に利用できる Hyper-v マネージャーの画面で、この画面で仮想スイッチを作成することができます。
仮想スイッチの設定について
仮想スイッチの設定項目として、主に以下の項目があります。
- External network +「☑Allow management OS to share this network adapter」
- スイッチ作成すると、ホストの NIC に"vEthernet(スイッチ名)"の仮想 NIC が作成される
- この仮想スイッチが物理 NIC の役割を果たす(外部との通信)ことになるので、ホストの NIC はホスト用の仮想 NIC の役割にかわる
- ホスト OS がこのスイッチに接続できる
- スイッチの仮想 NIC は物理 NIC の設定を保有する
- 追加/削除する際に、ネットワーク瞬断が発生する
※ Ethernet 6 がホストの NIC で、vEthernet(Externalsw02_share) が仮想スイッチ用の仮想 NIC
- External network +「□Allow management OS to share this network adapter」
- ホスト側に、追加の仮想 NIC は作成されない
- この仮想スイッチはホストが見えない(指定の物理 NIC はホストが使えなくなる)
- このスイッチに接続する仮想マシンはこの物理 NIC で外部と通信できる
- ホストがこのスイッチと通信できなくなる=NIC が一つしないない場合、ホストが外部との通信ができなくなる
- NIC が一つしかない場合、ホストへ RDP へ接続できなくなる
※ Ethernet はホストの NIC
- Internal network:内部ネットワーク
- スイッチ作成すると、ホストの NIC に"vEthernet(スイッチ名)"の仮想 NIC が作成される
- 仮想 NIC には内部の IP が付与されている
- ホストと通信できるようなスイッチだけど、物理 NIC を使った外部ネットワークとの通信はできない
※ vEthernet(Internalsw01) は内部ネットワークの仮想 NIC
- Private network:プライベート ネットワーク
- ホストに追加の仮想 NIC は作成されない
- そのため、ホストからプライベート ネットワークへの通信はできない
参考
- https://learn.microsoft.com/ja-jp/windows-server/virtualization/hyper-v/get-started/create-a-virtual-switch-for-hyper-v-virtual-machines?tabs=hyper-v-manager
- https://learn.microsoft.com/ja-jp/virtualization/hyper-v-on-windows/quick-start/connect-to-network
- https://learn.microsoft.com/ja-jp/windows-server/virtualization/hyper-v-virtual-switch/hyper-v-virtual-switch
コメント