一种异构虚拟化平台的虚拟机自动化迁移方法及系统与流程

文档序号:29039314发布日期:2022-02-25 20:09阅读:240来源:国知局
一种异构虚拟化平台的虚拟机自动化迁移方法及系统与流程

1.本发明涉及虚拟机迁移技术领域,具体地说是一种异构虚拟化平台的虚拟机自动化迁移方法及系统。


背景技术:

2.随着虚拟化技术的日渐成熟,出现了很多成熟的商业和开源虚拟化技术,其中商业版本以vmware为代表,成熟而且稳定。开源版本则以kvm为代表,然而随着iaas市场的发展,借助openstack这个开源界排名第二的软件,把kvm虚拟化技术带到了一个风口,成为开源界的佼佼者,在功能和稳定性都已经达到生产级的标准。随着云计算发展风起云涌,各大厂商纷纷投入资金和研发力量基于kvm或openstack开发自有的云平台。
3.由于历史遗留等问题导致在企业内部可能存在多种虚拟化技术(vmware、xen等),这就衍生了一个新的需求虚拟机的v2v(virtual-to-virtual)迁移。由于不同虚拟机管理平台底层虚拟化技术和api接口的不同,使虚拟机跨平台迁移困难重重,迁移成功率大大降低。
4.常见的v2v虚拟机迁移的方式主要分为两种,静态迁移(离线迁移)和动态迁移(在线迁移)。静态迁移,迁移之前首先将虚拟机关机,拷贝虚拟机镜像到目的宿主机,然后在目的宿主机重新启动虚拟机。静态迁移,缺点是迁移过程需要虚拟机停机,影响业务运行使用。而动态迁移,虚拟机迁移过程只需短暂的停机时间,不会导致业务中断;静态迁移优点是具有较强的兼容性,可以实现不同平台虚拟机之间的迁移。
5.相同平台虚拟机之间由于有着相同的实现技术和api接口,可以较为容易的实现静态迁移和动态迁移。但是对于跨平台虚拟机迁移,由于底层实现技术不同,实现起来难度很大。类似kvm自带了一些开源工具,比如,virt-v2v可以实现其他虚拟机平台到kvm虚拟化的迁移,但是迁移成功率低,并且迁移过程操作复杂,需要大量的人工参与。针对中大规模的迁移,将会限制使用,同时带来大量的手工操作和重复操作。


技术实现要素:

6.本发明的目的是针对以上不足,提供一种异构虚拟化平台的虚拟机自动化迁移方法,用于实现不同虚拟化平台的虚拟机的迁移操作,特别是vmware平台到kvm平台的迁移,还提供一种用于实现上述方法的异构虚拟化平台的虚拟机自动化迁移系统。
7.本发明所采用技术方案是:
8.一种异构虚拟化平台的虚拟机自动化迁移方法,包括如下步骤:
9.s1、从源虚拟化平台下载虚拟机的镜像文件;
10.s2、将所下载的虚拟机的镜像文件转换至目标虚拟化平台所支持的磁盘镜像格式;
11.s3、将转换磁盘格式后的磁盘镜像文件上传至目标虚拟化平台进行虚拟机重建。
12.作为对本发明方法的进一步的优化,本发明的步骤s1中,从源虚拟化平台下载虚
拟机的镜像文件的过程之前,需要执行校验过程,所述校验过程包括:
13.收集待转虚拟机的系统相关配置信息以及进行初步的系统检查;
14.从源虚拟化平台的获取待转虚拟机的配置信息,将从虚拟化平台上收集的配置信息与直接从待转虚拟机收集系统配置信息进行比对校验,且所收集的配置信息包括处理器信息、内存信息、磁盘信息和网络信息。
15.作为对本发明方法的进一步的优化,本发明的步骤s1中,在获取虚拟机的配置信息、从源虚拟机平台下载虚拟机的镜像文件的过程以及进行虚拟机重建时之前以及均需要配置相应的接口驱动,配置相应接口驱动的过程包括:
16.配置驱动插件,所述驱动插件集成了针对各虚拟化平台的接口驱动,并这些接口驱动设置对应关系表,在调用驱动之前先通过对应关系表查找相应驱动;
17.在相应的源虚拟机管理平台上执行相应过程时,从驱动插件中调取相应接口驱动。
18.作为对本发明方法的进一步的优化,本发明的步骤s1中,在对虚拟机进行初步的系统检查的过程中,所进行的系统检查包括但不限于虚拟机重建在目标虚拟化平台上的硬件驱动支持和系统缺陷,当存在缺失相应的硬件驱动时和/或系统缺陷时,下发安装virtio驱动和/或进行系统修复。
19.作为对本发明方法的进一步的优化,本发明的步骤s2中,通过qemu-img工具对虚拟机镜像的磁盘镜像格式进行转换。
20.本发明还提供一种异构虚拟化平台的虚拟机自动化迁移系统,包括控制端和代理端,所述控制端单独布置,所述代理端布置在待转虚拟机的系统中,其中:
21.所述代理端用于获取待转虚拟机的配置信息,并将在所获取的配置信息回传给控制端;
22.所述控制端用于从源虚拟化平台上获取虚拟机的配置信息,并将所获取的配置信息与代理端上传的配置信息进行对比,校验是否相同;
23.校验通过后,所述控制端用于从源虚拟化平台下载待转虚拟机镜像,并将待转虚拟机镜像的磁盘格式转换为目标虚拟化平台可以支持的格式;
24.控制端用于根据所收集的虚拟机的配置信息将转换格式后虚拟机镜像在目标虚拟化平台进行重建。
25.作为对本发明系统的进一步优化,本发明所述控制端设置有驱动模块,所述驱动模块集成有各个虚拟化平台的接口驱动,且通过设置一张虚拟机管理平台和对应接口驱动的对应关系表,在调用接口驱动之前优先加载对应关系表找到对应接口驱动。
26.作为对本发明系统的进一步优化,本发明在代理端获取待转虚拟机的配置信息时,并对虚拟机进行系统检查,所述系统检查包括但不限于虚拟机到目标虚拟化平台上的硬件驱动支持和系统缺陷,当存在缺失相应的硬件驱动时和/或系统缺陷时,所述代理端向控制端上报信息,所述控制端下发virtio驱动和/或系统修复工作。
27.作为对本发明系统的进一步优化,本发明所述控制端通过qemu-img工具对虚拟机镜像的磁盘镜像格式进行转换。
28.作为对本发明系统的进一步优化,本发明所述控制端与代理端之间、控制端与原虚拟化平台之间、控制端与目标虚拟化平台之间均需要建立tcp通信,并且通过心跳检测保
证始终处于连通状态。
29.本发明具有以下优点:
30.1、本发明的虚拟机迁移方法和系统从源虚拟化平台提取虚拟机的磁盘镜像文件,并对该磁盘镜像文件的磁盘格式转换成目标虚拟化平台所支持的磁盘镜像格式,最后再通过转换格式后的磁盘镜像文件和所收集的虚拟机的配置信息进行虚拟机重建,确保了虚拟机迁移的成功率;
31.2、本发明通过设置驱动插件,能够在系统自动运行的过程中,自动完成不同虚拟化平台的驱动安装,可支持众多的虚拟化平台,降低人员的操作维护;
32.3、本发明的系统基于可扩展设计架构,无需对原有系统进行改动即可支持寻的虚拟话平台;
33.4、本发明的在下载系统镜像之前,还会对虚拟机进行系统检查,包括但不限于虚拟机在目标虚拟化平台的硬件驱动的支持和系统缺陷,若缺失硬件驱动,则在进行安装相应驱动后,再下载虚拟机系统镜像,进一步确保虚拟机迁移的成功率。
附图说明
34.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
35.下面结合附图对本发明进一步说明:
36.图1为本发明的系统的整体结构图;
37.图2为本发明的组成部分的网络访问图;
38.图3为本发明的方法的流程示意图。
具体实施方式
39.下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互结合。
40.需要理解的是,在本发明实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。在本发明实施例中的“多个”,是指两个或两个以上。
41.本发明实施例中的属于“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,单独存在b,同时存在a和b这三种情况。另外,本文中字符“/”一般表示前后关联对象是一种“或”关系。
42.本实施例提供一种异构虚拟化平台的虚拟机自动化迁移方法,如图3所示,包括如下步骤:
43.s1、从源虚拟化平台下载虚拟机的镜像文件;
44.s2、将所下载的虚拟机的镜像文件转换至目标虚拟化平台所支持的磁盘镜像格式;
45.s3、将转换磁盘格式后的磁盘镜像文件上传至目标虚拟化平台进行虚拟机重建。
46.本实施例在与虚拟机进行数据交互时,不同的虚拟化平台的接口形式也不同,接口标准也不同,针对源虚拟化平台的接口设计主要有两种:一个是虚拟机配置信息获取接口;另一个为虚拟机磁盘镜像获取接口,针对每个源虚拟机管理平台,以上两个接口的实现方式可能是不同的,以虚拟机磁盘镜像获取接口为例,如果源虚拟机管理平台采用vmware,可以基于http协议获取磁盘镜像,如果源虚拟机管理平台采用其它管理平台,就需要依据其采用的管理方式,实现虚拟机磁盘镜像的获取。而针对目标虚拟化平台,其主要功能就是将待转虚拟机磁盘镜像和配置规格信息在目标虚拟化平台进行虚拟机重建,因此需要设计一个重建虚拟机接口,因为不同的目标虚拟化平台重建虚拟机的方式也会不同。
47.因此针对不同虚拟化平台,本方法通过基于以上标准接口设置一个驱动插件,该驱动插件集成了针对各虚拟化平台的接口驱动,并且针对这些这些接口驱动设置一张虚拟化平台与对应驱动插件的对应关系表,在调用驱动之前先通过对应关系表查找相应接口驱动,此对应关系表从配置文件中加载,并且在调用驱动插件之前重新加载配置文件的对应关系表,从而保证对应关系表是最新的。
48.本实施例的步骤s1中,在完全接口驱动的安装后,需要进行一些准备工作,所述准备工作包括对虚拟机系统的校验以及对虚拟机系统的初步检查,所述对虚拟机系统的校验过程包括:
49.收集待转虚拟机的系统相关配置信息;
50.从源虚拟化平台的获取待转虚拟机的配置信息,将从虚拟化平台上收集的配置信息与直接从待转虚拟机收集系统配置信息进行比对校验,且所收集的配置信息包括处理器信息、内存信息、磁盘信息和网络信息,这些所收集的信息也做诶后面的虚拟机重建工作的依据。
51.对虚拟机进行初步的系统检查包括:
52.对虚拟机的系统在收集信息时,同时对虚拟机的系统进行检查,所进行的系统检查包括但不限于虚拟机重建在目标虚拟化平台上的硬件驱动支持和系统缺陷,当存在缺失相应的硬件驱动时和/或系统缺陷时,下发安装virtio驱动和/或进行系统修复,比如将虚拟机从vmware管理平台迁移到基于kvm的虚拟机管理平台时,对于虚拟机在迁移后kvm虚拟机管理平台后的磁盘驱动、网卡驱动等均需要在制备虚拟机镜像文件时,进行配置完成,即在进行系统检查时,对所缺失的硬件驱动进行安装,并完成对系统缺陷的修复。
53.由于整个过程中需要网络访问的环节较多,具体的访问策略参考图2网络访问示意图进行网络策略的调试,通过网络协议分别与源虚拟化平台与目标虚拟化平台之间建立链接,并通过心跳检测来检测链接的通断。
54.如图1所示,本实施例还提供一种异构虚拟化平台的虚拟机自动化迁移系统,包括控制端和代理端,所述控制端单独布置,所述代理端布置在待转虚拟机的系统中,其中:
55.所述代理端用于获取待转虚拟机的配置信息,并将在所获取的配置信息回传给控制端;
56.所述控制端用于从源虚拟化平台上获取虚拟机的配置信息,并将所获取的配置信息与代理端上传的配置信息进行对比,校验是否相同;
57.校验通过后,所述控制端用于从源虚拟化平台下载待转虚拟机镜像,并将待转虚
拟机镜像的磁盘格式转换为目标虚拟化平台可以支持的格式;
58.控制端用于根据所收集的虚拟机的配置信息(project、用户、cpu、内存、网络、磁盘)将转换格式后虚拟机镜像在目标虚拟化平台进行重建。
59.本实施例在与虚拟机进行数据交互时,不同的虚拟化平台的接口形式也不同,接口标准也不同,针对源虚拟化平台的接口设计主要有两种:一个是虚拟机配置信息获取接口;另一个为虚拟机磁盘镜像获取接口,针对每个源虚拟机管理平台,以上两个接口的实现方式可能是不同的,以虚拟机磁盘镜像获取接口为例,如果源虚拟机管理平台采用vmware,可以基于http协议获取磁盘镜像,如果源虚拟机管理平台采用其它管理平台,就需要依据其采用的管理方式,实现虚拟机磁盘镜像的获取。而针对目标虚拟化平台,其主要功能就是将待转虚拟机磁盘镜像和配置规格信息在目标虚拟化平台进行虚拟机重建,因此需要设计一个重建虚拟机接口,因为不同的目标虚拟化平台重建虚拟机的方式也会不同。因此针对不同虚拟化平台,本系统的控制端通过基于以上标准接口设置一个驱动插件,该驱动插件集成了针对各虚拟化平台的接口驱动,并且针对这些这些接口驱动设置一张虚拟化平台与对应驱动插件的对应关系表,在调用驱动之前先通过对应关系表查找相应接口驱动,此对应关系表从配置文件中加载,并且在调用驱动插件之前重新加载配置文件的对应关系表,从而保证对应关系表是最新的。
60.本实施例的代理端在获取待转虚拟机的配置信息时,并对虚拟机进行系统检查,所述系统检查包括但不限于虚拟机到目标虚拟化平台上的硬件驱动支持和系统缺陷,当存在缺失相应的硬件驱动时和/或系统缺陷时,所述代理端向控制端上报信息,所述控制端下发virtio驱动和/或系统修复工作,保证虚拟机在迁移重建以后在目标虚拟化平台的正常运行。
61.本实施的系统的控制端设置有转换插件模块,主要负责将待迁移虚拟机磁盘镜像转换为目标虚拟化平台支撑的磁盘经下个格式以及连接源虚拟化平台获取配置信息,需要说明的是,目标虚拟化平台支持的吸盘镜像格式由平台底层hypervisors所决定。依然以将虚拟机从vmware管理平台迁移到基于kvm的虚拟机管理平台进行举例,目标磁盘镜像格式主要是raw、qcow2等kvm支持的磁盘镜像格式,磁盘镜像格式转换采用qemu-img工具来实现,如果有其他的hypervisors的话,可以采用载入插件的方式完成适配即可。
62.由于整个过程中需要网络访问的环节较多,具体的访问策略参考图2网络访问示意图进行网络策略的调试,server端既需要与agent建立tcp通信也需要与源虚拟机所归属的虚拟化平台建立网络通信同时也要保证server端与目标虚拟化平台建立网络通信,至此在迁移之前需要保证这些网络的联通,否则会到导致迁移失败。
63.应当说明的是,在进行虚拟机磁盘镜像格式转化以及驱动安装的过程中,控制端均需要获取原虚拟化平台的平台类型信息和目标虚拟化平台的平台类型信息,并根据获取的平台类型信息进行利用,上述中随未对该过程进行说明,但是该过程应当为本领域技术人员的公知常识。
64.以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1