あきろぐ

いろいろめもするよ

iSCSI Port Bindingについて

今回は、iSCSI Port Bindingについてまとめてみた。

iSCSIポートバインディングとは

端的に言うと、「ESXiのVmkernelとvmnicを紐づけること、結び付けること」

ESXiとブロックストレージを接続するとき、iSCSIポートバインディングを行なうことで、冗長化トラフィックを分散させることが可能になる。

f:id:akngo22:20190120162234p:plain

NICチーミングじゃだめなのか

冗長化を考えるときにNICチーミングも1つの手段として挙げられるが、トラフィックの分散ができなかったり、分散するにも冗長かつ負荷分散できるスイッチが必要で設定する必要だったりとある条件下でないといけない。また、同一ネットワークサブネットにESXiのVmkernelが複数ある場合、ホストのネットワーク通信には1つのVmkernelを選択するというVMware側でルールがありNICチーミングでは冗長化かつ負荷分散が難しい問題がある。

そのため、iSCSIポートバインディングで設定することが推奨されている。

iSCSIポートバインディングの仕組みってどうなってるのか

ESXiには4つのvmnicが搭載されており、そのうちの2つのvmnicをストレージ用に割り当てているとする。

 iSCSIソフトウェアイニシエータによって、ポートバインディングが行われvmkernel(vmk)とvmnicの紐づけられる。従ってvmkとvmnicは1対1の関係が成立し、同一ネットワークセグメントで複数のvmkがあってもESXiレベルでの通信経路が常に2つある状態を保つことができる。またL2スイッチとストレージを接続することで、ESXiホスト~ストレージ間では4つの経路を確保することが可能となる。

このような構成にすることで、常に2つの経路が保たれているので、負荷分散が可能になり、もし1つのvmnicが使えなくなったり、ストレージのポートが駄目になったとしても、片方のアクティブパスを使用することで可用性を高めることができる。

f:id:akngo22:20190120162358p:plain

参考文献