在 VMware 虚拟机环境中,为 CentOS 7 创建一个由 3 块数据盘 + 1 块热备盘 组成的 RAID 5 阵列,完整操作流程如下:
一、 准备工作(添加虚拟硬盘)
- 在 VMware 中选中 CentOS 虚拟机,确保其处于关机状态(或使用 SCSI 热插拔)。
- 点击 编辑虚拟机设置 -> 添加 -> 选择 硬盘 -> 磁盘类型选择 SCSI**。
- 新建 4 块虚拟磁盘(例如每块大小设为
20G),连续添加 4 次。 - 开机进入系统,运行以下命令确认新添加的 4 块磁盘(通常为
/dev/sdb,/dev/sdc,/dev/sdd,/dev/sde):
| |
二、 分区配置(可选但建议)
为 4 块新磁盘创建分区并将文件系统标识设为 fd(Linux raid auto):
| |
说明:如果不进行
fdisk分区,直接使用整块原生磁盘(如/dev/sd[b-e])创建阵列同样可行。
三、 使用简写命令创建 RAID 5 阵列
使用 mdadm 的短参数与磁盘通配符快速创建阵列:
| |
**关键参数拆解:
-C**:创建新阵列(--create)- -v:显示创建时的详细过程(
--verbose) - /dev/md0:新阵列设备名称
- -l 5:指定级别为 RAID 5(
--level=5) - -n 3:指定 3 块活动数据盘(
--raid-devices=3) - -x 1:指定 1 块热备盘(
--spare-devices=1) - /dev/sd[b-e]1:使用 Shell 通配符一次性传入
/dev/sdb1,/dev/sdc1,/dev/sdd1,/dev/sde1
过程中出现提示 Continue creating array? 时,输入 y 并按回车。
四、 查看与验证阵列状态
1. 查看阵列详细信息(简写命令)
| |
输出中可以观察到:
- Raid Level : raid5
- Array Size : …(大小等于 2 块盘的总容量)
- Active Devices : 3
- Working Devices : 4
- Spare Devices : 1
- 底部列表显示
/dev/sdb1~/dev/sdd1为active sync,/dev/sde1为spare。
2. 保存 RAID 配置文件
为了确保系统重启后阵列设备名和编号不丢失,需要保存配置:
| |
-Ds 即为
--detail --scan的简写。
五、 格式化与挂载使用
- **格式化阵列为 xfs 文件系统:
| |
- 创建挂载点并挂载:
| |
- 配置开机自动挂载: 获取阵列的 UUID:
| |
编辑 /etc/fstab 追加挂载规则:
| |
六、 模拟故障测试(可选)
模拟将其中一块活动盘(如 /dev/sdb1)标记为损坏,观察热备盘是否会自动顶替:
标记 sdb1 为损坏盘
mdadm /dev/md0 -f /dev/sdb1
立即查看状态
mdadm -D /dev/md0
你会看到 /dev/sde1(原热备盘)自动变为 rebuilding 或 active sync 状态,开始自动重建数据,从而验证热备机制生效。
🤖 —— Bosh,关注开源与去中心化的技术观察者
