一、RAID的定义与作用
RAID(独立冗余磁盘阵列)。RAID技术通过把多个硬盘设备组合成一个容量更大的,安全性更好的磁盘阵列。把数据切割成许多区段后分别放在不同的物理磁盘上,然后利用分散读写技术来提升磁盘阵列整体的性能,同时把多个重要数据的副本同步到不同的物理设备上,从而起到了非常好的数据冗余备份效果。缺点就是磁盘利用率低。
二、RAID的分类
RAID的分类目前来说至少有几十种,这里简单介绍一下最常见的四种,RAID0,RAID1,RAID10,RAID5。
1、RAID 0
RAID 0是最早出现的RAID模式,即Data Stripping数据分条技术。RAID 0是组建磁盘阵列中最简单的一种形式,只需要2块以上的硬盘即可,成本低,可以提高整个磁盘的性能和吞吐量。RAID 0没有提供冗余或错误修复能力,但实现成本是最低的。
2、RAID 1
RAID 1称为磁盘镜像,原理是把一个磁盘的数据镜像到另一个磁盘上,也就是说数据在写入一块磁盘的同时,会在另一块闲置的磁盘上生成镜像文件,在不影响性能情况下最大限度的保证系统的可靠性和可修复性上,只要系统中任何一对镜像盘中至少有一块磁盘可以使用,甚至可以在一半数量的硬盘出现问题时系统都可以正常运行,当一块硬盘失效时,系统会忽略该硬盘,转而使用剩余的镜像盘读写数据,具备很好的磁盘冗余能力。虽然这样对数据来讲绝对安全,但是成本也会明显增加,磁盘利用率为50%。
3、RAID0+1
RAID 0+1名称上我们便可以看出是RAID0与RAID1的结合体。在我们单独使用RAID 1也会出现类似单独使用RAID 0那样的问题,即在同一时间内只能向一块磁盘写入数据,不能充分利用所有的资源。为了解决这一问题,我们可以在磁盘镜像中建立带区集。因为这种配置方式综合了带区集和镜像的优势,所以被称为RAID 0+1。把RAID0和RAID1技术结合起来,数据除分布在多个盘上外,每个盘都有其物理镜像盘,提供全冗余能力,允许一个以下磁盘故障,而不影响数据可用性,并具有快速读/写能力。RAID0+1要在磁盘镜像中建立带区集至少4个硬盘。也有一种叫法叫RAID10.
4、RAID5:分布式奇偶校验的独立磁盘结构
它的奇偶校验码存在于所有磁盘上。RAID5的读出效率很高,写入效率一般,块式的集体访问效率不错。因为奇偶校验码在不同的磁盘上,所以提高了可靠性。但是它对数据传输的并行性解决不好,而且控制器的设计也相当困难。在RAID 5中有“写损失”,即每一次写操作,将产生四个实际的读/写操作,其中两次读旧的数据及奇偶信息,两次写新的数据及奇偶信息。
总结:RAID0大幅度提升了设备的读写性能,但不具备容错能力。RAID1虽然十分注重数据安全,但磁盘利用率太低。RAID5就是raid0和RAID5的一种折中,既提升了磁盘读写能力,又有一定的容错能力,成本也低。RAID10就是RAID0和raid1的组合,大幅度提升读写能力,较强的容错能力,成本也较高。一般中小企业用RAID5,大企业采用RAID10。
这里主要介绍RAID5的搭建与测试。主要内容:一、添加硬盘。二、对磁盘进行初始化设置。三、搭建RAID5。四、RAID5的测试。五、RAID5的维护。六、mdadm命令总结。
RAID5的搭建
一、 首先添加四块硬盘
二、reboot重启并对磁盘进行初始化设置reboot重启
三、搭建raid51,yum install -y mdadm //安装madam (madam是Linux下的raid管理工具)
2,mdadm -C /dev/md0 -ayes -l5 -n3 -x1 /dev/sd[b-e]1 //用sdb1,sdc1,sdd1,sde1四块磁盘其中3块创建raid5,名称为md0,另外一块作为热备份。
madam参数说明
-C --create 创建阵列;
-a --auto 同意创建设备,如不加此参数时必须先使用mknod 命令来创建一个RAID设备,不过推荐使用-a yes参数一次性创建;
-l --level 阵列模式,支持的阵列模式有 linear, raid0, raid1, raid4, raid5, raid6, raid10, multipath, faulty, container;
-n --raid-devices 阵列中活动磁盘的数目,该数目加上备用磁盘的数目应该等于阵列中总的磁盘数目;
3,查看raid5状态
cat /proc/mdstat
mdadm -D /dev/md0