文章目录
RAID:独立磁盘冗余阵列
一、概念
磁盘阵列:利用多块独立的磁盘,组成一个容量巨大的磁盘组,可以提升磁盘运行效率。
运行效率:读写速度和冗余备份。
常见的RAID技术:RAID0、RAID1、RAID5、RAID10
二、RAID0-5技术讲解
RAID0
由两块磁盘组成。
- 优点
RAID0技术能够有效的提升硬盘数据的吞吐速度(提高磁盘读写速度,加快电脑运行效率)
- 缺点
不具备数据备份和错误修复能力
RAID1
由两块磁盘组组成。
- 优点
RAID1数据同时写入到两块硬盘设备上
(可以将其视为数据的镜像或备份)
- 缺点
磁盘利用率很低,只有50%,所有只用于系统盘
RAID5
至少需要三块磁盘
- 优点
RAID1把硬盘设备的数据奇偶校验信息分布保存至在不同硬盘上,通过奇偶校验信息的计算恢复数据。
兼顾了硬盘设备的读写速度、数据安全性与存储成本问题,磁盘利用率(n-1)/n —n表示磁盘数量
- 缺点
利用奇偶校验恢复数据,所有在数据恢复上速度慢于RAID1。
解释:RAID5图片中四块硬盘,当disk4损坏后,可以由disk1的奇偶校验位还原disk4的block 4c模块,由disk2的奇偶校验位parity还原diiak4的block 4b模块、由disk3的奇偶校验位parity还原diiak4的block 4a模块、由disk1的block 1a、disk2的block 2a、disk3的block 3a重新生成disk4的奇偶校验位parity。
三、配置RAID0-5
1、相关指令
lsblk ##查看磁盘情况
mdadm -D /dev/md0 ##查看RAID详细信息, /dev/md0是创建的设备文件名,这个是任意的
mdadm /dev/md1 -r /dev/sde1 ##移除损坏磁盘/dev/sde1
mdadm /dev/md1 -f /dev/sde1 ##手动禁用
mdadm -S /dev/md1 #停止阵列
mdadm /dev/md1 -a /dev/sdb1 #增加热备份磁盘
mdadm -G /dev/md5 -n 4 #将raid5的热备份磁盘增加到阵列工作磁盘中。-n 4 表示使用四块工作磁盘
注意:在创建raid前,应该先查看磁盘是否被识别,如果内核还为识别,创建Raid时会报错:
cat /proc/partitions
如果没有被识别,可以执行命令:
kpartx /dev/sdb或者partprobe/dev/sdb
2、创建过程
RAID是根据磁盘分区来配置的。
步骤一:对七块磁盘进行分区操作,均分一个区,为后续实验要求,根据自己选择的类型确定
fdisk /dev/sdb
n #创建
p #主分区
t ##更改分区类型
fd ##RAID类型
wq
步骤二:安装RAID工具
yum install mdadm
RAID0
mdadm -Cv /dev/md0 -n2 -l0 /dev/sd[b-c]1
创建/dev/md0,用到两块磁盘,类型是RAID0,要用到b和c的第一个分区
-n | 使用两块磁盘 |
---|---|
-l | 类型 |
RAID1
mdadm -Cv /dev/md1 -n2 -l1 /dev/sd[d-e]1
RAID5
mdadm -Cv /dev/md5 -n3 -l5 /dev/sd[f-h]1
3、使用
步骤一:创建文件系统
三种格式化类型任选一种:
mkfs.ext4 /dev/md0
mkfs.ext3 /dev/md1
mkfs.vfat /dev/md5
默认vfat指令不存在,安装:
yum install -y dosfstools
步骤二:挂载
vim /etc/fstab
/dev/md0 /mnt/disk0 ext4 rw 0 0
/dev/md1 /mnt/disk1 ext3 rw 0 0
/dev/md5 /mnt/disk5 vfat rw 0 0
创建挂载目录:
mkdir /mnt/disk0
mkdir /mnt/disk1
mkdir /mnt/disk5
挂载:
mount -a
mount
四、停止和装配raid及彻底移除
1、停止和装配
mdadm -S /dev/md1 #停止阵列
关闭raid阵列后,该raid组/dev/md0就停止工作了。
如果下次想继续启动它,直接使用-A来装配/dev/md0是不可以的,需要再次指定该raid中的设备成员,且和关闭前的成员一样,不能有任何不同。
mdadm -A /dev/md1 /dev/sd{b,c,d,e}1
这样做不太保险,其实可以在停止raid前,扫描raid,将扫描的结果保存到配置文件中,下次启动的时候直接读取配置文件即可。
mdadm -D --scan >> /etc/mdadm.conf
下次使用-A就可以装配配置文件中的raid组了
mdadm -A /dev/md1
如果不放在默认配置文件中,则装配的时候使用"-c"或"–config"选项指定配置文件即可。
mdadm -D --scan >> /tmp/mdadm.conf
mdadm -A /dev/md1 -c /tmp/mdadm.conf
2、彻底移除
当已经确定一个磁盘不需要再做为raid的一部分,可以将它移除掉。彻底移除一个raid设备并非那么简单,因为raid控制器已经标记了一个设备,即使将它"mdadm --remove"也无法彻底消除raid的信息。
umount /dev/sdb1
mdadm -S /dev/md1
mdadm --manage /dev/md1 --remove /dev/sdb1
mdadm --zero-superblock --force /dev/sdb1 #清空控制器可以读取的raid签名
查看:
lsblk -f
五、RAID10讲解及配置
1、概念
RAID10即RAID0+RAID1的一个组合体,RAID10技术继承了RAID0的高速写速度和RAID1的数据安全性。
RAID10图片表明分别配置两个RAID1,然后将其组合成RAID0。
2、配置
至少需要四块
步骤一:对四个磁盘进行分区,类型为fd
步骤二:创建两个raid1
mdadm -Cv /dev/md8 -n2 -l1 /dev/sdj1 /dev/sdk1
mdadm -Cv /dev/md89-n2 -l1 /dev/sdl1 /dev/sdm1
步骤三:利用两个raid1创建raid0
mdadm -Cv /dev/md10 -n2 -l0 /dev/md8 /dev/md9
步骤四:格式化
mkfs.ext4 /dev/md10
步骤五:挂载
mkdir /mnt/disk10
vim /etc/fstab
/dev/md10 /mnt/disk10 ext4 rw 0 0
mount -a
六、RAID实验——冗余备份和数据灾难恢复过程
1、模拟RAID1更换磁盘
步骤一:添加一块新的磁盘并分区为fd类型
步骤二:模拟raid1更换磁盘的过程
给磁盘写入数据:
cd /mnt/disk1
touch 1 2 3
添加热备份磁盘:
mdadm /dev/md1 -a /dev/sdi1 #此时未激活状态
模拟磁盘损坏:
mdadm /dev/md1 -f /dev/sde1 ##停用磁盘
查看raid1情况:
mdadm -D /dev/md1
查看磁盘数据有无丢失:
cd /mnt/disk1
ls
移除坏损磁盘:
mdadm /dev/md1 -r /dev/sde1
2、模拟RAID5更换磁盘
步骤一:添加一块新的磁盘并分区为fd类型
步骤二:模拟raid5更换磁盘的过程
给磁盘写入数据:
cd /mnt/disk5
touch 1 2 3
添加热备份磁盘:
mdadm /dev/md5 -a /dev/sde1 #此时未激活状态
mdadm -D /dev/md5 #查看当前磁盘状态
模拟磁盘损坏:
mdadm /dev/md5 -f /dev/sdg1 ##停用磁盘
查看raid5情况:
mdadm -D /dev/md5 #磁盘更换成功
查看磁盘数据有无丢失:
cd /mnt/disk5
ls
移除坏损磁盘:
mdadm /dev/md5 -r /dev/sdg1