Redundant
Array of
Independent
Disks, originally
Redundant
Array of
Inexpensive
Disks is a storage technology that combines multiple disk drive components into a logical unit.
Disk arrays stripe data across multiple disks and access them in parallel to achieve:
Higher data transfer rates on large data accesses and
Higher I/O rates on small data accesses.
Level Description
RAID 0
Block-level striping without parity or mirroring.
RAID 1
Mirroring without parity or striping.
RAID 2
Bit-level striping with dedicated Hamming-code parity.
RAID 3
Byte-level striping with dedicated parity.
RAID 4
Block-level striping with dedicated parity.
RAID 5
Block-level striping with distributed parity.
RAID 6
Block-level striping with double distributed parity.
RAID 10
Nested RAIDs or hybrid RAIDs are constructed by distributing data over mirrored sets of storage devices.
Mirroring plus striping (striped-mirror, RAID-1+0 or RAID-10)
The combination of striping above mirroring is called a striped-mirror layout. Putting mirroring below striping mirrors each column of the stripe. If there are multiple sub disks per column, each subdisk can be mirrored individually instead of each column. A striped-mirror volume is an example of a layered volume.
Nesting
Level Description Minimum # of disks
RAID 0+1
Top Level RAID 1, Bottom Level RAID 0.
3
RAID 1+0
Top Level RAID 0, Bottom Level RAID 1.
4
RAID 5+0
Top Level RAID 0, Bottom Level RAID 5.
6
RAID 5+1
Top Level RAID 1, Bottom Level RAID 5.
6
RAID 6+0
Top Level RAID 0, Bottom Level RAID 6.
8
RAID 6+1
Top Level RAID 1, Bottom Level RAID 6.
8
RAID 1+0+0
RAID 0
RAID 0
RAID 1
8
Software RAID - the RAID task runs on the CPU of your computer system.
Hardware RAID - solution has its own processor and memory to run the RAID application.
RAID in RHEL 6
The minimum number of software RAID partitions required for each RAID level:
• RAID 0,1,10 – 2 partitions
• RAID 4,5 – 3 partitions
• RAID 6 – 4 partitions
#create partitions
fdisk /dev/sdb
Make 4 partitions of each 1GB
Change System ID as fd to Linux raid autodetect
#create raid
mdadm -C /dev/md0 -l 5 -n 3 /dev/sdb1 /dev/sdb2 /dev/sdb3
C-create
5-raid level
3-raid devices
#mount
mkfs.ext4 /dev/md0
mkdir /raid5
vim /etc/fstab
/dev/md0 /raid5 ext4 defaults 0 0
cd /raid5/
ls
#raid status
mdadm --detail /dev/md0
cat /proc/mkstat
#set faulty partition
mdadm -f /dev/md0 /dev/sdb3
mdadm: set /dev/sdb3 faulty in /dev/md0
#add new raid partition
mdadm -a /dev/md0 /dev/sdb4
mdadm: added /dev/sdb4
#remove faulty raid partition
mdadm -r /dev/md0 /dev/sdb3
mdadm: hot removed /dev/sdb3 from /dev/md0