转换步骤
- 将kvm中要迁移的虚拟机关机
- 找到该虚拟机对应的
.img
文件 - 使用
qemu-img convert
命令将img文件转换为vmdk
文件 - 把
vmdk
文件传送到ESXi
主机上 - 在
vCenter
中创建一个配置相同的主机,加载已存在的vmdk
硬盘文件 - 开启虚拟机即可
qemu-img命令的时候用
qemu-img
命令行工具是Xen
和KVM
用来格式化各种文件系统的,可使用qemu-img
格式化虚拟客户端映像、附加存储设备以及网络存储。还可以用来转换镜像文件
创建磁盘文件
创建新磁盘映像文件名为 sina_kvm,格式为 format
1 | qemu-img create [-6] [-e] [-b base_image] [-f format] filename [sina_kvm] |
例如:创建一个10M的镜像文件:ps_kvm.img,文件格式为:raw
转换镜像格式
1 | qemu-img convert [-c] [-e] [-f format] filename [-O output_format] output_filename |
例如:
1 | qemu-img convert 10-71-hadoop.shennong.ren.img -O vmdk /tmp/testhdp.vmdk |
获取镜像信息
1 | qemu-img info [-f format] filename |
支持的格式
映像格式通常是自动获取的。支持以下格式:
- raw
Raw 磁盘映像格式(默认)。这个格式的优点是可以简单、容易地导出到其它模拟器中。如果您的文件系统支持中断(例如在 Linux 中的 ext2 或者 ext3 以及 Windows 中的 NTFS),那么只有写入的字段会占用空间。使用 qemu-img info 了解 Unix/Linux 中映像或者 ls -ls 使用的实际大小。
- qcow2
QEMU 映像格式,最万能的格式。使用它可获得较小映像(如果您的系统不支持中断,例如在 Windows 中,它会很有用)、额外的 AES 加密法、zlib 压缩以及对多 VM 快照的支持。目前也是虚拟池一直在使用的镜像格式。
例如:
转换之前,原镜像disk size大小为8G,转换后仅仅只有2.3G。
- qcow
旧的 QEMU 映像格式。只用于与旧版本兼容,目前虚拟池已无该格式镜像文件。
- cow
写入映像格式的用户模式 Linux 副本。包含 cow 格式的目的只是为了与前面的版本兼容。它无法在 Windows 中使用,虚拟池已无该格式镜像文件。
- vmdk
VMware 3 和 4 兼容映像格式,虚拟池无该格式镜像文件。
- cloop
Linux 压缩回送映像,只有在重复使用直接压缩的 CD-ROM 映像时有用,比如在 Knoppix CD-ROM 中。
参考文章