我想将虚拟机从 proxmox 导出到 virtualbox 或 vmware。可以吗?如何操作?
答案1
这个答案不完整,但它应该可以帮助您入门。
我想将虚拟机从 proxmox 导出到 virtualbox 或 vmware。可以吗?
是的
如何 ?
具体方法实际上取决于虚拟机的存储方式。假设您有一个简单的设置,其中一台计算机同时充当虚拟机管理程序和存储。
- ssh 到虚拟机管理程序(或者获取 shell)。稍后您可能需要 root 身份才能执行命令
- 确定虚拟机的存储方式
- 磁盘上的文件(例如 qcow、vmdk 等)通常位于 /var/lib/vz/images 中
- 在逻辑卷上使用lvs列出逻辑卷
您现在可以将文件复制到其他地方,然后使用qemu-img 转换根据 Soviero 的回复。如果你有防火墙,你可能需要通过 ssh 反向传输数据
例如,我需要将一些虚拟机从一个虚拟机管理程序移动到另一个虚拟机管理程序。两者都使用逻辑卷来存储原始映像,因此我执行了以下操作
source# lvs --units b 2>/dev/null | grep vm-111
vm-111-disk-1 vglocal01 -wi-ao--- 17179869184B
destination# lvcreate -L 17179869184b -n vm-111-disk-1 vg_vms
source# dd if=/dev/vglocal01/vm-111-disk-1 | ssh destination dd of=/dev/vg_vms/vm-111-disk-1
答案2
您可能无法将整个虚拟机导出到另一个虚拟机管理程序,但至少可以导出磁盘:
使用 VirtualBox:
首先,如果磁盘不是“原始”类型,则在 KVM 管理程序/服务器上运行以下命令:
qemu-img convert -f qcow2 kvm_source.img -O raw kvm_destination.img
然后,从 VirtualBox:
VBoxManage convertfromraw <filename> <outputfile>
[--format VDI|VMDK|VHD]
[--variant Standard,Fixed,Split2G,Stream,ESX]
[--uuid <uuid>
使用 KVM:
qemu-img convert -O vdi kvm_source.img vbox_destination.vdi
我不能保证,因为我自己从来没有这样做过,但它们应该有用。另外,我个人会把钱花在 KVM 解决方案上……
答案3
Proxmox 支持两种虚拟化技术,即完全虚拟化和容器。有几种众所周知的完全虚拟化产品,例如 KVM、Xen 和 Vmware,而容器产品包括 lxc 和 OpenVZ。Proxmox 目前仅支持 KVM 和 OpenVZ。所以我认为您的问题与“如何将 KVM VM 转换为 virtualbox 或 vmware VM”相同。据我所知,没有一种简单的方法可以将 KVM vm 转换为 vmware VM。只需自己谷歌一下即可。