如何在将LVM中的镜像添加到现有的LV时指定用于镜像的PV?

我在RHEL服务器上安装了一个包含单个LV的现有VG,它由less量的SAN磁盘组成。 为了将服务器迁移到更新的SAN,我希望将现有的存储镜像反映到已添加到服务器的新存储中。

我们正在试图做到这一点,这样就不会中断LV的可用性。 我怀疑应该有一些方法来使用lvconvert命令来做到这一点,但我似乎无法弄清楚我的生活。 看起来很简单,为卷添加一个镜像,但是我一直无法find任何关于如何指定用来创build新镜像腿的磁盘集。

目前我有以下几点:

旧SAN:

PV VG Fmt Attr PSize PFree /dev/mapper/mpath0 vg_ap01 lvm2 a-- 136.00G 0 /dev/mapper/mpath1 vg_ap01 lvm2 a-- 136.00G 0 /dev/mapper/mpath11 vg_ap01 lvm2 a-- 136.00G 1.00G /dev/mapper/mpath12 vg_ap01 lvm2 a-- 136.00G 0 /dev/mapper/mpath2 vg_ap01 lvm2 a-- 136.00G 0 /dev/mapper/mpath3 vg_ap01 lvm2 a-- 136.00G 1.00G /dev/mapper/mpath4 vg_ap01 lvm2 a-- 136.00G 1.00G /dev/mapper/mpath5 vg_ap01 lvm2 a-- 136.00G 1.00G /dev/mapper/mpath6 vg_ap01 lvm2 a-- 136.00G 0 

新的SAN:

 PV VG Fmt Attr PSize PFree /dev/mapper/mpath19 vg_ap01 lvm2 a-- 136.00G 136.00G /dev/mapper/mpath20 vg_ap01 lvm2 a-- 136.00G 136.00G /dev/mapper/mpath21 vg_ap01 lvm2 a-- 136.00G 136.00G /dev/mapper/mpath22 vg_ap01 lvm2 a-- 136.00G 136.00G /dev/mapper/mpath23 vg_ap01 lvm2 a-- 136.00G 136.00G /dev/mapper/mpath24 vg_ap01 lvm2 a-- 136.00G 136.00G /dev/mapper/mpath25 vg_ap01 lvm2 a-- 136.00G 136.00G /dev/mapper/mpath26 vg_ap01 lvm2 a-- 136.00G 136.00G /dev/mapper/mpath27 vg_ap01 lvm2 a-- 136.00G 136.00G 

我们的目标是将mpath0-6,11-12镜像到mpath19-27,它们将创buildLV / dev / vg_ap01 / lv_ap01。 稍后,一旦镜像完成,我们想打破镜像,将较旧的磁盘(0-6,11-12)从VG中取出。

需要注意的是镜像上没有交叉,所有的数据都必须单独包含在两个磁盘组中,否则我们将无法摆脱旧的SAN存储。

有没有人遇到过这个? 先谢谢你。

解决scheme1:

根据评论,使用pvmove(你可能在迁移过程中有风险)。

解决scheme2:

 lvextend -m 1 /dev/vg_ap01/lv_ap01 /dev/mapper/mpath19 /dev/mapper/mpath20 ... 

然后

 lvreduce -m 0 /dev/vg_ap01/lv_ap01 /dev/mapper/mpath1 /dev/mapper/mpath2 ... 

哪里

  • -m指定镜像的编号
  • /dev/vg_ap01/lv_ap01是逻辑卷
  • 磁盘将被添加/删除