我在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
是逻辑卷