在KVM中如何将VM克隆到具有不同磁盘空间的VM

时间:2016-02-06 09:34:12

标签: virtual virtualization kvm

使用Centos 6.7作为KVM虚拟化的热门,我创建了一个具有30GB大小的虚拟磁盘的VM。我想将此VM克隆到具有不同磁盘大小的新VM。 新VM的磁盘空间应为60GB 这有可能吗?如果是的话我该怎么办?

2 个答案:

答案 0 :(得分:1)

为什么你想要克隆vm传送空间? 1 - 如果你想要克隆vm来扩展vm的hdd  kvm为每个vm使用lvm,这样你可以扩展lvm以增加vm的hdd

 lvextend -l +(size of extend in byte or use G for gigabyte) /dev/vgname/lvmNameOfVm
resize2fs /dev/vgname/lvmNameOfVm

您可以使用lvdisplayvgs

找到lvm和vg名称

2 - 如果您需要克隆vm到其他服务器的更改位置 我建议你先调整你的虚拟机,然后克隆到新的虚拟机

注意:如果你想第一次这样做,首先要为测试创建一个vm,然后在测试它之后再做它,并为你使用main vm

你没有像solusvm这样的控制面板吗?如果你有你的面板可以克隆vm而不需要在ssh上做任何事情

答案 1 :(得分:0)

我设法克隆了一个VM,然后增加了它的磁盘大小,因为我决定采取我在这里采取的步骤,因为我无法在一个地方找到所有这些步骤。
克隆后,要扩展磁盘大小,请创建一个更大的磁盘:

virsh vol-create-as default newdisk 60G

并将旧磁盘复制到新磁盘并展开其中一个guest虚拟机分区:

virt-resize --expand /dev/sda2   olddisk newdisk

更改vm的配置以使用新磁盘。 发出此命令以编辑配置文件:

#virsh edit <VM_name>

使用新磁盘名称查找并替换旧磁盘名称。

有关这些步骤的更多详细信息,请访问:http://libguestfs.org/virt-resize.1.html

现在启动新的vm,登录并重新调整vm的lvm分区。

lvextend -l +<free_blocks_count> /dev/vg_<VM_name>/lv_root
resize2fs /dev/vg_<VM_NAME>/lv_root

查找空闲块数发出以下命令:

vgdisplay

可以在此处找到有关这些步骤的精彩教程:http://www.tecmint.com/extend-and-reduce-lvms-in-linux/