未解決
Community Manager
•
3.1K メッセージ
0
324
⑥vSAN Express Storage Architecture (vSAN ESA) の詳細
*こちらの記事は2023年1月に開催された[Ask The Expert]VxRail v8.0リリースのすべて!からの内容になります。
前回 vSAN ESA は CPU の負担を減らして IO 性能を向上させる、といったご紹介をさせていただきました。
この辺りをもう少し詳細にご紹介します。
従来の vSAN OSA では以下の図のように、仮想マシンから発行された IO はストレージポリシーに指定された FTT・RAID レベルに応じてデータを格納している各 ESXi ホストに分散され、それぞれの ESXi で 重複排除・圧縮・暗号化・チェックサム計算が行われます。
そのため、IO の数が多いほど、RAID で分散されるデータが多いほどに各 ESXi ホストでの処理が増え、特に RAID5/6 などの場合は パリティ計算による Write Penalty もあるため書込負荷が高いと RAID1 に比べると遅延も大きくなりがちでした(これは従来のストレージも同じですね)。
一方の vSAN ESA では前回ご紹介したように、仮想マシンが稼働する ESXi ホストで IO を受け取ったらその場で圧縮(デフォルト有効) -> 暗号化(オプション) -> チェックサム計算(デフォルト有効)を行い、その後データを各 ESXi ホストに転送します。
結果として、圧縮済みのデータを暗号化するので、(暗号化が有効であれば)暗号化計算のための CPU 負荷も減り、チェックサムも計算してから各 ESXi ホストに圧縮されたデータを転送するのでネットワークの帯域も節約できます。
※ vSAN ESA の初期リリースバージョンでは圧縮がデフォルトで有効となりますが、重複排除機能は今後のリリースでの提供となります。
また、RAID 5/6 を選択した場合でも仮想マシンは RAID1 相当の IO 性能 (IO遅延)でサービス提供が可能です。
それを以下の様な階層的な処理で実現しています。
ここでも上記で記した仮想マシンが稼働する ESXi ホストでデータサービスの処理を行い、その後各ホストに展開するという動きがメリットとして活躍しています。
All NVMe のシングルティアで構成されていますが、内部的に性能を加速するために毎回の RAID 5/6 の際のパリティ計算を排除し、P-Leg に書き込まれたデータがある程度たまった時点で、RAID 幅に応じたフルストライプの書き込みを一気に行うことで、毎回のパリティ計算を排除し、1回でまとめて処理を完了させています。
これらの新しい機構は、従来以上に IO デバイスとしての性能が格段に向上している NVMe ドライブをフルに使うためには CPU をもっと効率的に使うためにソフトウェアも大幅に進化した結果となります。
そもそも NVMe ドライブは従来の SCSI をベースとした SAS/SATA ドライブと異なり IO Queue、Queue Depth が格段に広がっている上に、各 NVMe ドライブが HBA・RAID カードに相当する IO Controller を内蔵しているので NVMe ドライブ自体が IO 処理時の CPU 負荷の削減にも寄与しています。
また、vSAN ESA に先行して、vSAN 7.0u2 からサポートされた RDMA (NVMe over Fabric : RoCE v2) に vSAN ネットワークは対応しており、高 IOPS を捌くために必要だった ESXi ホストの CPU を利用した TCP/IP 負荷を RDMA 対応の NIC にオフロードする事も可能になっています。
vSAN OSA 環境で先行して RDMA ネットワークを採用されたラクス様の VxRail での性能検証事例を前回ご紹介した vSphere / vSAN オンラインセミナー#55 何が変わった?待望のメジャーバージョン VMware vSAN 8 を解説! の後半にて解説しているので興味ある方はぜひ御覧ください。
vSAN OSA でも RDMA を有効化するだけで劇的に CPU 負担が下がり、TCP/IP の処理が無くなる事で IO の低遅延化が劇的に実現できたことが確認できましたので、vSAN ESA と RDMA を組み合わせたら更に強烈なストレージ環境が出来上がるのではないかと期待しています。
※ まだ VMware Japan 含めて検証環境で用意できていないので、もし vSAN ESA + RDMA 環境の PoC するよ、という方いらっしゃいましたらお誘いください(^^; ベンチマーク負荷テストのお手伝いさせていただきます♡
ということで、今日は如何にして ESXi ホストの CPU 負荷を下げ、効率的に NVMe の高い性能を引き出すか、という観点で最適化された vSAN ESA のパフォーマンスについてご紹介しました。
次回は vSAN ESA のサイジング(容量・オーバーヘッド)に関連してご紹介したいと思います。