国产ZYJ服务器RAID 5重建完整流程

【问题现状】

当前使用的是国产浪潮品牌的 ZYJ服务器,RAID卡型号为MR9361-8i,原配置为8块2.4TB SAS硬盘组成的RAID 5阵列。近期其中一块硬盘发生故障,导致阵列降级;由于该RAID控制器在单盘故障后未能维持RAID 5冗余状态,而是将剩余7块硬盘自动降级为RAID 0模式(即条带化、无冗余),致使数据完全丧失容错能力。

本次RAID 5单盘故障变RAID 0大概率是RAID卡无BBU/电容,还开启了WriteBack模式导致(后续和厂商确认了,标准版都不带该模块)。若有需要,可以采购带BBU的RAID卡或是关闭WriteBack模式。

目前故障硬盘已完成更换,新硬盘已安装到位;同时,全部业务数据已成功备份至外部安全存储介质。现计划在确保数据安全的前提下,将当前处于RAID 0状态的7块硬盘(含新盘)重新构建为标准的8盘RAID 5阵列(需确认新盘是否已纳入并完成同步准备)。

【具体参数】

Controller=0------控制器编号 0

Status=Success------状态是启用

Product Name------raid 卡具体型号

Serial Number------SN 序列号

FW Package Build------固件的版本号

BIOS Version ------raid 卡 BIOS 版本

FW Version------FW 版本

Current Personality------当前模式

Physical Drivers------当前接有磁盘数量

【RAID5重建基础流程】(重要前提,执行前一条必须完成)

1.完整备份损坏磁盘的原始数据;

rsync -avzP 备份

2.备份当前 RAID 配置信息;

storcli64 /c0 show all

storcli64 /c0/e252/s0 show(查看控制器为 0 背板为 252 槽位号为 0 的磁盘)

storcli64 /c0/eall/sall show(查看控制器 0 所有背板及背板上的所有磁盘信息)

3.记录物理磁盘路径、序号、型号及槽位信息;

lsscsi

df -h

fdisk -l

4.关闭无关服务:停止服务器上的业务服务、数据库、定时任务,避免操作中磁盘被读写;

5.卸载已损坏raid上的文件系统;

vim /etc/fstab (将/u01那一行注释掉)

umount /u01(若失败,按照下面命令操作卸载,成功执行下一步)

findmnt /dev/sdb1

df -hT | grep /dev/sdb1

umount /dev/sdb1

umount -l /dev/sdb1

fuser -m /dev/sdb1

lsof /dev/sdb1

kill -9 进程ID

6.删除已顺坏 raid 上的 lvm 管理映射;

cat /proc/mdstat

md5 : inactive sdb14(s)

mdadm -S /dev/dm5

官方给出的命令是

dmsetup remove /dev/p1/* (p1 为 raid 上存储池名) ;

echo 1 > /sys/block/sdb/device/delete (sdb 为实际区下)

7.停止并删除原 RAID 阵列(因为我这里是8块RAID 0,所以要删除8块);

storcli64 /c0/v0 delete force

storcli64 /c0/v1 delete force

storcli64 /c0/v2 delete force

storcli64 /c0/v3 delete force

storcli64 /c0/v4 delete force

storcli64 /c0/v5 delete force

storcli64 /c0/v6 delete force

storcli64 /c0/v7 delete force

8.创建新 RAID5 阵列(推荐7数据+1热备);

storcli64 /c0 add vd r5 name=raid5 drives=252:0-6(因为一共8块硬盘,将0-6号设置为RAID5,7号设置为GHS全局热备盘)

/storcli64 /c0/e252/s7 add hotsparedrive

storcli64 /c0 /eall/sall show

9.检查RAID阵列状态并初始化(在确认磁盘都是online状态Consist为No后,初始化磁盘);

storcli64 /c0 /v0 start init

RAID 5(5 块以上)和 RAID 6(6 块以上)在进行快速初始化时会转到后台进行初始化,查看后台初始化

storcli64 /c0/v0 show bgi

10.执行RAID一致性校验;

开启初始化

storcli64 /c0/v0 start cc

查看初始化

storcli64 /c0/v0 show cc

11.parted硬盘分区;

parted /dev/sdb

mklabel gpt

mkpart primary 0% 100%

quit

partprobe

12.mkfs格式化与文件系统创建(大文件推荐xfs);

mkfs.xfs /dev/sdb1

13.挂载磁盘并配置开机自动挂载旧的挂载点;

mount /dev/sdb1 /u01

echo "$(blkid -s UUID -o value /dev/sdb1) /data xfs defaults 0 0" >> /etc/fstab

mount -a

14.恢复数据;

15.重启验证(检查 RAID 状态、挂载、服务是否正常);

16.恢复业务;

【温馨提示】

  • 全程建议在 救援模式(Rescue Mode)或维护终端 下操作,避免系统盘干扰;

  • RAID5 重建耗时长(TB级可达数小时至数天),请勿中断电源或强制重启;

  • 生产环境强烈建议使用 RAID5 / RAID6等具备更强容错能力的方案;

  • 每步操作后建议截图或记录输出,便于回溯。

拔盘热备和 1 块数据盘恢复

将盘插回去 查看磁盘状态 storcli64 /cx/ex/sall show all 磁盘状态为 ubad

设置磁盘状态为 good storcli64 /c0/ex/sx set good

查看磁盘状态 storcli64 /cx/ex/sx show 磁盘状态为 UGOOD -F

导入磁盘 storcli64 /cx/fall import

查看磁盘状态 storcli64 /cx/ex/sx show 磁盘状态为 UGOOD - 磁盘为可用状态

相关推荐
·薯条大王12 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
ZJH__GO15 小时前
网络编程v4pro--实现聊天室文件传输功能
java·服务器·网络·计算机网络
小小、码农15 小时前
Linux进程控制:从fork到exec,手写一个简易Shell
linux·运维·服务器
不会就选b15 小时前
Linux之进程间通信(二)---模拟进程池
linux·运维·服务器
NeilYuen16 小时前
用UDP实现向DNS服务器请求IP地址
服务器·tcp/ip·udp
沫璃染墨17 小时前
《从零入门Linux系统篇(十五):系统工具篇·六——GDB调试器详解:从程序执行控制到高级调试技巧》
linux·运维·服务器·c语言·c++
AIgorithmGEEK18 小时前
Linux 环境变量完全指南:从入门到理解底层原理
linux·运维·服务器
迪康Defender18 小时前
从静态存储到动态流转:终端透明加密两种模式实战解析
运维·服务器·网络·数据库·其他
酷可达拉斯18 小时前
Linux操作系统-升级OpenSSH修复漏洞
linux·运维·服务器·云计算
振浩微433射频芯片19 小时前
用TU2303B双向无线模块打通标准化智能家居接入:433MHz方案的落地优势指南
服务器·网络·人工智能