Introduction
A redundant array of independent disks (RAID) provides capacity and reliability and increases performance by combining an array of physical hard disks into a single logical disk. RAID is a common feature shared by most servers and almost all storage platforms as no single disk can meet the demands of capacity and performance of a busy server.
RAID is not a backup
RAID protects your data against failure of one or more disks, and increases your uptime. However, it does not qualify as a backup. Please consider the following when before using RAID on your server:
- RAID is not “offsite”, it is part of your server
- RAID cannot restore old or deleted data
- RAID requires monitoring as a failed disk may go unnoticed
Information
Responsibility to monitor your RAID arrays is on you, and not with Leaseweb. However, if a drive fails, you can create a support ticket to have it replaced.
RAID levels
RAID has different modes of operation, called “levels”. The RAID levels differ in how the data stored on the logical disk is distributed over the physical disks in the array, which determines the capacity, performance and reliability of the array.
The most common RAID levels are:
Level | Method | Min. disks required | Capacity | Benefits | Drawbacks | Notes |
---|---|---|---|---|---|---|
RAID 0 | Striping | 2 | N | High performance Simple | No redundancy | Striping with double-distributed parity |
RAID 1 | Mirroring | 2 | 1/2 N | Good reliability Good performance Simple | Only available for two disks | Common software RAID option. At Leaseweb, RAID 1 will always use only the first two disks, regardless of the total amount of disks in the server |
RAID 5 | Striping with distributed parity | 3 | N – 1 | Good reliability Good performance Scalable | Slower rebuild after disk failure | |
RAID 6 | Striping with double distributed parity | 4 | N – 2 | Excellent reliability Good performance Scalable | Slower rebuild after disk failure | Not available on all hardware RAID controllers |
RAID 10 | Mirroring and striping | 4 | 1/2 N | Good reliability High performance | Poor scaling | Combination of RAID 1 and RAID 0 |
Rebuilding
If a physical disk that is part of a RAID array fails, the array is said to be “degraded”. When the failed disk is replaced, the data that was originally present on the failed disk should be regenerated and rewritten to the newly placed disk. This process is called “rebuilding”.
For RAID 1 and RAID 10, rebuilding is simply a copy. For RAID 6 and RAID 5, the data has to be recalculated based on the remaining data and parity data.
Because the rebuilding process generates an additional I/O load on the remaining disks, the performance of the array will be reduced until the rebuild is complete.
Calculating for RAID array characteristics
Calculating the capacity, reliability, and performance of an array can be tricky. A full explanation is beyond the scope of this article, but many excellent RAID calculation tools can be found online.
As an example, please refer to this tool from Wolfram|Alpha: RAID calculator on Wolfram|Alpha
Implementations
Hardware RAID
RAID is most commonly implemented on dedicated hardware, known as the “RAID controller”. This is especially true for both RAID 5 and RAID 6 which require complicated parity calculations. The RAID controller also provides a well-maintained set of management features.
To improve performance, especially for writes to the array, most hardware RAID controllers also include an amount of DRAM cache memory. But, in the event of a power failure, the information in the cache at that moment will be lost. To avoid this situation, a dedicated Battery Back-up Unit (BBU) can be attached to the controller to keep the contents of the cache memory available in the event of a power failure.
Advantages | Disadvantages |
---|---|
– Dedicated controller processor and memory offloads the main CPU – BBU giving a lower chance of data loss in the event of a power failure – Well-defined and implemented feature set – Supports larger numbers of disks – Supports hot-swapping failed disks – Most controllers support SAS disks | – Vendor-specific implementation – Not available on all servers – No NVMe disk support |
Please note that NVMe is not supported in combination with Hardware RAID, because Hardware RAID controllers are not able to support NVMe.
Software RAID
Software RAID uses software to emulate a logical disk from the physical disks present in the server. All modern operating systems provide support for software RAID. Compared to hardware RAID, it is almost never a preferable choice, but it is universally available.
Software RAID is most commonly used for simple RAID 1 redundancy on servers without a hardware RAID controller.
Advantages | Disadvantages |
---|---|
– Supports any kind of storage – Standardized set of tools – Low-cost – Vendor agnostic – Flexible, can be mixed with non-RAID partitions | – OS specific – Hot-swapping support is limited by OS and server model – OS may still be crashed by a failed disk – OS reboot may not work with a failed disk – No cache memory protection in the event of a power failure |
RAID at Leaseweb
Leaseweb offers RAID on all servers containing 2 or more disks – a hardware RAID if the server model features a hardware RAID controller or else a software RAID. Server re-installations with software or hardware RAID are offered at no additional cost. If you wish to reinstall your server, and the desired RAID option is not available through our Customer Portal & API, you can request it via a support ticket.
Further reading
- Wikipedia: RAID
- Ars Technica: The skinny on RAID – May 2000, by Matt “Panders” Anderson & Ken “Caesar” Fisher
- EECS Department, University of California, Berkeley: A Case for Redundant Arrays of Inexpensive Disks (RAID) – December 1987, by David A. Patterson, Garth Gibson, Randy H. Katz