一、什么是 RAID
磁盘阵列全名是“ Redundant Arrays of Inexpensive Disks, RAID ” :廉价冗余磁盘阵列。 RAID 可以透过一个技术(软件或硬件),将多个较小的磁碟整合成为一个较大的磁碟装置; 而这个较大的磁碟功能可不止是储存而已,他还具有数据保护的功能。
RAID有以下不同级别(level):
RAID-0 (等量模式, stripe):效能最佳
这种模式的 RAID 会将磁碟先切出等量的区块, 然后当一个文件要写入 RAID 时,该文件会依据区块的大小切割好,之后再依序放到各个磁碟里面去。由于每个磁碟会交错的存放数据, 因此当你的数据要写入 RAID 时,数据会被等量的放置在各个磁碟上面。
RAID-1 (映射模式, mirror):完整备份
这种模式也是需要相同的磁碟容量的,最好是一模一样的磁碟。如果是不同容量的磁碟组成 RAID-1 时,那么总容量将以最小的那一颗磁碟为主。这种模式主要是让同一份数据,完整的保存在两颗磁碟上头。
RAID 0+1,RAID 1+0
所谓的 RAID 0+1 就是:
(1)先让两颗磁碟组成 RAID 0,并且这样的配置共有两组;
(2)将这两组 RAID 0 再组成一组 RAID 1
RAID 5:效能与数据备份的均衡考量
RAID-5 至少需要三颗以上的磁碟才能够组成这种类型的磁盘阵列。这种磁盘阵列的数据写入有点类似 RAID-0 , 不过每个循环的写入过程中,在每颗磁碟还加入一个同位检查数据 (Parity) ,这个数据会记录其他磁碟的备份数据, 用于当有磁碟损毁时的救援。利用效率为n-1/n
RAID 4: 工作方式类似于RAID5,但是它只用某一块磁盘来校验备份数据。
二、software, hardware RAID
硬件磁盘阵列 (hardware RAID) 是透过磁盘阵列卡来达成阵列的目的。硬件磁盘阵列卡又很贵。因此就有发展出利用软件来模拟磁盘阵列的功能, 这就是所谓的软件磁盘阵列 (software RAID)。软件磁盘阵列主要是透过软件来模拟阵列的任务, 因此会损耗较多的系统资源。
三、mdadm多磁盘管理
-A 装配模式
-C 创建模式
-F 监控模式
-G 增长模式 –n 指定使用多少块磁盘来创建设备
-x 指定空闲盘的个数
-c chunk大小(默认64k)
-l level,指定使用RAID的级别
管理模式 - - add
- - fail
- -remove
实例:创建RAID5
[root@www ~]# fdisk /dev/hda
Command (m for help): n
First cylinder (2053-5005, default 2053): <==直接按下 [enter]
Using default value 2053
Last cylinder or +size or +sizeM or +sizeK (2053-5005, default 5005): +1000M
# 上述的动作请作五次!
Command (m for help): p
Disk /dev/hda: 41.1 GB, 41174138880 bytes
255 heads, 63 sectors/track, 5005 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 1288 10241437+ 83 Linux
/dev/sda3 1289 1925 5116702+ 83 Linux
/dev/sda4 1926 5005 24740100 5 Extended
/dev/sda5 1926 2052 1020096 82 Linux swap / Solaris
/dev/sda6 2053 2175 987966 83 Linux
/dev/sda7 2176 2298 987966 83 Linux
/dev/sda8 2299 2421 987966 83 Linux
/dev/sda9 2422 2544 987966 83 Linux
/dev/sda10 2545 2667 987966 83 Linux
//6~10 号是需要的 partition
Command (m for help): w
[root@www ~]# partprobe
[root@www ~]# mdadm --C --a=yes /dev/md0 --level=5 –n 5 /dev/sda{6,7,8,9,10}
[root@www ~]# mdadm --detail /dev/md0 //查看详细信息
[root@www ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 hda9[3] hda10[4](S) hda8[2] hda7[1] hda6[0]
2963520 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU]
格式化与挂载使用 RAID
[root@www ~]# mkfs -t ext3 /dev/md0
[root@www ~]# mount /dev/md0 /mnt/raid
[root@www ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda2 9920624 3858820 5549736 42% /
/dev/hda1 101086 21408 74459 23% /boot
tmpfs 371332 0 371332 0% /dev/shm
/dev/hda3 4956316 1056996 3643488 23% /home
/dev/md0 2916920 69952 2698792 3% /mnt/raid