最近は2.5GbEや10GbEの機種が増えてきましたが、自宅だと1GbEの利用をしている環境もまだまだ多いのではと思います。1GbEだと、Synolog NASでiSCSI接続した場合だと実際の速度で115MB/s程度が上限になるかと思います。Synology NASのiSCSI TargeへESXiのマルチパス構成を設定し、どの程度パフォーマンスがでるか試してみたいと思います。
構成
ネットワーク設定
SynologyのiSCSI LUNとTargetの設定
- ネットワーク設定にて、2つのインターフェイスで異なるサブネットでIPアドレスを設定しておきます。
- 2つのインターフェイスでジャンボフレームを設定しておきます。
- iSCSI用のLUNを作成します。
- iSCSIのTargetを作成します。
- thickで作成してみます。
- thickで作成すると、LUNと同じサイズでTargetを作成するとディスク使用率アラートが出るため、LUNよりある程度下回るサイズを指定します。
- iSCSI Target でマルチセッション サポートを有効にします。
- こちらの設定を有効にしないと、マルチパスが利用できません。
ESXiのネットワーク設定
- ESXiの物理アダプタにNICが2本接続されていることを確認します。
- オンボードNICとUSB NICはそれぞれ異なるvSwtichに接続しておきます。
- 用意した2つのVLANごとにiSCSI用VMkernel用のポートグループとVMkernelを作成します。
- vSwtich0、vDS、VMkernelでジャンボフレームを設定しておきます。
ESXiのストレージ設定
- ESXiのストレージアダプタ>ソフトウェアアダプタの追加をクリックします。
- 動的検出に、Synologyの2つのインターフェイスを設定します。
- ストレージの再スキャンをクリックし、静的検出にiSCSIサーバーとターゲット名が表示されることを確認します。
- iSCSI用のVMkernelを異なるサブネットに分けて作成しているため、ポートバインディグの設定は不要となるため、そのままとします。
- iSCSIのVMkernelを同一サブネット上に設ける場合、基本的にはそのうちの1つしか使われません。
- パスをクリックし、パスが2本表示されていることを確認します。
- マルチパスが有効になっていれば、パスが2本表示されますが、有効ではない場合1本しか表示されません。
- ストレージのインベントリに移動し、新しいデータストアの画面を開き、データストア名の指定とVMFS6でフォーマットを行います。
- 新規に追加されたSynologyのデータストアをクリックし、接続とマルチパスをクリックし、パス選択ポリシーをRound Robinに変更します。
- ハードウェア アクセラレーションをクリックすると、サポート対象となっていることが分かり、VAAIが利用可能であることが分かります。
- ラウンド ロビンの IOPS 制限をデフォルトの 1000 から 1 に調整します。
パフォーマンスの確認
- Windows Server 2019に追加したSynologyのデータストアのディスクを追加します。
- Windows Server 2019にCrystalDiskMarkをインストールし、ストレージの性能を測定してみます。
- シーケンシャルリードで1MiBのブロックサイズで177.652 MB/s、ランダムリードで4KiBのブロックサイズで55.368 MB/s、出ていました。
- 1GbEだけでは115MB/s程度が上限だっため、上限はある程度超えることを確認できました。
- ラウンド ロビンの IOPS 制限を1000だと、シーケンシャルリードで1MiBのブロックサイズで114.900 MB/s、ランダムリードで4KiBのブロックサイズで54.889 MB/s、出ていました。
備考
- homelabの構成として現在は以下のように行っており、共有ストレージは利用しない構成としております。
- Synology NASのファンの音がうるさいこと、NVMeのローカルディスクがシーケンシャルリードで1MiBのブロックサイズで3547.89 MB/sと高速であり、homelabでは1GbEのネットワークを利用した共有ディスクはOSの領域としては利用しなくてもよいかもしれないです。