云计算那些事儿:从IaaS到PaaS进阶
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

3.6 镜像格式转换

3.6.1 ova转raw

目前在去IOE的浪潮下,很多公司的虚拟化方案都从原先的VMware切换成KVM。为了降低迁移的复杂度,可以将VMware的镜像直接转换为KVM的镜像。

virt-v2v是红帽工程师Matthew Booth开发并开源的命令行工具,目前已经支持从ESX、Xen、Virtualbox等平台的镜像转化为KVM支持的镜像,如图3-21所示,左侧是输入,支持本地磁盘文件disk、VMware支持ova或者vmx镜像、Libvirt源等;右侧是输出,可以直接导入Libvirt或者OpenStack的glance,也可以保存到本地。

图3-21 virt-v2v命令行工具

下面将通过一个案例演示如何将一个ova格式的镜像转化为raw格式的镜像,代码如下。

其中,-of指定输出的镜像格式,-os指定存储位置。如果“-o local”是本地存储镜像,那么-os需要指定一个输出目录;如果“-o libvirt”指定Libvirt,那么-os需要指定一个存储池。

3.6.2 raw转qcow2

如果KVM支持镜像格式之间的转化,则相对简单,可以直接通过qemu-img完成,代码如下所示。