1 RAID磁盘阵列
1.1 RAID磁盘阵列的含义
RAID 即独立磁盘冗余阵列,简称为[磁盘阵列],其实就是用多个独立的磁盘组成在一起形成一个大的磁盘系统,从而实现比单块磁盘更好的存储性能和更高的可靠性。
1.2 RAID常用级别
RAID 0(条带化储存) :其原理是把连续的数据分散到多个磁盘上存取,系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。
优点:传输速度快、读写功能强大。
缺点:无容错能力、没有冗余功能。
最少磁盘数: 1+
RAID 1 (镜像储存) :RAID1是将一个两块硬盘所构成RAID磁盘阵列,其容量仅等于一块硬盘的容量,因为另一块只是当作数据“镜像”
优点:读性能提升,有冗余功能。
缺点:写性能降低,磁盘利用率降低(50%),成本高
最少磁盘数:2n
RAID 5 :数据以块为单位分布到各个硬盘上。RAID 5不对数据进行备份,而是把数据和与其相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID5的一个磁盘数据损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。
优点:有容错能力,可靠性高
缺点:写能力降低
最少磁盘数:3,3+
RAID 10 :Raid 10是一个Raid 1与Raid0的组合体,它是利用奇偶校验实现条带集镜像
优点:有数据冗余功能,可靠性高,性能好
缺点:成本高,磁盘利用率小
最少磁盘数:4,4+
2 创建软RAID磁盘阵列
2.1 先检查命令安装包
[root@localhost ~]# rpm -q mdadm
如果没有进行安装 [root@localhost ~]# rpm -q mdadm
2.2 fdisk管理磁盘
将新磁盘设备划分出主分区并且把分区类型的 ID 标记号改为“fd” 演示划分了四个盘
fdisk -l 查看
2.2 创建raid5
创建raid5 取名要注意以md开头
[root@localhost ~]# mdadm -C -v /dev/md5 -l5 -n3 /dev/sd[bcd]1 -x1 /dev/sde1
-C:表示新建;
-v:显示创建过程中的详细信息。
/dev/md0:创建 RAID5 的名称。
-a yes:--auto,表示如果有什么设备文件没有存在的话就自动创建,可省略。
-l:指定 RAID 的级别,l5 表示创建 RAID5。
-n:指定使用几块硬盘创建 RAID,n3 表示使用 3 块硬盘创建 RAID。
/dev/sd[bcd]1:指定使用这四块磁盘分区去创建 RAID。
-x:指定使用几块硬盘做RAID的热备用盘,x1表示保留1块空闲的硬盘作备用
/dev/sde1:指定用作于备用的磁盘
查看是否创建成功
[root@localhost ~]# cat /proc/mdstat
已成功。
查看磁盘是否已做RAID
[root@localhost ~]# mdadm -E /dev/sd[b-e]1
2.3 挂载使用
先格式化md5
[root@localhost ~]# mkfs.xfs /dev/md5
mkdir /md5 #创建挂载点
mount /dev/md5 /md5/ #将创建的md5挂载到挂载点
df -Th #查看是否挂载成功
2.4 模拟故障
使用mdadm /dev/md5 -f /dev/sdb1让sdb1模拟故障点,mdadm -D /dev/md0查看详细信息,在下面的硬盘列表中可以看到sdb1报错,sde1替换了sdb1的位置。
可以看到sde1的替代了sdb1,状态也变成了动态同步。如果硬盘中有文件,也可以发现文件还在,数据没有丢失,这里就不再演示了。
删除RAID5,删除硬盘时,要都是好,sdb1在之前模拟故障时,为复原所以删除报错。mdadm /dev/md0 -f /dev/sdb1之后要恢复,需要mdadm /dev/md0 -r /dev/sdb1移除硬盘再mdadm /dev/md0 -a /dev/sdb1添加进来,再进行删除才可以。
过程
mdadm /dev/md0 -f /dev/sdb1 #模拟/dev/sdb1 故障
mdadm -D /dev/md0 #查看发现sde1已顶替sdb1
mdadm命令其它常用选项 -r:移除设备 -a:添加设备 -S:停止RAID -A:启动RAID