GP Ant8裸金属本地盘实现软RAID5的解决方案
场景描述
本文介绍GP Ant8裸金属服务器使用本地盘实现软RAID5的解决方案,该方案保障了本地盘数据的可靠性,当其中一块硬盘故障时,备份硬盘可自动恢复数据。
- RAID1:同时对2个硬盘读写(同样的数据),强调数据的绝对安全性,一般会对系统盘做RAID1方案,但是该方案磁盘利用率只有50%,比较浪费。
- RAID5:把多个(最少3个)硬盘合并成1个逻辑盘使用,数据读写时会建立奇偶校验信息,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID5的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。相当于raid0和raid1的综合。
操作步骤
- 安装软RAID管理工具mdadm。
apt-get install mdadm
- 查看本地磁盘。确保本地磁盘未进行格式化挂载使用,并查询磁盘名称,用于后续RAID5设备创建。
fdisk -l
- 创建RAID5磁盘阵列。
使用mdadm命令创建RAID设备,以下是一个示例命令,用于创建一个RAID5的磁盘阵列,六块硬盘设置为RAID 5,并将其中一块硬盘作为备用盘。
mdadm --create --auto=yes /dev/md5 --level=5 --raid-devices=5 /dev/nvme1n1 /dev/nvme2n1 /dev/nvme3n1 /dev/nvme4n1 /dev/nvme5n1 --spare-devices=1 /dev/nvme0n1
查看RAID设备详情。
mdadm -D /dev/md5
- 等待同步。
创建RAID设备后,mdadm将开始同步数据。这个过程可能需要一些时间,具体取决于磁盘的大小和速度。您可以使用以下命令来监视同步过程,一般需要1H左右。
cat /proc/mdstat
- 创建文件系统。
同步完成后,您可以在RAID设备上创建文件系统。例如,要在RAID设备(例如/dev/md5)上创建一个ext4文件系统,可以使用以下命令:
mkfs.ext4 /dev/md5
- 挂载RAID设备。
以下命令示例为创建一个data目录并将RAID设备挂载到data目录下:
mkdir /data mount /dev/md5 /data
- 设置设备重启自动挂载。
查看RAID设备(/dev/md5)UUID,使用如下命令查询:
blkid /dev/md5
编辑/etc/fstab文件,将该设备添加到文件中,UUID为上述命令查询出的实际UUID,进行替换。
UUID=585df708-baa2-49d2-abc4-e11bb1a91797 /data ext4 defaults 0 0
替换完成后,务必使用如下命令进行校验,若校验未通过会导致机器重启故障,无法正常挂载磁盘。
mount -a
- 设置RAID重启自动生效。
把RAID设备信息写入配置文件
mdadm --detail --scan >> /etc/mdadm/mdadm.conf
更新配置,使配置生效。
update-initramfs -u
完成后可以看到磁盘相关信息。
图1 磁盘相关信息
图2 磁盘相关信息