背景
今天在配置服务器基础环境的时候发现。。。两块儿nvme盘无法做硬raid,具体看了一下因为两块儿nvme是直连主板的没有接raid卡。硬raid做不了,那只能做软raid了,顺便写这篇文章记录一下。
前言
在服务器运维过程中,磁盘可靠性是非常重要的一环。
如果只有单块磁盘,一旦硬盘损坏,数据将面临丢失风险。
因此在生产环境中,通常会通过 RAID(Redundant Array of Independent Disks)技术来提高磁盘可靠性。
一、RAID 是什么?
RAID(独立磁盘冗余阵列)是一种将多块硬盘组合成一个逻辑磁盘的技术,主要目的是:提高数据安全性、提高磁盘性能、提高存储容量
Linux 中 RAID 分为两种:
Linux 软 RAID 通常使用 mdadm 工具
二、常见 RAID 类型
本次部署使用:
RAID1(镜像)
特点:
示意图:
磁盘A: 数据1 数据2 数据3
磁盘B: 数据1 数据2 数据3
三、实验环境
服务器磁盘信息:
lsblk
fdisk -l
四、安装 RAID 工具
Linux 软 RAID 依赖 mdadm
yum install -y mdadm
一般操作系统自带 mdadm 工具
五、清理磁盘签名
如果磁盘之前使用过,需要清理旧数据。
wipefs -a /dev/nvme0n1
wipefs -a /dev/nvme1n1
删除旧文件系统,旧RAID信息、旧分区表
六、创建 RAID
执行
mdadm --create /dev/md0 \
--level=1 \
--raid-devices=2 \
/dev/nvme0n1 \
/dev/nvme1n1
系统会提示:
Continue creating array? yes
输入:
yes
创建成功后查看状态:
cat /proc/mdstat

说明:
七、创建文件系统
RAID 创建完成后需要格式化。
使用 XFS 文件系统:
mkfs.xfs /dev/md0
八、挂载 raid
创建挂载目录
mkdir /data
挂载 RAID
mount /dev/md0 /data
查看磁盘:
df -h
九、配置开机自动挂载
获取 UUID:
blkid /dev/md0
输出:
UUID="994adc42-893a-4ad3-8c59-c5c501bb30d4"
编辑:
vi /etc/fstab
添加:
UUID=994adc42-893a-4ad3-8c59-c5c501bb30d4 /data xfs defaults 00
测试配置:
mount -a
如果没有报错说明配置正确
十、保存 RAID 配置
为了防止系统重启后 RAID 丢失:
mdadm --detail --scan > /etc/mdadm.conf
查看配置:
cat /etc/mdadm.conf
十一、更新启动镜像
更新 initramfs:
dracut -H -f /boot/initramfs-$(uname -r).img $(uname -r)
作用:
十二、查看 RAID 详细状态
mdadm -D /dev/md0


十三、RAID 故障恢复示例
如果某块盘损坏,例如:nvme0n1
标记故障:
mdadm /dev/md0 --fail /dev/nvme0n1
移除:
mdadm /dev/md0 --remove /dev/nvme0n1
更换新盘后加入:
mdadm /dev/md0 --add /dev/nvme0n1
RAID 会自动重建
总结
RAID 技术是服务器存储管理中的基础技术之一,通过合理选择 RAID 类型可以在性能、容量和可靠性之间取得平衡。
在 Linux 环境下,通过 mdadm 软件 RAID 可以灵活地实现 RAID0、RAID1、RAID5、RAID6 和 RAID10 等多种阵列方案,满足不同业务场景需求。