无法更换故障硬盘来重建 Raid 1 阵列(英特尔 RST Raid 1)

无法更换故障硬盘来重建 Raid 1 阵列(英特尔 RST Raid 1)

我们有HP服务器HP ProLiant ML10 Gen 9使用 Ubuntu 20.04.4 LTS。我们使用 Intel RST Raid 配置(这是一个假的/固件 raid)为两个 2TB 大小的 HDD 启用了 Raid 1 阵列。现在我的目标是更换有故障的驱动器并重建 Raid 1 阵列。

以下是 Raid Status 的输出猫/proc/mdstat

surya@himalaya:~$ cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md126 : active raid1 sda[1] sdb[0]
      1953511424 blocks super external:/md127/0 [2/2] [UU]

md127 : inactive sda[1](S) sdb[0](S)
      6320 blocks super external:imsm

unused devices: <none>

以下是 HDD 信息的输出lsblk

surya@himalaya:~$ lsblk
NAME                        MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
loop0                         7:0    0 61.9M  1 loop  /snap/core20/1361
loop1                         7:1    0 67.9M  1 loop  /snap/lxd/22526
loop2                         7:2    0 55.5M  1 loop  /snap/core18/2284
loop3                         7:3    0 43.6M  1 loop  /snap/snapd/14978
loop4                         7:4    0 55.4M  1 loop  /snap/core18/2128
loop5                         7:5    0 43.6M  1 loop  /snap/snapd/15177
loop6                         7:6    0 67.2M  1 loop  /snap/lxd/21835
loop7                         7:7    0 61.9M  1 loop  /snap/core20/1376
sda                           8:0    0  1.8T  0 disk
└─md126                       9:126  0  1.8T  0 raid1
  ├─md126p1                 259:0    0  1.1G  0 part  /boot/efi
  ├─md126p2                 259:1    0  1.5G  0 part  /boot
  └─md126p3                 259:2    0  1.8T  0 part
    ├─ubuntu--vg-ubuntu--lv 253:0    0  100G  0 lvm   /
    └─ubuntu--vg-lv--0      253:1    0  1.7T  0 lvm   /home
sdb                           8:16   0  1.8T  0 disk
└─md126                       9:126  0  1.8T  0 raid1
  ├─md126p1                 259:0    0  1.1G  0 part  /boot/efi
  ├─md126p2                 259:1    0  1.5G  0 part  /boot
  └─md126p3                 259:2    0  1.8T  0 part
    ├─ubuntu--vg-ubuntu--lv 253:0    0  100G  0 lvm   /
    └─ubuntu--vg-lv--0      253:1    0  1.7T  0 lvm   /home
sr0                          11:0    1 1024M  0 rom

我使用下面的命令来替换故障驱动器 sdb如上所示。

mdadm --manage /dev/md126 --fail /dev/sdb并关闭系统并在同一端口更换硬盘。

现在当我尝试使用此命令重建阵列时mdadm --管理/dev/md126 --添加/dev/sdb我收到以下消息。

root@himalaya:~# mdadm --manage /dev/md126 --add /dev/sdb
mdadm: Cannot add disks to a 'member' array, perform this operation on the parent container

现在输出猫/proc/mdstat在下面。

root@himalaya:~# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md126 : active raid1 sda[0]
      1953511424 blocks super external:/md127/0 [2/1] [U_]

md127 : inactive sda[0](S)
      3160 blocks super external:imsm

unused devices: <none>

我还尝试使用 (Ctrl + i) 进入 BIOS 中的 Intel ROM 选项,但无法显示该屏幕。如果有人能帮助我重建和恢复 Raid 1 阵列,那将非常有帮助。

答案1

因此,我为了让所有需要处理此类假突袭控制器的人都能从中受益,回答我自己的问题。

以下是我发现的内容

有趣的是MD126型不是这里的主 RAID 阵列,而是MD127,所以我所做的就是使用以下命令将这个新驱动器重新添加到 md127:

mdadm --manage /dev/md127 --force --add /dev/sdb

而突袭队则开始重建。

现在的结果猫/proc/mdstat是:

root@himalaya:~# cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md126 : active raid1 sda[1] sdb[0]
      1953511424 blocks super external:/md127/0 [2/2] [UU]

md127 : inactive sdb[1](S) sda[0](S)
      6320 blocks super external:imsm

unused devices: <none>

并且这些变化也反映在 BIOS 屏幕上。Intel RST RAID 卷状态正常。

以下是我用来成功恢复此 RAID 1 阵列的命令列表。

要检查突袭状态:

cat /proc/mdstat

删除故障磁盘:首先我们将磁盘标记为故障,然后将其从阵列中删除:

mdadm --manage /dev/md126 --fail /dev/sdb
mdadm --manage /dev/md126 --remove /dev/sdb

然后关闭系统电源并更换新的驱动器:

shutdown -h now

添加新硬盘:首先,您必须创建与 /dev/sda 完全相同的分区:

sfdisk -d /dev/sda | sfdisk /dev/sdb

要检查两个硬盘是否具有相同的分区:

fdisk -l

接下来我们将这个驱动器添加到 RAID 阵列(您可以根据需要使用 md126 或 md127,无论哪个是主 RAID 阵列)下面是我使用的命令:

mdadm --manage /dev/md127 --force --add /dev/sdb

就是这样。您现在可以看到 Raid 开始重建。

相关内容