NVMeSSD RAIDカードのご紹介
今回は、NVMeSSDに特化したRAIDカード Microchip社 SmartRAID Ultra 4308P-32(以下SM4306)をご紹介します。
このカードは、SCSIのRAIDカードの時代から有名な旧Adaptec社のカードになります。

※2026年8月までには、新しいFWがReleaseされてRAID6.60とOSもUbuntu/VMWareがサポート予定です。
NVMe専用なので、デバイス(MNVMeSSD)とはPCIeバスにて接続しますので、接続用のコネクタは
基板上にありませんのでロープロファイルで、サーバ内で搭載位置を選びません。
サーバ内にケーブル配線が増えてごちゃごちゃになる心配はありません。

■HII(Human Interface Infrastructure)サポート
Microchip SmartRAID HII Configuration UtilityにてHIIをサポートしてますので、
OSの起動前にUEFI上でRAID構築もできます。
つまり、SCSIやSAS/SATAでおなじみのAdaptecのRAIDカードですね!

■Kernelや同時搭載デバイスに依存しないドライバ
ドライバのインストールは、インストーラーを実行(exeファイル実行、コマンド一発)で、
OSのKernelバージョンや同時に搭載されている他のPCIeデバイス(GPUなど)に依存しません。

■非常に使いやすくて直感的に操作できるGUI maxViewを装備
Windows版、Linux版ともに同じインターフェースになり、カードを搭載したサーバにツール(maxView)を
インストールすると、リモートでWebブラウザにて複数のサーバの統合管理、RAIDの設定ができます。

GUIは非常にわかりやすく、一般的なRAIDを構築の知識があれば簡単に直感的に操作できます
※実際に私はマニュアルをほとんど参照せずに操作できました!

RAIDを構築するためには、SM4308の管理下にデバイス(NVMeSSD)を登録させる必要があります。
SM4308の管理下に登録したデバイス(NVMeSSD)はOSから単体のNVMeSSDとしては認識しなく
なります。
■Arraysグループ
私が今まで経験しているRAIDカードや、ストレージシステムでは、最初に使用するデバイス(SSDやHDD)
をまとめて、構成するRAIDレベルでRAIDグループ/プールを作ります。
このまとまりから使用するボリューム(LU)を切り出して使います。
このため、このグループ/プールから切り出すボリューム(LU)のRAIDレベルは
切り出すグループ/プールで決められてます。
SM4308は、Arraysグループというまとまりを最初に作りますが、その中から切り出すボリューム(LU)は
ボリューム(LU)単位でRAIDレベルを選択できます。
※注:Arrays グループを作成した本数で可能なRAIDレベルに限る

実際にためしてみました。
1TのNVMeSSD 8個で、Arraysグループを作成して、4つのRAIDレベルの違うLUを切り出してみました。

【利点】限られた本数のNVMeSSD(1U/2UサーバのフロントベイなどでNVMeサポートが限られている場合など)
で用途によって使い分けができるのが良い!
例えば・・・・
パフォーマンスを重視するボリュームと冗長性を重視するボリュームを搭載できる最大数で実現できます。
冗長性は無視して、とくかくパフォーマンスを重視するボリューム(RAID0)は、できる限り本数を増やしたいが
冗長性が必要なボリュームも欲しい、この場合はRAID5/50を選択しますが、
でもそうなるとパフォーマンスは若干落ちる・・・
本数が少ないので用途ごとにグループ/プールは分けられない・・・
こんな時に下のように構成することができます。

■オンラインで、ArraysグループにSSDの追加、LUの拡張ができます。
オンラインで、既存のAddays グループにSSDを追加して、各RAIDレベルののLUを拡張することができます。


■障害時の冗長性
(1)RAID構成の保持
RAID構成は、SM4308とストレージ側で保持しております。
SM4308 が故障した場合、OSをシャットダウンは必要ですが、SM4308を新しいものに交換するだけで、
ストレージシステムはそのまま利用できます。
また、OSに不具合が発生してOSの再インストールをしても、ドライバをインストールすれば、
ストレージシステムを認識して、そのまま利用することが可能です。
(2)ホットスペア いずれかのSSDが故障した場合の冗長性
Arrays グループからLUを切り出す際に、ホットスペアとするデバイスを指定することにより、
そのデバイスを構成したRAIDのホットスペアとして使用できます。
Default設定では、構成したRAIDのSSDのどれかに障害時が発生すると、自動的にリビルドが開始されます。
※ホットスワップに対応したU.3等のコネクタのフロントベイの場合、障害発生のNVMeSSDを抜いて、
新しいNVMeSSDに換装すれば、自動的にリビルドもします。
【実際にオンラインでIOを実行中に、フロントベイ(U.3)のSSDを抜いてみました!


■実験 Arraysグループ内で、違うRAIDグループがある場合
当然のことながら、RAID0は復旧はしません LUはエラーのまま
ただし、RAID5、50で作成したLUはリビルドするのでそのまま利用可能です。

ホットスペアが無い場合は、RAID5,50は、減った本数でそのまま利用可能ですが、
当然パフォーマンスの縮退は発生します
(3)コンフィグのバックアップとリストア
サーバにRAID構成をコンフィグとしてバックアップすることにより、同じ構成であれば、RAID構成をリストアすることができます。

【検証】一旦、SM4308のコンフィグをクリアして、デバイス(NVMeSSD)、 RAID構成を削除して、
同じ構成のままで、NVMeSSDを認識していない状態にしてからバックアップしたコンフィグからリストアしてみました。

★私の検証して感じたGoodポイント 
・ロープロファイル、ハーフレングスなのは、導入する筐体を選ばないので良いと思った
・UEFIのMicrochip SmartRAID HII Configuration UtilityがあるのでOSに依存しないのは良い
・インストールは、他のアドインカード(GPU等)との干渉問題や、OSのKernel(Linux)依存もなく
インストーラを実行するだけで非常に簡単にできる
・GUIツール(maxView)のインストールも非常に簡単で使いやすく、分かり易い
・WebGUI(maxView)は、リモートからでも操作できるので非常に管理しやすく、
複数のサーバも同時に管理できるのはとても良い、
・WebGUI(maxView)での、障害発生時の状態が視覚的に非常に分かり易い
・私の検証では、障害発生時(Rebuild中)のパフォーマンスの縮退はほとんど感じられなかった。
・Araysグループという概念は限られた本数を全部使用して、複数のRAIDレベルのLUを構築できるので、
使い方の幅が広がると思った。
・RAID構築がとても速く、検証等では構成の組み替えがとても楽でした
ユーザガイド
Adaptec_SmartRAID_4300_Installation_and_User_Guide.pdf
| maxView_Storage_Manager_User_Guide_for_Adaptec_SmartRAID_4300_Series_NVMe_RAID_Accelerator_Controller.pdf |
リリースノート
SmartRAID+4300+Series+SoftwareFirmware+Release+Notes.pdf
パフォーマンスガイド
Getting-Started-with-Adaptec-SmartRAID-4300-Series-NVMe-RAID-Accelerator-Controller-Performance.pdf
Linux Driver
smartxlr-linux-drivers-v1.2.2-105.tgz
Windows Driver
smartxlr-Installer-Windows-driver-1.1.16.1043.zip
Tool(GUI)(maxView)
smartxlr_msm_linux_win_5.05.00.28200.zip
Tool(CLI)(arcconf)