RAID功能介绍及其使用
独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks),简称磁盘阵列。其基本思想就是把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使性能达到甚至超过一个价格昂贵、容量巨大的硬盘。根据选择的版本不同,RAID比单颗硬盘有以下一个或多个方面的好处:增强数据集成度,增强容错功能,增加处理量或容量。另外,磁盘阵列对于电脑来说,看起来就像一个单独的硬盘或逻辑存储单元。分为RAID-0,RAID-1,RAID-1E,RAID-5,RAID-6,RAID-7,RAID-10,RAID-50,RAID-60。
简单来说,RAID把多个硬盘组合成为一个逻辑扇区,因此,操作系统只会把它当作一个硬盘。RAID常被用在服务器电脑上,并且常使用完全相同的硬盘作为组合。由于硬盘价格的不断下降与RAID功能更加有效地与主板集成,它也成为玩家的一个选择,特别是需要大容量存储空间的工作,如:视频与音频制作。
最初的RAID分成不同的档次,每种档次都有其理论上的优缺点,不同的档次在两个目标间获取平衡,分别是增加数据可靠性以及增加存储器(群)读写性能。这些年来,出现对于RAID观念不同的应用。
RAID级别 |
读写性能 |
可用空间 |
容错能力 |
最少磁盘数 |
安全性 |
RAID-0 |
读写性能有所提升 |
N*min(s1,s2,,,,, |
无容错能力 |
2,2+ |
低 |
RAID-1 |
读磁盘倍数,写下降 |
1(无论多少块磁盘,都只能单一块磁盘用 |
有冗余能力 |
2,2+ |
高(备份了一份) |
RAID-5 |
读性能提升,写>RAID-1,小于RAID-0 |
(N-1)*min(s1,s2,,, |
有容错能力 有冗余能力 |
3,3+ |
较高(有一块硬盘做校验,交叉使用的) |
RAID-6 |
读性能提升,写>RAID-1,小于RAID-0 |
(N-2)*min(s1,s2,,, |
有容错能力 有冗余能力 |
4,4+ |
较高(有两块硬盘做校验,交叉使用的) |
RAID-10 |
先做镜像,在分区存储,都提升 读:N,写:N/2 |
(N-2)*min(s1,s2,,,/2 |
有容错能力 每组磁盘只能坏一块 |
4,4+ |
折中方案 较高 |
RAID 5
RAID Level 5是一种储存性能、数据安全和存储成本兼顾的存储解决方案。它使用的是Disk Striping(硬盘分区)技术。RAID 5至少需要三块硬盘,RAID 5不是对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID5的一个磁盘数据发生损坏后,可以利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。RAID 5可以理解为是RAID 0和RAID 1的折衷方案。RAID 5可以为系统提供数据安全保障,但保障程度要比镜像低而磁盘空间利用率要比镜像高。RAID 5具有和RAID 0相近似的数据读取速度,只是因为多了一个奇偶校验信息,写入数据的速度相对单独写入一块硬盘的速度略慢,若使用“回写缓存”可以让性能改善不少。同时由于多个数据对应一个奇偶校验信息,RAID 5的磁盘空间利用率要比RAID 1高,存储成本相对较便宜。
软件磁盘阵列(Software RAID)
主要由电脑主板CPU处理数组存储作业,缺点为耗损较多CPU资源运算RAID,优点则是价格偏低。分类有二种:
纯软件磁盘阵列(Pure Software RAID):只需要主板支持即可,不需要任何磁盘阵列卡。若主板损坏,可能难以购买同款主板重建RAID。
硬件辅助磁盘阵列(Hardware-Assisted RAID):需要一张RAID卡,以及厂商所提供的驱动程序。这款RAID较易迁移到其他电脑。
硬件磁盘阵列(Hardware RAID)
RAID卡上内置处理器,不需要服务器的CPU运算。优点是读写性能最快,不占用服务器资源,可用于任何操作系统,也能在系统断电后,通过备份电池模块(BBU, Backup Battery Unit)以及非易失性存储器 (NVRAM)将硬盘读写日志档(Journal)包含的剩余读写作业先纪录在存储器中,等待电力供应撤消后,再由NVRAM取回日志档数据,接着再完成读写作业,将剩余读写作业安全完成以确保读写完整性。备份电池模块通常会配合数组卡的Write-Back缓存模式,借由此存储器缓存读写作业以得到更高的读写性能;但是没有备份电池模块的硬件磁盘阵列卡,切勿使用Write-Back缓存模式以免遭遇断电情形导致读写数据流失。此外,因为硬件磁盘阵列卡搭载CPU处理器,所以可以与系统分离出来,对硬盘进行各种作业,还原作业的速度也比软件磁盘阵列快。缺点是其售价很高,通常只用于RAID 5和RAID 6。
Mdadm:模块化工具
命令语法:mdadm [mode] <raiddevice> [options] <component-devices]
模式:
创建:-C
装配:-A
监控:-F
管理:-f, -r , -a
<raiddvice>:/dev/md#
<componen-devices>:任意块设备
-C:创建模式
-n # :使用#个块设备来创建此RAID
-l #: 指明创建的RAID的级别
-a {yes|no}:自动创建目标RAID设备的设备文件
-c CHUNK_SIZE:指明块大小
-x #:指明空闲盘的个数
-D:显示RAID的详细信息
mdadm -D /dev/md#
管理模式:
-f:指定坏的磁盘
-a:指定加入磁盘
-r:指定 移除磁盘
实践操作:
~]# fdisk /dev/sda; 创建多个分区,并调整系统ID为Linux Raid auto(fd)
~]#partx -a /dev/sda;内核加载分区表
~]#cat /proc/mdstat
~]#mdadm -C /dev/md0 -a yes -n 3 -x 1 -l 5 /dev/sda{4,5,6,7}
~]#mke2fs -t ext4 -b 2048 -L MYDATA /dev/dm0
~]#mkdir /mydata
~]#mount /dev/md0 /mydata
注意:最好是用标签输入在/etc/fstab
~]#mdadm -D /dev/md0
~]#mdadm /dev/md0 -f /dev/sda# ;要标记坏的盘
~]#cat /proc/mdstat ; 已经开始重新同步了
~]#watch -n1 ‘cat /proc/mdstat’ ;每一秒种刷新一次
~]#mdadm -D /dev/dm0
~]#mdadm /dev/md0 -r /dev/sda# ;要移除坏的磁盘
~]#mdadm /dev/md0 -a /dev/sda# ;要加入的磁盘
原创文章,作者:不忘初衷,如若转载,请注明出处:http://www.178linux.com/65999
评论列表(1条)
总结的很好,图文并茂,加油!!!