A RAID controller connects a host to several storage devices and can present them as one or more virtual disks. RAID expands to redundant array of independent disks, although RAID 0 provides no redundancy. A hardware RAID controller or disk array controller may calculate parity, manage mirrors, hold read or write cache, track hot spares, and rebuild a failed member. An HBA connects drives with little or no RAID abstraction so the operating system or file system can manage each disk directly.
When hardware RAID owns the storage, the operating system normally sees logical drives rather than every physical disk. The storage controller maps reads and writes to hard drives or solid-state drives according to the RAID configuration, records array metadata, and reports health through its driver and management tools. That abstraction can simplify a supported server build, but it also makes controller compatibility part of data recovery.
HBA vs RAID controller and software-defined storage
Hardware RAID controller
A hardware controller owns the array metadata and exposes a virtual disk to the host. It fits operating systems that need one bootable logical volume, vendor servers with a qualified controller and backplane, and workloads that benefit from protected write-back cache. It also creates a dependency: a failed controller may need a compatible replacement that understands the on-disk configuration.
Current enterprise cards can support SAS, SATA, and selected NVMe devices through tri-mode hardware, but support is specific to controller, backplane, cabling, firmware, and server. Broadcom's MegaRAID 9500 family, for example, lists PCIe 4.0 x8 host links, 12 Gb/s SAS, 6 Gb/s SATA, and PCIe NVMe support on model-dependent port counts. The same family includes both cached RAID models and an entry model without cache.
View the Broadcom MegaRAID 9500 product briefHost bus adapter
An HBA exposes drives to the host with less translation. That is the normal path for ZFS, TrueNAS, Storage Spaces, Linux md RAID, and other software-defined storage when their documentation asks for direct disk access. TrueNAS recommends HBA or JBOD operation and warns that hardware RAID can mask serial numbers and S.M.A.R.T. data, reduce visibility, or risk data in an unprotected controller cache.
“JBOD mode” on a RAID card can behave like an HBA on supported hardware, but verify the details. Creating one RAID0 virtual disk per physical drive is a workaround, not the same interface. It can hide health data and make drive replacement harder.
Motherboard or software RAID
Software RAID uses host CPU and operating-system tools. It avoids a proprietary controller metadata layer and can be easier to move between standard hosts. Boot support, hot-swap behavior, monitoring, recovery tools, and mixed operating-system access vary. Firmware-assisted “RAID” on a motherboard may still depend on a vendor driver and chipset.
What this decision framework covers
The recommendations use current vendor and operating-system documentation. No array was benchmarked, power-failed, rebuilt, or recovered for this article. RAID behavior differs across controller firmware, drive firmware, queue depth, stripe size, cache policy, file system, and workload. Use the server and controller compatibility lists for a production design.
Published port speed is not measured array throughput. Media limits, PCIe bandwidth, parity work, random I/O, cache hits, thermal throttling, and rebuild traffic can each set a lower ceiling.
Common RAID levels and redundant array decisions
| Level | Typical capacity and fault tolerance | Common fit |
|---|---|---|
| RAID 0 | N drives of capacity; no drive fault tolerated | Temporary data with another source |
| RAID 1 | One drive of capacity in a 2-way mirror; 1 fault | Small boot or data volume |
| RAID 5 | N-1 drives of capacity; 1 fault | Read-heavy array with accepted rebuild risk |
| RAID 6 | N-2 drives of capacity; 2 faults | Larger capacity array needing dual parity |
| RAID 10 | Half of raw capacity; failures depend on mirror pairs | Random I/O and faster mirror rebuilds |
Capacity assumes equal-size members and excludes metadata, formatting, reserved space, and vendor differences. Most arrays use only the portion of each drive equal to the smallest member. Minimum drive counts and allowed layouts depend on the implementation.
RAID 0
RAID 0 stripes data across drives with no redundancy. One member failure loses the virtual disk. It can serve scratch data, caches, or replaceable staging files when the application already keeps another copy. It is not a way to protect important data.
RAID 1
RAID 1 mirrors data. A two-drive mirror can survive one member failure. Reads may be served from either member, while every write must reach both. It is clear to operate and common for boot volumes, but half the raw capacity is used for a two-way mirror.
RAID 5 and RAID 6
Parity arrays trade write work for capacity. RAID 5 can survive one member failure; RAID 6 can survive two. During a degraded period, the array must reconstruct missing data, and another media error or drive failure can threaten the volume. RAID 6 gives more fault margin for large groups, though it does not remove rebuild load or backup needs.
Small random writes can require reading old data and parity, calculating changes, then writing data and parity. Protected controller cache can combine and acknowledge writes safely when the controller supports it. SSD arrays, databases, and latency-sensitive work still need workload testing.
RAID 10
RAID 10 stripes across mirror sets. It normally uses half the raw capacity and at least four drives. It can survive more than one failure only when the failed drives are in different mirror pairs. Rebuild work usually copies a surviving mirror rather than reading every member for parity reconstruction.
Hot spare or cold spare
A hot spare can begin rebuilding without a visit, which reduces time spent degraded. It does not add fault tolerance until the rebuild completes. A cold spare avoids continuous power and wear but needs staff response. Match spare capacity, interface, sector format, and controller approval to every array it may serve.
Evaluating RAID controller card hardware features
PCIe generation and lanes
Check the controller's edge connector and required electrical lanes, then read the motherboard or riser map. A physical x16 slot may supply only x4 lanes or share bandwidth with another card. The host link should carry the expected aggregate storage traffic without blocking another required device.
PCIe bandwidth, queue depth, and NVMe topology
PCIe generation and lane count place an upper boundary on traffic between the RAID controller card and host. Drive media, parity work, cache policy, firmware, and workload may set a lower one. Queue depth describes how many requests can be outstanding, but a larger queue is not automatically faster: it can raise latency for interactive work while helping a high-concurrency workload keep several devices busy.
NVMe support is especially topology-specific. A tri-mode label does not prove that every U.2, U.3, EDSFF, switch, expander, or backplane path is supported. Confirm PCIe lane allocation, bifurcation or switch requirements, enclosure management, hot-plug behavior, and any controller zoning rules for the exact server design.
SATA, SAS, and NVMe are different paths
Many SAS controllers can operate supported SATA drives, but a SATA controller cannot operate SAS drives. NVMe uses PCIe rather than the SATA or SAS command path. A tri-mode card needs the matching backplane and cable topology to route each protocol. Connector shape alone does not prove that the lanes are wired for the intended device.
Internal and external ports
Internal controllers attach to a server backplane or direct breakout cables. External ports connect disk shelves with approved external cables. Count physical links, expanders, enclosure services, and maximum supported devices. One connector can carry several lanes, so connector count is not drive count.
Drive qualification and sector format
Check the server or controller list for the exact HDD or SSD family, firmware, interface, and capacity. Match 512-byte, 512e, or 4Kn sector support across the array and boot path. Mixed sizes waste capacity. Mixed performance and endurance can make the slowest or weakest member set the rebuild behavior.
Consumer SSDs may lack power-loss protection and the write-endurance reporting expected by a server controller. Drive write cache policy also changes data risk. Do not enable an unprotected drive cache just because a speed test rises.
Stage new drives according to the server and drive vendors' validation procedures. Record identity and firmware, review health data, confirm sector format and secure-erase state, and run an appropriate media or burn-in check before joining a production array. A generic stress-test recipe can consume SSD endurance or miss controller-specific errors, so use documented limits and preserve the results with the asset record.
Cables, backplane, and enclosure management
Use the cable part and lane mapping named for the controller and backplane. Forward and reverse breakout cables can use similar connectors with different wiring roles. Enclosure management through SES, SGPIO, or another supported path controls slot lights, fault status, and hot-swap reporting; data access alone does not prove that management works.
Firmware and replacement planning
Keep the controller firmware, driver, management utility, and server platform bundle on supported versions. Export configuration and event logs after changes. For critical systems, document which replacement controller family can import the array and how preserved cache will be handled after a card failure.
RAID controller monitoring, firmware, and support
Use the RAID controller vendor's current management utility or server-management integration to collect physical-drive, virtual-disk, cache, temperature, battery or capacitor, patrol-read, and enclosure events. Send SNMP, email, webhook, or monitoring-platform alerts outside the affected array. Check that a warning becomes an actionable ticket rather than disappearing into a local log.
Plan firmware and driver changes as a coordinated server-platform maintenance task. Read compatibility and rollback notes, export the configuration, verify a current backup, and preserve the previous supported package where the vendor permits it. For a production RAID card, confirm support term, RMA path, replacement availability, and which controller family can import the disk array metadata before an outage occurs.
Core hardware RAID terms
A RAID controller card is the host adapter that owns array logic and presents logical volumes. A disk array controller is the broader functional term and may be integrated into a server or storage enclosure. Hardware-based RAID performs array management in the controller stack; an HBA exposes drives more directly for software-defined storage. These labels do not establish protocol, cache safety, supported RAID levels, or recovery compatibility by themselves.
RAID cache protection, write policy, and recovery
Write-through and write-back
With write-through policy, the controller reports completion after the disk subsystem receives the write. With write-back, the controller can report completion after data reaches controller cache and flush it later. Dell's PERC documentation makes this distinction and uses battery-backed cache preservation to protect pending data during power loss.
Use write-back only when the controller says its cache protection is healthy. Battery or capacitor status, retained flash, and firmware policy form one protection system. “Force write back” can acknowledge data without working protection and can lose acknowledged writes after a failure. A building UPS helps with utility outages but does not cover every controller, power-supply, cable, or system-board fault.
RAID cache protection may use a battery-backed cache unit or a supercapacitor that preserves cached writes to flash, depending on the hardware RAID controller. Treat the controller's health state and replacement guidance as authoritative; a RAID card with failed cache protection should not be forced into unsafe write-back operation.
Read-ahead policy
Read-ahead can help sequential workloads by fetching data before the host asks for it. It gives less value to random access and can evict useful cache. Use workload evidence and controller counters rather than enabling every cache feature by habit.
Monitor the protection parts
- Controller, cache, battery or capacitor, and temperature health
- Physical drive media, predictive, and interface errors
- Virtual disk state and background initialization
- Patrol read, consistency check, and rebuild progress
- Foreign configurations and failed enclosure links
Send alerts outside the server that owns the array. An email queue stored on a failed volume cannot report its own failure. Test the alert route and replacement procedure during planned maintenance.
Rebuild with margin
A rebuild reads and writes large parts of the array while production I/O continues. Larger drives, busy workloads, media errors, and conservative rebuild priority extend the degraded period. Keep free power, cooling, controller bandwidth, and drive bays for the chosen recovery plan. Do not pull a second disk from a degraded array until its identity and state are confirmed.
RAID arrays provide redundancy, not backup
RAID can preserve access after some drive failures. It does not protect against deletion, ransomware, application corruption, controller error, fire, theft, enclosure damage, or an operator clearing the wrong virtual disk. Keep separate backups with version history and at least one copy outside the array's failure domain.
Snapshots can shorten recovery from logical mistakes, but snapshots on the same array disappear with the array. Replication can copy errors too. Test restores to prove that credentials, encryption keys, software, and data can be recovered.
Where hardware RAID fits—and where it does not
Use a hardware RAID controller when
- The server vendor qualifies the card, backplane, drives, and management stack.
- The host needs a bootable virtual disk with protected write cache.
- Operations staff will monitor cache, disks, patrol tasks, and rebuilds.
- A compatible controller replacement is part of the recovery plan.
Use an HBA or direct disks when
- ZFS, TrueNAS, or another storage layer requires direct device visibility.
- Software RAID owns redundancy and recovery.
- Drive serials, health data, error details, and discard behavior must reach the host.
- Controller cache would duplicate or conflict with the storage stack's design.
RAID card purchase checklist and operations
The card price can omit a cache-protection module, cables, brackets, backplane, license features, spare controller, qualified drives, and management software. Enterprise server bundles cost more because the vendor validates the complete path and supports coordinated firmware.
Operating cost includes power, airflow, battery or capacitor service, monitoring, replacement drives, rebuild performance, and staff time. A hot spare consumes a bay and capacity budget. A cold spare needs an inventory and response process.
Cheap used controllers can be useful in a lab, but production buyers should verify lifecycle status, firmware source, cache-protection health, cable availability, and whether a later replacement can import the array. A missing battery cable can erase the apparent savings.
Purchase and deployment checklist
- Define the required RAID levels, boot behavior, usable capacity, fault tolerance, workload, and recovery target.
- List drive protocol, count, form factor, sector format, firmware, backplane, cables, expanders, and hot-swap requirements.
- Confirm host PCIe lanes, operating-system or hypervisor driver, management tools, cache protection, and supported firmware bundle.
- Price the RAID controller, cache unit, licenses, cables, qualified drives, hot or cold spare, replacement card, warranty, and support.
- Before production, document configuration and alerts, test a representative workload, rehearse a drive replacement and rebuild, and verify a restore from backup.
The last step should run in a controlled staging environment with non-production data. It validates the chosen disk array controller workflow without treating a synthetic throughput test as a promise for every application.
Questions readers ask
Do I need a RAID controller for ZFS?
No. ZFS is designed to manage redundancy itself. TrueNAS recommends direct disk access through an HBA or a controller's supported HBA/JBOD mode.
Is RAID 5 unsafe?
RAID 5 tolerates one member failure. Whether that is enough depends on drive count, capacity, rebuild time, workload, media-error risk, uptime need, and backup quality. RAID 6 or mirrors provide different fault and performance tradeoffs.
Can SAS and SATA drives share one controller?
Some SAS RAID controllers support both, but mixing them in one array may be restricted or unwise. Check controller, backplane, expander, and drive qualification.
Does a cache battery replace a UPS?
No. Cache protection preserves pending controller writes for a defined failure case. A UPS supports the wider server, enclosure, and shutdown process. Each covers risks the other does not.
Can I move an array to another RAID controller?
Sometimes, within a documented compatible family and migration path. Export the configuration and confirm foreign-array import support before a failure, not after one.
Sources
- TrueNAS hardware guide and storage-controller guidance, checked July 16, 2026.
- Dell PERC 11 virtual-disk write cache policy, checked July 16, 2026.
- Red Hat Enterprise Linux RAID level requirements, checked July 16, 2026.