What is RAID? Redundant Array of Inexpensive/Independent Disks RAID can improve availability and throughput (although actually reliability – whether anything is broken – suffers because of the larger number of disks) Data is stored on several disks instead of a single disk
RAID 0: Striping This level offers no redundancy – no extra data is kept. The performance is the best of any level. Throughput is increased by striping data across several disks.
RAID 1: Mirroring Uses twice as many disks Whenever data is written to one disk, that data is also written to a redundant disk so that there are always two copies of the information When a disk fails, the system merely goes to its mirror for the data
RAID 3: Bit-Interleaved Parity Reads and writes go to all disks in a group, with one extra disk to hold the check information in case there is a failure. Parity is simply the sum of the data in all the disks modulo 2. Lost data can be reconstructed by examining the parity. Every access goes to all disks.
RAID 4: Block- Interleaved Parity Allows applications to do smaller accesses than RAID 3, allowing independent accesses to occur in parallel. Small, independent reads are easy – simply read the data and then check for error detection. Writes are harder – old data is read, new data is compared, and only those parity bits whose values change are updated. The parity disk becomes a bottleneck, since the parity disk must be updated on every write.
RAID 5: Block-Interleaved Distributed Parity This is a way to get rid of the bottleneck of RAID 4 – distribute the parity information across all disks. 0 3 6 9 1 4 7 10 2 5 8 11 P0 P1 P2 P3 0 3 6 1 4 P2 9 2 P1 7 10 P0 5 8 11 RAID 4RAID 5
Higher Levels RAID 6: Adds a second parity scheme that is distributed across different drives and thus offers extremely high fault- and drive- failure tolerance RAID 7: Includes a real-time embedded operating system as a controller, caching via a high-speed bus, and other characteristics of a stand-alone computer.
Higher Levels (cont.) RAID 10: Offers an array of stripes in which each stripe is a RAID-1 array of drives. This offers higher performance than RAID-1 but at much higher cost. RAID 53: Offers an array of stripes in which each stripe is a RAID 3 array of disks. This offers higher performance than RAID 3 but at much higher cost.
RAID in Linux Linux offers built-in software RAID capabilities Advantages of Linux Software RAID –Threaded rebuild process –Fully kernel-based configuration –Backgrounded array reconstruction –Hot-swappable drive support –Automatic CPU detection to use CPU Optimizations
Options for Software RAID You can create a software RAID in Linux using only one hard disk! You can create a software RAID in Linux using multiple drives. Specifying the type of RAID you wish to install on your systems, depends on how they are used; refer back to RAID Levels.
Creating RAID Partitions Using Disk Druid, Select software RAID from the Filesystem Type Select the drive on which the RAID is to be created Enter the size of the RAID partition Choose other options as needed for your RAID
Software RAID Configuration Once RAID partitions have been created, select the Make RAID option on the Disk Druid main partitioning screen. Enter a mount point, select a filesystem, and choose your RAID Level. A spare partition can be specified for RAID 1 and RAID 5
RAID Drive Summary You have now created a software RAID in Linux. Try it at home!
Rules of Thumb When setting up a RAID with different sized hard drives, configure partitions on each drive to be the same size. Whenever possible, use the same hardware specifications for multiple hard drives Creating a software RAID on a single hard drive will slow performance because data must be written twice using only one head.
Do-It-At-Home RAID Build your own home RAID using –Soyo KT-SY333 Dragon Ultra Motherboard –AMD Athlon XP 2200+ CPU –1024MB DDR PC2700 RAM –(4) 160GB Maxtor DiamondMax DX540 Hard drives –Multiple cooling fans –Large Tower Case with a 400W power supply
Soyo KT-SY333 Motherboard Embedded Hipoint IDE-RAID chip, providing ATA-133 IDE-RAID 0,1,0+1 Setup both Hardware and Software RAIDs simultaneously!
Setting up your RAID Enter the BIOS set-up of your Soyo motherboard. Enable the desired hardware RAID Level. Install Linux on your machine with or without the software RAID option. Selecting hardware RAID Level 0 and software RAID Level 0 will provide the best level of performance. This setup provides for a fast 640GB RAID.
Additional Resources Patterson, David A. and John L. Hennessy. Computer Architecture: A Quantitative Approach. San Francisco, CA: Morgan Kaufmann Publishers, Inc., 1996. http://whatis.techtarget.com/definit ion/0,289893,sid9_gci214332,00.ht ml