RAID可以透过一个技术(软件和硬件),将多个较小的磁盘整合成为一个较大的磁盘装置;而这个较大的磁盘功能可不只是存储而已,它还具有数据保护功能,提升读写性能,所谓保护功能就是将一个数据多份的存放在不同的物理磁盘上,这样就避免了单块磁盘甚至多块磁盘损坏而导致的数据丢失问题。当然这需要借助于RAID的级别来实现更加丰富的功能。级别就是将多块磁盘组织在一起的工作方式,不同级别组合起来的磁盘具有不同的功能。
接下来说一下RAID常见得级别: RAID-0:条带卷,将多块磁盘平行的组合在一起来当一块实现I/O能力。 RAID-1:镜像卷,有一个专门的磁盘作为镜像盘,有冗余能力。 RAID-4:将3块以上的磁盘组织成一个RAID,存储数据时,一块磁盘专门作为校验盘,其他的磁盘用来存储数据,缺点:单块硬盘专门作为校验盘,访问压力较大,很容易成为性能瓶颈。 RAID-5:将3块以上的磁盘组织成为一个RAID。存储数据时3块硬盘轮流作为校验盘。 RAID-6:校验盘存两次。
RAID-10:两两分组。组内RAID-1,组间RAID-0。
特性:
RAID-0:读写性能提升;可用空间:N*min(s1,s2...);无冗余;最少磁盘数:2,2+
RAID-1:读性能提升,写性能下降;可用空间:1*min(s1,s2...);有冗余;最少磁盘数:2,2+
RAID-5:读写性能提升;可用空间:(N-1)*min(s1,s2...);有冗余;最少磁盘数:3,3+
RAID-6:读写性能提升;可用空间:(N-2)*min(s1,s2...);有容错能力:2块;最少磁盘数4,4+
RAID-10:读写性能提升;空间(N/2)*min(S1,S2...);有容错能力:每组只能坏一块;最少磁盘数:4,4+
RAID的具体实现方式有两种:
①硬件实现方式:通过BIOS参数调整来实现;这里不做具体说明
②软件实现方式:通过软件工具mdadm来实现
下面具体说一下软件实现方式:
mdadm:;是一个模式工具
用法:mdadm [mode] <raiddevice> [options] <component-devices>
支持的RAID级别有:RAID0,1,4,5,6,10
模式[mode]:创建,配置,监控,管理
具体操作过程所涉及的命令及相关选项:
创建
-C:创建RAID,还有一下的子选项
-n#:使用#个块设备来创建此RAID
-l#:指明要创建的RAID的级别
-a{yes|no}:自动创建目标RAID设备的设备文件
-c CHUNK_SIZE:指明快大小
-x#:指明空闲盘的个数
eg:创建一个10g的RAID-5
mdadm -C /dev/md0 -a yes -n 3 -x 1 -l 5 /dev/sda{7,8.9,10}
管理:-f:标记指定磁盘为损坏;(-f用在要标记的磁盘前)
-a:添加磁盘
-r:移除磁盘
eg:mdadm /dev/md0 -f /dev/sda7
其他管理:观察md的状态:cat /proc/mdstat
停止md设备:mdadm -S /dev/md#
装配:
使用mdadm -A选项
-A:装配模式,重新识别此前实现的RAID
监控:
使用mdadm -F:监控模式