SoftNAS® can leverage hardware RAID arrays, where the disk RAID process is managed by the underlying disk controller. Hardware RAID may be available at the disk controller level, which can provide higher performing RAID 5 and RAID 6 configurations, as the better controllers are able to coalesce multiple writes and optimize disk arm write motion. When hardware RAID is used with SoftNAS®, RAID administration takes place outside of SoftNAS®.
When choosing to use hardware RAID, also use software RAID to increase redundancy, performance and recoverability. To store long-term data for more than a few years, it is highly recommended to use the ZFS software RAID functionality (even with hardware RAID) for VMDKs. This is because ZFS will detect and correct "bit rot" and other errors that creep into storage media over time; otherwise, errors creep in, causing corrupted files over the long haul; e.g., after 4 to 5 years, fewer if using inexpensive disks that are more prone to developing long-term storage accuracy errors.
When choosing a disk controller, if it includes write caching, be sure it also includes a built-in battery backup that will hold onto any cached writes in the event of a power failure. This will increase the system's resiliency to failure.
Storage Configuration Scenario
For the purpose of example, consider a storage solution using twenty 600 GB SAS drives.
One possible configuration is as follows:
Create two hardware RAID 6 arrays, plus two spares. Each array consists of 8 drives - 6 data + 2 parity.
Each hardware RAID array becomes a VMware datastore with approximately 3.3 TB of usable storage (two 3.3 TB datastores)
For maximum storage capacity and resiliency, create six 1.1 TB VMDKs from the two datastores and attach them to the SoftNAS® VM. This results in six virtual disks of 1.1 TB each becoming available within SoftNAS®.
Inside SoftNAS®, add all six virtual disks to a single, large storage pool using RAID 5 (single parity). The advantage of using both hardware RAID 6 is the arrays can tolerate up to two concurrent drive failures on each array. The software RAID 5 then provides an added layer of parity and recoverability.
Effectively disable software RAID within SoftNAS® by specifying RAID 0 (no redundancy, with striping) and assign all six 1.1 TB virtual disks to a storage pool. Please note that if hardware RAID is used, combined with RAID 0 in SoftNAS®, the built-in ZFS filesystem will be unable to recover data, as it will have no parity information to work with. As a result, as with any hardware RAID system, data integrity is reliant upon the hardware level RAID array and its integrity alone.
Alternatively, place the hardware controller into "JBOD mode" and just pass each disk through to SoftNAS® directly as raw storage (no hardware RAID), and use the software RAID within SoftNAS® to handle RAID.
It is important to give careful consideration to which type of RAID configuration will be used to provide the right balance of performance and resilience for applications.