电源故障后 LVM 错误地报告丢失

电源故障后 LVM 错误地报告丢失

我们的数据中心发生了一次重大电源故障。我们使用一组服务器来满足我们的存储需求。主服务器有几对使用 mdadm 镜像的磁盘。结果 /dev/mdX 是 LVM 物理卷,属于一个包含我们所有数据的大卷组。

断电后,我们遇到了一个问题,由于缺少条目,其中一个 mdadm 设备无法自动检测到mdadm.conf。结果,由于缺少 PV,卷组具有非活动逻辑卷。

我们可以修复 mdadm 配置并重新启动。pvscan显示所有预期的 PV,但一个 LV 仍然没有出现。vgdisplay 显示:

[...]
Cur PV:  3
Act PV:  2
[...]

vgscan 和 pvscan 均未显示任何丢失的设备。

哪里出了问题?我们如何强制 LVM 激活所有 PV?

答案1

我们匆忙想出的一个解决办法是:

vgcfgbackup -f backup.vg

然后编辑文件,替换

flags = ["MISSING"]

flags = []

在 PV 中,这是问题所在,并使用

vgcfgrestore -f backup_edited.vg

加载修改后的配置。之后,vgchange -a y name_of_the_vg一切如预期。

相关内容