有不少小伙伴用完PVE之后(PVE8.0-2安装使用快速指导),跟我的感觉是一样的,就是有点拉胯,转而想换一个虚拟化软件,比如说VMware ESXi,那该怎么操作呢?
前面我们说了,PVE的底层也是KVM虚拟化,那操作方式应该和KVM就比较像了。
首先,我们要找到虚拟机的磁盘文件,通过虚拟机的硬件配置我们可以看到,硬盘挂在方式为ide0,磁盘镜像为local-lvm:vm-101-disk-0。
然后我们进入导航栏数据中心local-lvm(pve)下面,我们可以看到VM磁盘中有这个名称为vm-101-disk-0的磁盘,格式为raw,大小为34.36 GB。
那这个磁盘的真实路径是什么呢?我们进入到命令行看一下,直接查找,找到两个文件,其中/dev/pve/vm-101-disk-0这个文件就是对应的VM磁盘了,但是他不是真实路径,而是映射到了/dev/dm-6。
确认一下文件信息,还是使用qemu-img命令,命令的介绍和用法请参考(qemu-img命令手册)。使用qemu-img info命令查看磁盘镜像文件信息。
可以看到文件格式为raw,其他信息也和页面看到的基本一致,而页面显示大小为34.36 GB则是进制为1000导致的。
确认之后,我们就可以使用qemu-img convert命令来转换磁盘文件的格式了。
qemu-img convert [-c] [-p] [-n] [-f fmt] [-t cache] [-T src_cache] [-O output_fmt] [-o options] [-s snapshot_name] [-S sparse_size] filename [filename2 [...]] output_filename
使用格式output_fmt将磁盘镜像文件名或快照snapshot_name转换为磁盘镜像 output_filename,还可以选择压缩(“-c”选项)或使用任何格式特定选项,如加密(“-o”选项)。
qemu-img convert -c -O vmdk /dev/pve/vm-101-disk-0 /nfs/tt/vm-101.vmdk
转换完成之后,我们看一下磁盘使用量情况。
相比操作之前竟然没有增长,也是十分奇怪。
转换完成之后,我们就可以在VMware的NFS存储中看到这个磁盘文件了(借PVE8.0的Debian 12系统配置一下NFS服务器)。
然后我们新建一台虚拟机。
按照正常的虚拟机配置,选择正确且合适的操作系统版本。
存储选择到指定的存储空间。
配置合适的硬件配置,硬盘配置随便选。
快速完成虚拟机的创建。
创建完成之后,进入到数据存储浏览器中,找到对应刚刚创建虚拟机名称的目录,可以看到下面已经有一个vmdk磁盘文件。
然后我们把NFS存储中转换好的的磁盘文件移动到这个目录下面。
现在查看磁盘的文件大小还是276.81 MB。
然后我们在虚拟机关机状态下编辑虚拟机设置,删除点原来的硬盘,并勾选“从数据存储删除文件”,然后点击“添加硬盘”,选择“现有硬盘”。
还上次挂载硬件一样(VMware使用vmkfstools命令将厚置备虚拟机磁盘转为精简置备),也是类型和大小识别不准确。
修改完成之后,启动虚拟机出现了报错,提示磁盘类型不支持。现在回想一下开头我们提到的,这个磁盘是什么类型。
然后在硬盘配置中,将控制器位置修改为“IDE控制器0”。
再次启动,就可以正常进入系统了。
齐活,还挺简单的。