Most sysadmins use hardware RAID controllers, which are quick and easy. That’s fine but if a MRAID controller goes south, it can be difficult to get a replacement that recognises the proprietary RAID format the controller uses. Hardware RAID controllers also increase the purchase costs.
Software RAID used to create a noticeable overhead. With the advances in CPU tech and tuning, for most workloads the overhead is now unnoticeable.
Linux has software RAID built into the kernel via the mdadm tool. The beauty of Linux soft-RAID is that the RAID-enabled disks can be read in any Linux system you can plug the disk set into without encountering any RAID hardware dependencies. An administrator can even configure a Linux soft-RAID environment as boot disks. As an example, it’s in Ubuntu server installations under Something Else on the disk configuration screen if you don’t want to do it manually.
We’re covering the basics of implementing Linux soft-RAID using a pair of disks for non-boot RAID (because we don’t have enough space here).
One of the things a lot of new Linux administrators get wrong is that they create the RAID from the raw disks rather than using partitions.
Using partitions rather than raw disks means the administrator can set the size of all the partitions to the size of the smallest disk. In future, if you replace a failed disk, it’s as easy as creating an equally sized partition on the replacement and resynchronising. No nasty ‘force’-style commands to make the disk fit.