一种虚拟机迁移方法及装置制造方法及图纸

技术编号:18398121 阅读:28 留言:0更新日期:2018-07-08 19:10
一种虚拟机迁移方法及装置,包括:完成迁移前的准备工作;目标kvm虚拟机连接目标Vmware虚拟机所在esxi,直接拷贝目标Vmware虚拟机的磁盘;所述装置包括:准备单元,配置用于完成迁移前的准备工作;迁移单元,配置用于连接目标Vmware虚拟机所在esxi,直接拷贝目标Vmware虚拟机的磁盘。该方案适用于多种场景,包括虚拟机位于Vmware集群中。整个过程不需用户的多次介入操作,操作简便,并对vm的驱动进行优化,使用最适用于kvm平台的virtio驱动,以及对迁移后的虚拟机进行xml配置文件以及存储池配置等的修改,确保转化后的vm与当前平台新建vm的一致性。

【技术实现步骤摘要】
一种虚拟机迁移方法及装置
本专利技术涉及虚拟机领域,尤其涉及一种虚拟机迁移方法及装置。
技术介绍
随着云平台的大规模应用,企业在应用过程中存在对现有资源整合和重新规划使用的需求,现存的物理资源上的虚拟机资源需要进行迁移,以匹配现有的服务布局。但现有虚拟机迁移采用的基于qemu-img命令的转化需将vmware平台vm事先提取出ova模板,过于繁琐,操作流程过多,无法达到一键式迁移效果;而另一种迁移方法基于virt-v2v命令的迁移需连接vcenter进行通信,效率不高,且如果vm位于vmware的集群内时,该命令不适用。此外,现有虚拟机迁移方法没有针对迁移后的vm进行设备驱动的优化也无法将迁移后vm的配置文件进行定制化开发,造成迁移后VM使用上未达到最佳效果,也不便于统一管理。
技术实现思路
鉴于现有技术中的上述缺陷或不足,期望提供一种能够一键将Vmware虚拟机迁移到kvm虚拟机的方案。第一方面,本申请实施例提供了一种虚拟机迁移方法,包括:读取并连接待迁移的第一虚拟机的系统;将所述第一虚拟机的磁盘文件以raw格式从第一虚拟机所在HOST迁移至目标HOST;将获取的raw格式的磁盘文件转化成qcow2格式。第二方面,本申请实施例提供了一种用于虚拟机迁移的装置,包括:准备单元,配置用于读取并连接待迁移的第一虚拟机的系统;迁移单元,配置用于将所述第一虚拟机的磁盘文件从第一虚拟机所在系统迁移至目标虚拟机;格式转化单元,配置用于将获取到的raw格式的磁盘文件转化成qcow2格式。本申请实施例提供的Vmware虚拟机一键迁移到kvm虚拟机的方法及装置通过kvmhost直连Vmware虚拟机esxi进行获取vm的磁盘文件,效率高,且能适用于多种场景,包括虚拟机位于Vmware集群中。整个过程不需用户的多次介入操作,操作简便,并对vm的驱动进行优化,使用最适用于kvm平台的virtio驱动,以及对迁移后的虚拟机进行xml配置文件以及存储池配置等的修改,确保转化后的vm与当前平台新建vm的一致性。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1示出了根据本申请实施例的Vmware虚拟机一键迁移到kvm虚拟机的方法的示例性流程图;图2示出了对迁移后的Vmware虚拟机进行xml配置文件以及存储池配置等的修改方法的示例性流程图;图3示出了vm的驱动的优化方法的示例性流程图。具体实施方式下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关专利技术,而非对该专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与专利技术相关的部分。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。诚如
技术介绍
所述的,现有Vmware虚拟机迁移技术或是依赖ova模板,操作繁琐,或是需连接vcenter进行通信,效率不高,且如果vm位于vmware的集群内时,该命令不适用。鉴于现有技术的上述缺陷,本申请实施例提供了一种Vmware虚拟机一键迁移到kvm虚拟机的方案。通过kvmhost直连Vmware虚拟机esxi进行获取vm的磁盘文件,效率高,且能适用于多种场景,包括虚拟机位于Vmware集群中。下面将结合流程图来描述本申请实施例的方法。参考图1,其示出了本申请实施例的Vmware虚拟机一键迁移到kvm虚拟机的方法的示例性流程图。如图1所示,Vmware虚拟机的整个迁移流程包括:1)程序首先通过Vmware的python接口访问到vmware的目标host主机来获取vm信息;2)确认信息正确后,分不同的OS类型(windows/linux)来下载不同的一键脚本并执行,来做好迁移前的准备工作,包括安装virtio驱动,windows还会创建一个计划任务,然后将vm关机;3)程序判断vm已关机后,将信息输入任务list;4)程序后台的迁移进程会读取当前任务list中有无可执行的任务,并开始执行;5)程序连接到目标host主机,并下发virt-v2v-copy-to-local命令将目标esxi上的vmware虚拟机以raw格式拷贝至目标kvm主机。该命令可适用于vmware环境下多种场景,包括:vm多磁盘,vm处于vmware集群中均可以,而且是直连esxi,不通过vc,提高迁移效率;参考图2,其示出了对迁移后的Vmware虚拟机进行xml配置文件以及存储池配置等的修改方法的示例性流程图。如图2所示,Vmware虚拟机进行xml配置文件以及存储池配置等的修改包括以下步骤:1)拷贝磁盘文件完成后,程序将获取到的raw格式文件转化成qcow2格式文件;2))生成xml文件用来注册迁移后的虚拟机(其中linux由于内核支持virtio,xml文件中驱动已更新为virtio,由于windows的硬盘驱动更新需后续在线多一个步骤,因此此时windows的磁盘驱动为ide)。参考图3,其示出了vm的驱动的优化方法的示例性流程图。如图3所示,vm的驱动的优化方法包括以下步骤:1)此步骤会有一个OS类型的判断,如果为windows,则会将os开机,并临时添加一块virtio驱动的硬盘(该临时硬盘关机后消失),由于第一步中我们已为windows安装了virtio的驱动,此时系统会为此块新增硬盘安装virtio驱动,并将此virtio的磁盘驱动添加到注册表中,此时OS的系统盘已可更改为virtio驱动。程序将vm关机,并修改xml文件,将驱动格式修改为virtio,并重新将vm开机,此时VM能正常进入系统;2)由于windows的网卡驱动被改成了virtio,因此IP信息已丢失,使用改造后的qemu-guest-agent(QEMU)下发注入命令到vm中,完成ip信息的注入,此时vmware虚拟机迁移成kvm虚拟机的过程完成。本文档来自技高网
...

【技术保护点】
1.一种虚拟机迁移方法,其特征在于,所述方法包括:读取并连接待迁移的第一虚拟机的系统;将所述第一虚拟机的磁盘文件以raw格式从第一虚拟机所在HOST迁移至目标HOST;将获取的raw格式的磁盘文件转化成qcow2格式。

【技术特征摘要】
1.一种虚拟机迁移方法,其特征在于,所述方法包括:读取并连接待迁移的第一虚拟机的系统;将所述第一虚拟机的磁盘文件以raw格式从第一虚拟机所在HOST迁移至目标HOST;将获取的raw格式的磁盘文件转化成qcow2格式。2.根据权利要求1所述的方法,其特征在于,所述方法还包括迁移前的准备工作:通过获取的第一虚拟机信息下载对应的脚本并执行;将所述第一虚拟机信息输入任务列表中,用于迁移进程中读取并执行。3.根据权利要求2所述的方法,其特征在于,所述获取第一虚拟机信息包括:通过第一虚拟机所在ESXIHOST的python接口访问到目标host主机来获取所述第一虚拟机的信息。4.根据权利要求2所述的方法,其特征在于,所述下载对应的脚本并执行包括:根据第一虚拟机的系统类型下载相应的脚本;执行脚本安装virtio驱动。5.根据权利要求4所述的方法,其特征在于,所述下载对应的脚本并执行还包括:若第一虚拟机的系统为windows系统,则创建一个计划任务并关闭所述第一虚拟机。6.根据权利要求1所述的方法,其特征在于,所述读取并连接待迁移的第一虚拟机的系统包括:通过下发virt-v2v命令连接所述第一虚拟机的esxi系统。7.根据权利要求1所述的方法,其特征在于,还包括系统类型的判断:判断迁移后的虚拟机是否为windows系统:是,则开机并临时添加一块virtio驱动的硬盘,将此virtio的磁盘驱动添加到注册表中;将迁移后的虚拟机关机,修改xml文件,将驱动格式修改为virtio,重新将迁移后的虚拟机开机系统盘更改为virtio驱动。8.根据权利要求7所述的方法,...

【专利技术属性】
技术研发人员:安轲彭中强
申请(专利权)人:顺丰科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1