精简 LV 可以移动到不同的 LVM 池吗?

精简 LV 可以移动到不同的 LVM 池吗?

如果同一卷组内有 (2) 个精简池 (vg/pool1) 和 (vg/pool2),并且第一个池内有一个 LV,是否有 LVM 命令将该 LV 移动到第二个池? pvmove 会这样做吗?

或者,如果您有一个分布在两个不同 PV 上的精简 LVM 池,您是否可以轻松指定应使用 pvmove 命令将 LV X 的所有范围从 PV Y 移动到 Z?

答案1

我尝试使用 pvmove 来完成此操作,但没有成功。 Google 上有一个对源代码的修复的参考,该修复将使 pvmove 命令允许执行此操作,但在我的 CentOS 7 计算机上,它抱怨我的精简池,所以我不知道此修复是什么版本(如果有)我也不知道它是否有效。

也就是说,将 LV 从一个池移动到另一个池应该不会太难。事实上,我在两个位于不同 VG 的池之间移动了我的池(这在任何情况下都不重要)。这就是我所做的:

调用 LV my_logic_volume、VG first_vg 和 secondary_vg(这些在您的情况下是相同的)以及目标 my_logic_volume2。我在我的实例中更改了 LV 的名称;我不确定您是否可以在同一个 VG 中创建两个具有相同名称的 lvs,即使它们位于不同的精简池上。你可以尝试一下。无论如何,移动之后你总是可以做一个lvrename,很简单。

以下是事情的顺序:

# lvs
LV                VG        Attr       LSize   Pool      Origin Data%  Move Log Cpy%Sync Convert
my_logical_volume first_vg  Vwi-a-tz--  10.74g thinpool0         31.39  
thinpool1         second_vg twi-a-tz--   1.20t                    0.29        
thinpool0         first_vg  twi-a-tz-- 500.89g                   86.87                                 

请注意上面逻辑卷上的 LSize。这个命令:

# lvcreate -V 10.74g -n my_logical_volume2 -T second_vg/thinpool1

...创建适当数量的 LE 来匹配。只需使用与 lvs 显示的尺寸完全相同的尺寸即可。使用 lvdisplay 验证您已创建相同大小的逻辑卷;查看该Current LE行(如果生成的 LE 计数较少,请删除然后重新创建 lv,但将 0.01 添加到您的大小 [-V 后面的数字]):

# lvdisplay first_vg/my_logical_volume
  --- Logical volume ---
  LV Path                /dev/first_vg/my_logical_volume
  LV Name                my_logical_volume
  VG Name                first_vg
  LV Pool name           thinpool0
  LV Size                10.74 GiB
  Mapped size            31.39%
  Current LE             2750

# lvdisplay second_vg/my_logical_volume2
  --- Logical volume ---
  LV Path                /dev/second_vg/my_logical_volume2
  LV Name                my_logical_volume2
  VG Name                second_vg
  LV Pool name           thinpool1
  LV Size                10.74 GiB
  Mapped size            0.00%
  Current LE             2750

所以现在只需从第一个 lv 复制到新创建的 lv 即可:

# time dd if=/dev/first_vg/my_logical_volume of=/dev/second_vg/my_logical_volume2 bs=4194304 conv=sparse

conv=sparse对于 dd 至关重要,否则所有空间都将在您的目标精简池上配置,并且它将不再精简:-)。

验证您的新逻辑卷是否符合您的喜好。一旦 alles klarr,Kommissar 先生,如果您愿意,您可以重命名您的新 LV,删除原始的(您在处理它之前备份了它,对吧?),等等。

相关内容