仮想化でプリセールスしてるSEの一日

VMware から Azure まで、インフラや仮想化の最新情報をベンダー色をできるだけ抑えて綴っていきます

Windows Server LBFO チーミングと Hyper-V VLAN 問題 - その後

f:id:ogawad:20190203195637p:plain:right

「その後」シリーズです。

Windows Server 2012 より、OS 標準でチーミング機能「LBFO」(Load Balancing and Failover) ができたことはご存じのとおり。
それまでは Intel PROSet や Broadcom BACS, HP NCU といった 3rd Party の NIC Team ユーティリティが必要でした。

@IT - Windows Server insider -
Windows Server 2012 R2 の NIC チーミング機能(LBFO)をマスターする
http://www.atmarkit.co.jp/ait/articles/1402/06/news129.html


チーミング機能が Windows OS に内蔵されたことで、保守サポートの観点ではシンプルになりましたが、技術アーキテクチャーの面ではまだといったところ。
特に、仮想化機能 (Hyper-V) を使う場合に支障を及ぼします――――。


Hyper-V に最適化されていない LBFO

Windows OS は仮想化 "専用" に設計された OS ではありません。
ここが VMware vSphere (ESXi) と大きく異なるところ。そして、LBFO も Hyper-V ではなく OS の機能であるために仮想化専用設計ではありません。


例えば VLAN
次の図を見てください。LBFO 環境では VLAN は使えません。



引用元: @IT第3回 Hyper-Vネットワーク設計のベストプラクティス


2番目の図のように、「LBFO で冗長化」「仮想スイッチで VLAN」とレイヤを分ければ要件は満たせるのですが、かなりの CPU 負荷(オーバーヘッド)が掛かるほか、SMB Direct が使えないなど、制約や問題もありました。


WS2016 では Hyper-V 仮想スイッチにチーミング機能が搭載

先月リリースされた WS2016 の Hyper-V では仮想スイッチ内にチーミング機能が搭載されました。「Switch Embedded Teaming」(SET)と呼ばれています。


実装は LBFO のコア(サブセット)を仮想スイッチに組み込んだ感じ。
アーキテクチャもようやくシンプルになり、RDMA などのいくつかの機能と互換が取れるようになりました。


 

Microsoft TechNet - Remote Direct Memory Access (RDMA) and Switch Embedded Teaming (SET)
https://technet.microsoft.com/en-us/library/mt403349.aspx


そういえば、Microsoft は RDMA の利用にあたって、これまで InfiniBand (IPoIB) 推しでしたが、WS2016 では Converged Ethernet (RoCE)RDMA over TCP (iWARP) 推しに変わりましたね。InfiniBand は 前に挙げた問題 がありますので、現実目線になってくれて良かったです。


現実目線といえば、この SET も Link Aggregation や SR-IOV が使えないなど、設計や構築にあたって気をつけなければならないことがあります。
このあたりは、また近いうちにまとめたいと思います。