软RAID拓扑

实现功能
实现当RAID组成员盘发生故障时,更换及管理RAID组成员盘。验证RAID冗余操作对系统和数据安全不会有影响,重启系统能正常引导加载,数据没有发生改变。
Mdamd工具
Mdadm多磁盘和设备管理工具(Multiple Disk and Device Administration)用于Linux系统下软件RAID阵列或VMD(VROC) RAID管理。
RAID组和盘查看

mdadm工具查看软RAID结构

RAID组NVME盘点灯
系统下NVME盘点灯两种方式
ipmitool给非VMD控制器NVME盘点灯
命令运行格式如下:
ipmitool raw 0x3a 0x53 0x50 $bay_number $pattern
pattern: 1 ---off(关); 2 ---on(亮); 3 ---blink(闪)

Physical Slot 和NVM盘插槽(Bay_Number)对应算法
Physical Slot X用于给对应NVME盘上、下电操作
算法

例如对插槽(Bay)5 NVME盘关闭电源(下电)操作
验证RAID组成员盘中有备用盘时,当RAID组成员盘发生故障时换盘操作,RAID组成员中备用盘会自动接替被拔出的故障盘并自动同步完成,实现RAID冗余功能。
加入盘用盘(Spare)到RAID组中
把nvme0n1加入RAID组为Spare盘

运行命令
mdadm --manage /dev/md127 --add /dev/nvme0n1

查看RAID状态发现,随着备用盘加入,RAID组会有同步动作

同步完成再次查看RAID组状态

模拟RAID组成员NVME盘故障
模拟Bay7 NVME盘故障下电,发现Spare盘会自动接替故障盘并同时Rebuilding
Bay算法:Bay7+64=Slot71
NVME盘下电操作
echo 0 > /sys/bus/pci/slots/71/power
查看NVME盘下电后RAID组变化,由于RAID组成员盘故障下电,备用盘自动接替被拔出的故障盘并同步。

同步完成查看,发现nvme0n1盘已接替故障盘成为RAID组成员盘

更换新盘同步完成后重启服务器,能自动正常加载系统,查看如下


RAID组故障盘直接更换管理验证
验证没有备用盘情况下更换故障盘和RAID表现;在没有备用盘情况下更换故障盘,RAID组不会发生自动同步情况,需把新装入的盘手动加入到RAID组中,此时RAID组发现有新成员盘加入会自动同步。
模拟NVME盘故障
模拟Bay6盘故障下电,RAID表现为Degraded状态

拔出Bay6 NVME盘,Bay6装入新的NVME盘,发现RAID并没有同步

RAID组加入新盘
RAID组发现由于新盘加入已开始数据同步
新盘加入RAID组命令并查看
Mdadm --manage /dev/md127 –add /dev/nvmexxx

RAID同步完成查看

重启服务器系统能正常加载起来

至此RAID组故障盘更换验证完成。




