RAID(独立冗余磁盘阵列)
把多块独立的物理硬盘按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术
组成磁盘阵列的不同方式称为RAID级别
常用的RAID级别有(RAID0, RAID1, RAID5, RAID6, RAID1+0等)
RAID 0 (条带化存储)
RAID 0 连续以位或字节为单位分割数据,并行读/写于多个磁盘,因此具有很高的数据传输率,但它没有数据冗余
RAID 0 只是单纯地提高性能,并没有为数据的可靠性提供保证,而且其中一个磁盘失效将影响到所有数据
RAID 0 不能应用与数据安全性要求高的场合
RAID 1 (镜像存储)
通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据
当原始数据繁忙时可直接从镜像拷贝中读取数据,因此RAID 1 可以提高读取性能
RAID 1 是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。
RAID 5
由 N (N>=3)块磁盘组成阵列,一份数据产生N-1个条带,同时还有1份校验数据,共N份数据在N块盘上循环均衡存储
N块磁盘同时读写,读性能很高,但由于有校验机制的问题,写性能相对不高
(N-1) / N 磁盘利用率
可靠性高,允许坏1块磁盘,不影响所有数据
RAID 6
由N(N>=4)块磁盘组成阵列,(N-2)/ N 磁盘利用率
与RAID5相比,RAID6增加了第二个独立的奇偶教研信息块
两个独立的奇偶系统使用不同的算法,即使两块磁盘同时失效也不会影响数据的使用
相对于RAID 5 有更大的“写损失”,因此写性能较差。
RAID1+0(先做镜像,再做条带)
N (偶数,N>=4)块磁盘两两镜像后,再组合成一个RAID 0
N/2磁盘利用率
N/2块磁盘同时写入,N块盘同时读取
性能高,可靠性高
RAID0+1(先做条带,再做镜像)
读写性能与RAID 1 0 相同
安全性低于RAID 1 0
各个RAID类别对比
RAID级别 | 磁盘数量 | 磁盘利用率 | 是否校验 | 保护能力 | 写性能 |
---|---|---|---|---|---|
RAID0 | N | N | 无 | 无 | 单个硬盘的N倍 |
RAID1 | N(偶数) | N/2 | 无 | 允许一个设备故障 | 需写两对存储设备,互为主备 |
RAID5 | N>=3 | N-1/N | 有 | 允许一个设备故障 | 需写计算校验 |
RAID6 | N>=4 | N-2/N | 有 | 允许两个设备故障 | 需双重写计算校验 |
RAID1+0 | N>=4(偶数) | N/2 | 无 | 允许两个基组中个坏一个 | N/2块盘同时写入 |
阵列卡介绍
阵列卡是用来实现RAID功能的板卡
通常是由I/O处理器,硬盘控制器,硬盘连接器和缓存等一系列组件构成的
不同的RAID卡支持的RAID功能不同
例如:支持RAID0,RAID1,RAID5,RAID1+0等
RAID卡的接口类型
IDE接口,SCSI接口,SATA接口和SAS接口
创建软RAID磁盘阵列
将添加的磁盘先分区,并更改分区设备的文件类型为fd
在以秒命令创建md0
-C:表示新建
-v:显示创建过程中的详细信息
/dev/md0:创建RAID5 的名称
-l:指定RAID的级别,l5表示创建RAID5
-n:指定使用几块硬盘创建RADI,n3 表示使用3块硬盘创建
/dev/sd[bcd]1:指定使用这3块硬盘分区去创建RAID
-x:指定适用几块硬盘做RAID的热备用盘,x1表示保留1块空闲的硬盘做备用
/dev/sde1:指定用作于备用的磁盘
可以用命令cat /proc/mdstat查看创建进度
启用备份
管理
磁盘利用率
我们用了4个20G磁盘,备份一个,可用3个,根据RAID5的利用率,(3-1/3)*60=40G