「vSAN では、ロード バランシングに NIC チーミングは使用されません。」という説明文の解釈

vSANNICチーミングのロードバランシング設定を無視する?

 

vSAN関連のドキュメントに以下の記載に関連していろいろと調べてみた。

 

 

vSAN では、ロード バランシングに NIC チーミングは使用されません。」

 

上記の記載は以下のドキュメントで確認できる。

 

Basic NIC Teaming (vmware.com)

vSAN ネットワークの設計 (vmware.com)

 

日本語の説明だけ読むと、以下の誤解が生まれそうな記載である。

 

誤解①:

vSANNIC Teamingでロードバランシングポリシーが設定されていても常にActive/Standbyで動作をする

 

誤解②:

vSANのロードバランシングはNIC Teaming以外の機能を利用する

 

きちんと原文(英語)で前後の文脈を考慮するとそういうことではないと判断できる。

そもそもvSANの仕組みをよく知らない人のためにNIC Teamingのロードバランシング設定がどのような形で反映されるのかを確認しておく。

 

 

①各仮想マシンが自分でvSAN データストアに直接IOリクエストをするわけではなく、仮想マシンは稼働しているESXiに対しSCSIのリクエストを送信する

ESXiは仮想マシンからのSCSIリクエストをvSANデータストアへのIOとして処理する

ESXivSANIOを処理するためにvSAN vmkernel portを利用する

vSAN vmkernel port vDSにつながっていて、dvport ID に紐づいている

vDSのロードバランシングはdvport id 単位で実施されるため、該当のdvport id がどのUplinkを利用するかはロードバランシングポリシーによって決まる

 

つまり、ESXi上で稼働するVMからvSAN データストアへのIOリクエストは単一のvsan vmkernel port によって処理され、単一のdvport id に紐づいた単一のUplinkのみを利用して通信を実施する。そのため、NICチーミングでロードバランシングが設定されていようとも、vSANトラフィックは常に単一のUplinkしか使用しないため、vSAN トラフィックのロードバランスとしては機能しない、ということになる。

 

ここで冒頭の文章に戻ると、原文では「vSAN does not use NIC teaming for load balancing.」となっており、文脈を考慮して意訳をすると、「vSANトラフィックのロードバランシングを目的としてNICチーミングを利用することはなく、NICチーミング自体は物理NICポートや接続先ネットワークの分散を考慮した機能である」と解釈できる。

 

なお、冒頭のドキュメントをきちんと読んだ人ならば説明は不要だと思うが、”IP Hashに基づいたルート”を選択した場合はdvport単位ではなくパケット単位で負荷分散されるため、その場合はvSAN トラフィックもパケット単位でUplinkが決まるため負荷分散がされることになるが、そもそもLAGが必要となるので一般的ではない。

LAGに関しても、VCFでは利用ができないことや、VMEでの有識者のセッションを聞く限り、VMwareとしても推奨はしてないようなので、vSANにおいては今後も広く利用されることはないと考えられる 

コメント

このブログの人気の投稿

vSwitchにSTPが不要な理由

ESXi に DNS サーバを何個まで登録できるか

障害でVDSから切断されたVCSAの復旧方法