作者:泥土人走泥u加水 | 来源:互联网 | 2014-05-27 21:08
1.通过SSH连接到vmware的服务器上,在/vmfs/volumes/目录下找到虚拟机的磁盘文件:centos-H-flat.vmdk:如果你用“现在分配所有的磁盘空间”选项创建vmware虚拟机时,Flat文件会被使用,Flat.vmdk文件包含了所有数据,可以直接转换成qcow2。Centos-H-flat.v
1.
通过SSH连接到vmware的服务器上,在/vmfs/volumes/目录下找到虚拟机的磁盘文件:
centos-H-flat.vmdk:如果你用“现在分配所有的磁盘空间”选项创建vmware虚拟机时,Flat文件会被使用,Flat.vmdk文件包含了所有数据,可以直接转换成qcow2。
Centos-H-flat.vmdk文件为raw格式,所以可以直接拷贝至KVM的实例下面,作为KVM实例的磁盘。
centos-H.vmx:是定义vmware虚拟机的文件,相当于KVM实例的xml文件的作用。
2. 可以通过scp拷贝centos-H-flat.vmdk
和centos-H.vmx,到openstack中已准备好的一个实例的文件目录里,该实例为redhat:
3. 备份好原来的XML文件:cp libvirt.xml libvirt.xml.back
4. 安装virt-goodies:
apt-get installvirt-goodies
5. 用vmware2libvirt把vmware的xmv转换成xml:
Vmware2libvirt ?f centos-H.vmx > libvirt.xml
6. 现在就只剩下修改虚拟机的XML文件了,先virsh destroy
instance-xxxxxxxx,参照libvirt.xml和libvirt.xml.back,在virsh edit
instance-xxxxxxxx中修改,修改后virsh start intance-xxxxxxx. 实例启动成功后,把
virsh editinstance-xxxxxxx的结果复制到libvirt.xml中。
7.
libvirt.xml来自vmware,主要参考它的disk信息,磁盘路径修改为centos-H-flat.vmdkd的绝对路径。libvirt.xml.back来自原来实例,主要参考它关于一些外设的描述信息,网络等。原来实例关于ramdisk、console.log、kernel的描述全部删除。
8. 下面是一个经过修改后可以运行的XML:
instance-00000001
701d6341-1a10-4d5d-8b7f-9d8e1c89b88c
1048576
1048576
1
1
hvm
destroy
restart
destroy
/usr/bin/kvm