当底层 raid 1 上有一个驱动器丢失时,raid 1 (+0) 报告失败

当底层 raid 1 上有一个驱动器丢失时,raid 1 (+0) 报告失败

我遇到了一种奇怪的情况,我们正在尝试解决,但无法弄清楚。对于一台服务器,我们的配置如下:

md0 : active raid0 md101[1] md100[0]
      642050048 blocks super 1.2 512k chunks

md100 : active raid1 sda3[1](W) nvme2n1p3[0]
      321157120 blocks super 1.2 [2/2] [UU]
      bitmap: 0/3 pages [0KB], 65536KB chunk

md101 : active raid1 nvme0n1p3[0] nvme1n1p3[1]
      321157120 blocks super 1.2 [2/2] [UU]
      bitmap: 0/3 pages [0KB], 65536KB chunk

这是两个 raid 1(md100、md101),在 md0 中组合为 raid 0,从而产生 raid 1+0。md0 被指定为 LVM VG 的物理驱动器。

我们正在测试启动时的磁盘故障,奇怪的是,从逻辑卷挂载的 fstab 上的分区出现致命错误,并且系统无法启动,即使 fstab 中有 nofail 标志。

我将此归咎于 LVM,但在维护模式下访问后,我注意到当我删除 sda 时,md100 和 md0 报告为“不活动”:

md0 : inactive md101[1](S)
      321025024 blocks super 1.2

md101 : active raid1 nvme0n1p3[0] nvme1n1p3[1]
      321157120 blocks super 1.2 [2/2] [UU]
      bitmap: 0/3 pages [0KB], 65536KB chunk

md100 : inactive nvme2n1p3[0](S)
      321157120 blocks super 1.2

mdadm 报告:

/dev/md0:
           Version : 1.2
        Raid Level : raid0
     Total Devices : 1
       Persistence : Superblock is persistent

             State : inactive
   Working Devices : 1

              Name : a20:0  (local to host a20)
              UUID : 86a127b0:ebb2b28e:b892d07b:98b19065
            Events : 0

    Number   Major   Minor   RaidDevice

       -       9      101        -        /dev/md/101
/dev/md100:
           Version : 1.2
        Raid Level : raid0
     Total Devices : 1
       Persistence : Superblock is persistent

             State : inactive
   Working Devices : 1

              Name : a20:100  (local to host a20)
              UUID : 407875f0:a37d4bfc:ac80f39c:b4095741
            Events : 5904

    Number   Major   Minor   RaidDevice

       -     259       15        -        /dev/nvme2n1p3

在我看来这是不正确的。注意到 md100 (raid 1) 突然被报告为“raid0”了吗?md100 作为 raid 1 应该以 raid1“降级”启动,而据我了解,md0 应该处于降级或正常状态。

我试图找出可能导致这种情况的原因,猜测这与需要在 raid 的所有分区上写入超级块或我缺少的其他一些启动配置有关。

相关内容