ESXi で iSCSI マルチパス構成にする

ESXi のデータストアを iSCSI ストレージとしたとき、その経路をマルチパス構成にする方法として ESXi が持っているソフトウェア iSCSI イニシエータを使用する例は結構たくさん見ます。ところがハードウェアというか NICTCP の処理をオフロードするタイプのイニシエータを使った例はあんまり見ないなと思って。TOE といって、TCP の処理を CPU にやらせずに NIC 側でやってしまうので CPU に負荷をかけずにトラフィックさばけますよという仕組み。

というわけでハードウェア iSCSI アダプタを使ってマルチパス構成にしてみました。 Broadcom 5709 搭載の NIC なので、VMware 社のマニュアルによると「依存型ハードウェア iSCSI アダプタ」ということになるのかな。

iSCSI SAN 構成ガイド

このマニュアルの通りなのだけど、マニュアル内の画面サンプルがソフトウェアイニシエータを使用した場合なので、ハードウェア iSCSI の場合はちょっと違うんだよという例。

ハードウェア iSCSI でも、ソフトウェア iSCSI と同様にひとつの vSwitch にぶら下げることもできます。別の vmk との関連づけもコマンドラインから叩けばできます。

とにかくこんな感じで VMkenerl ポートを NIC のポートと関連付けて、パスやデータストアのスキャンをすればすぐ使えます。便利。

この図は、マルチパスになっていてかつラウンドロビンで2本のパスを両方使うようになっています。複数あるパスを Active - Active で使うのでちょっぴり効率が良くなるらしいです。データストアの管理パス画面にて、パスの選択を指定する項目でラウンドロビンを選べばよいです。標準では固定になっていて、1本のパスしか使いません。他のパスは眠ってます。障害が起きたら別パスに切り替わります。

ヒョイっと線を抜いたりしてみましたがゲストが落ちたりエラーを吐いたりすること無く透過的にパス切り替わりしました。