Short and sweet: how to choose a RAID/HBA controller for the server
RAID controllers have not left and are not going to, on the contrary, hardware controllers for NVME and PCI Express drives (including M2 format drives) are entering the market. The hardware RAID should be chosen for servers running VMware vSphere operating systems, and the HBA controller should be chosen for implementing software RAID (LVM, ZFS) running Proxmox VE. For Windows Server, you can choose both hardware RAID and HBA, but hardware RAID is still preferable. For less common operating systems, such as FreeBSD, Citrix, etc., you should refer to the OS documentation.
Checking the support from the operating system
When choosing a RAID controller, it is important to check the availability of drivers for your operating system. Windows Server and Proxmox VE have a wide list of supported hardware, so drivers for these operating systems usually do not pose problems. VMware, on the contrary, has a limited list of supported hardware, so you need to check not only the compatibility of the RAID controller with your operating system at the driver level, but also at the level of software monitoring. In most cases, the built-in configuration and monitoring tools are easier to install and configure.
Be sure to check compatibility with the drives
It is also necessary to check the list of compatibility with HDD and SSD. Disks differ in interface type (SATA, SAS, PCIe), form factor (2.5" and 3.5") and storage capacity, as well as in data storage technologies: CMR, SMR, PMR for HDD, TLC, SLC, MLC for SSD. The RAID controller must support all the disks used, otherwise there may be problems with the RAID array up to failure and data loss. Modern HDDs/SSDs are very different from those that were produced 10-15 years ago, and the firmware of the drive plays a significant role here, so if the compatibility list does not clearly and clearly indicate that the drives you purchase are compatible with the purchased controller by P/N with the indication of the compatible firmware version, the configuration is better reconsider.
Be sure to check compatibility with SAS expanders and disk shelves when using them
When using external active disk buckets and SAS/SATA expanders, repeat the previous paragraph. Usually, active expanders do not require drivers, and remain "transparent" to the operating system, compatibility with drives and controllers should be checked just as carefully here.
As for performance
Hardware RAID provides higher performance and reliability than software RAID by caching write operations to non-volatile memory or SSD. Practically the same speed can be obtained when using software tools for combining drives into arrays, and the reading speed, as a rule, is the same there and there.
As for working under load
With a constant high load on the array, HBA is preferable, since RAID controllers, oddly enough, are prone to working with errors, especially those manufactured by Adaptec. Therefore, if the array is constantly loaded at 100%, it is better to choose HBA + software RAID.
As for reliability and crash recovery
Without options, in the case when you already have something broken or the array is in the "does not start" state, it is better to deal with a software RAID on the HBA than with a hardware RAID controller. The reason for this lies in the fact that software arrays are more tolerant of data loss and the launch of non-recommended configurations, so where the hardware RAID controller simply refuses to restore data and simply says "no", you can still tinker with the software and pull out the data.
Does it make sense today in SAS drives?
Definitely not. For individual servers, SAS today does not give any advantage over SATA/PCI Express.
In total
An HBA controller for software RAID (LVM, ZFS) should be chosen to purchase servers running Proxmox VE and TrueNAS in order to get the advantages of smart file systems, combining disks with different interfaces into a common array (SAS+SATA+ PCI Express), and although this is not recommended, sometimes there are simply no options for working with a constant 100% load.
It is better to purchase a hardware RAID controller for Windows Server and individual VMware ESX servers without vSAN. Always check for drivers for your operating system and recheck compatibility with SSD and HDD 10 times.
Ron Amadeo
18/09.2023