Linux 创建和管理软RAID实例
前言
RAID(Redundant Array of Independent Disk)虚拟存储系统。
RAID即独立冗余磁盘阵列,其思想是将多块独立的磁盘按不同的方式组合成一个逻辑磁盘,从而提高存储容量,提升存储性能或提供数据备份功能。
RAID存储系统的组合方式根据RAID级别定义。
RAID分为软件RAID和硬件RAID两类。现有的操作系统中,大多都已经集成了软RAID功能。软件RAID可以实现和硬件RAID一样的功能,但是由于没有独立的硬件控制设备,所以性能不如RAID,但软件RAID实现简单,不需要额外的硬件设备。
硬件RAID通常要有RAID卡,RAID卡本身会有独立的控制部件和内存,所以不会占优系统资源,效率高,性能强。具体的使用可以参考硬件说明书。
操作步骤
本机有三块磁盘未分区,分别是xvdb、xvdc、xvdd,如果需要在Linux中实现软RAID,可以将每块硬盘分一个区组建RAID,也可以对硬盘分多个区实现软RAID,这里我们将每块硬盘分两个区。
创建硬盘分区
分区完成后:
创建RAID(本例将创建RAID0与RAID5)
Linux中创建磁盘阵列可以使用mdadm命令,在CentOS7中,目前支持的RAID级别有:RAID0、RAID1、RAID4、RAID5、RAID6、RAID10。
mdadm:管理Linux软件RAID设备
用法:mdadm [模式] 选项 <RAID设备>
选项:
-C 创建软件RAID(create)
-l 指定RAID级别(level)
-n 指定磁盘个数
-x 指定备用设备个数
//创建RAID0
[root@haiyuan ~]# mdadm -C /dev/md0 -l 0 -n 3 /dev/xvdb1 /dev/xvdc1 /dev/xvdd1
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
//创建RAID5时出现错误,表示磁盘数量不够
[root@haiyuan ~]# mdadm -C /dev/md1 -l 5 -n 3 -x 1 /dev/xvdb2 /dev/xvdc2 /dev/xvdd2
mdadm: You haven't given enough devices (real or missing) to create this array
再新增一块硬盘,进行分区后再进行该命令操作。
[root@haiyuan ~]# mdadm -C /dev/md1 -l 5 -n 3 -x 1 /dev/xvdb2 /dev/xvdc2 /dev/xvdd2 /dev/xvde2
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.
//查看RAID0及RAID5的详细信息
[root@haiyuan ~]# mdadm --detail /dev/md0
[root@haiyuan ~]# mdadm --detail /dev/md1
格式化与挂载
mkfs.xfs /dev/md0
mkdir /raid0
mount /dev/md0 /raid0
mkfs.xfs /dev/md1
mkdir /raid5
mount /dev/md1 /raid5
将磁盘阵列设备配置为开机自动挂载项,CentOS系统开机会读取磁盘阵列的配置文件/etc/mdadm.conf以启动RAID设备。可以使用命令快速创建该配置文件,DEVICE行代表填写所有磁盘阵列的设备成员的名称,ARRAY行描述磁盘阵列具体的基本信息,包括名称、级别、UUID等信息。
[root@haiyuan ~]# echo "DEVICE /dev/xvdb1 /dev/xvdb2 /dev/xvdc1 /dev/xvdc2 /dev/xvdd1 /dev/xvdd2 /dev/xvde2" > /etc/mdadm.conf
[root@haiyuan ~]# mdadm -Evs
ARRAY /dev/md/1 level=raid5 metadata=1.2 num-devices=3 UUID=3c3d665f:5c7df5c4:89da16bb:75fd1819 name=haiyuan.hwcloud.com:1
spares=1 devices=/dev/xvdb2,/dev/xvdc2,/dev/xvdd2,/dev/xvde2
ARRAY /dev/md/0 level=raid0 metadata=1.2 num-devices=3 UUID=2669e540:49aaaa5e:20ea52d1:79b35913 name=haiyuan.hwcloud.com:0
devices=/dev/xvdb1,/dev/xvdc1,/dev/xvdd1
[root@haiyuan ~]# mdadm -Evs >> /etc/mdadm.conf
[root@haiyuan ~]# echo "/dev/md0 /raid0 xfs defaults 0 0" >> /etc/fstab
[root@haiyuan ~]# echo "/dev/md1 /raid5 xfs defaults 0 0" >> /etc/fstab
重启后,进行验证: