CN108255574A - 一种虚拟机迁移方法及装置 - Google Patents

一种虚拟机迁移方法及装置 Download PDF

Info

Publication number
CN108255574A
CN108255574A CN201711264389.0A CN201711264389A CN108255574A CN 108255574 A CN108255574 A CN 108255574A CN 201711264389 A CN201711264389 A CN 201711264389A CN 108255574 A CN108255574 A CN 108255574A
Authority
CN
China
Prior art keywords
virtual machine
migration
virtio
disk
vmware
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201711264389.0A
Other languages
English (en)
Inventor
安轲
彭中强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SF Technology Co Ltd
SF Tech Co Ltd
Original Assignee
SF Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SF Technology Co Ltd filed Critical SF Technology Co Ltd
Priority to CN201711264389.0A priority Critical patent/CN108255574A/zh
Publication of CN108255574A publication Critical patent/CN108255574A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

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

Description

一种虚拟机迁移方法及装置
技术领域
本发明涉及虚拟机领域,尤其涉及一种虚拟机迁移方法及装置。
背景技术
随着云平台的大规模应用,企业在应用过程中存在对现有资源整合和重新规划使用的需求,现存的物理资源上的虚拟机资源需要进行迁移,以匹配现有的服务布局。但现有虚拟机迁移采用的基于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虚拟机的方案。通过kvm host直连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虚拟机的过程完成。

Claims (13)

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所述的方法,其特征在于,还包括:
下发注入命令到迁移后的虚拟机中,完成ip信息的注入。
9.一种用于虚拟机迁移的装置,其特征在于,所述装置包括:
准备单元,配置用于读取并连接待迁移的第一虚拟机的系统;
迁移单元,配置用于将所述第一虚拟机的磁盘文件从第一虚拟机所在HOST迁移至目标HOST;
格式转化单元,配置用于将获取到的raw格式的磁盘文件转化成qcow2格式。
10.根据权利要求9所述的装置,其特征在于,所述准备单元还包括:
脚本执行子单元,配置用于通过获取的第一虚拟机信息下载对应的脚本并执行;
信息输入子单元,配置用于将所述第一虚拟机信息输入任务列表中,用于迁移进程中读取并执行。
11.根据权利要求9所述的装置,其特征在于,还包括:
系统类型判断单元,配置用于判断迁移后的虚拟机是否为windows系统;
驱动修改准备单元,配置用于将windows系统开机并添加一块virtio驱动的硬盘,将此virtio的磁盘驱动临时添加到注册表中;
系统驱动修改单元,配置用于将迁移后的虚拟机关机,修改xml文件,将驱动格式修改为virtio,重新将迁移后的虚拟机开机系统盘更改为virtio驱动。
12.根据权利要求9所述的装置,其特征在于,还包括:
Ip注入单元,配置用于下发注入命令到迁移后的虚拟机中,完成ip信息的注入。
13.一种设备,包括处理器、存储器和显示器;其特征在于:
所述存储器包含可由所述处理器执行的指令以使得所述处理器执行:
读取并连接待迁移的第一虚拟机的系统;
将所述第一虚拟机的磁盘文件以raw格式从第一虚拟机所在系统迁移至目标虚拟机;
将获取的raw格式的磁盘文件转化成qcow2格式。
CN201711264389.0A 2017-12-05 2017-12-05 一种虚拟机迁移方法及装置 Pending CN108255574A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711264389.0A CN108255574A (zh) 2017-12-05 2017-12-05 一种虚拟机迁移方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711264389.0A CN108255574A (zh) 2017-12-05 2017-12-05 一种虚拟机迁移方法及装置

Publications (1)

Publication Number Publication Date
CN108255574A true CN108255574A (zh) 2018-07-06

Family

ID=62721353

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711264389.0A Pending CN108255574A (zh) 2017-12-05 2017-12-05 一种虚拟机迁移方法及装置

Country Status (1)

Country Link
CN (1) CN108255574A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109062670A (zh) * 2018-08-14 2018-12-21 郑州云海信息技术有限公司 一种虚拟机迁移方法和装置
CN109213570A (zh) * 2018-08-28 2019-01-15 郑州云海信息技术有限公司 一种虚拟机迁移方法、装置、设备及可读存储介质
CN109522088A (zh) * 2018-09-30 2019-03-26 华为技术有限公司 一种虚拟机迁移方法及装置
CN110532061A (zh) * 2019-08-13 2019-12-03 国云科技股份有限公司 一种在多云环境下迁移虚拟机的方法
CN110673930A (zh) * 2019-12-04 2020-01-10 深信服科技股份有限公司 虚拟机迁移方法、虚拟化设备、存储介质及装置
CN111176793A (zh) * 2019-12-31 2020-05-19 北京安码科技有限公司 实现虚拟机跨平台格式转换的方法、系统、电子设备及存储介质
WO2023246168A1 (zh) * 2022-06-23 2023-12-28 华为云计算技术有限公司 一种微服务迁移方法、装置及计算设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130268643A1 (en) * 2012-04-05 2013-10-10 Cisco Technology, Inc. System and method for migrating application virtual machines in a network environment
CN106406979A (zh) * 2016-09-04 2017-02-15 国云科技股份有限公司 XenServer平台虚拟机迁移至KVM虚拟化平台的方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130268643A1 (en) * 2012-04-05 2013-10-10 Cisco Technology, Inc. System and method for migrating application virtual machines in a network environment
CN106406979A (zh) * 2016-09-04 2017-02-15 国云科技股份有限公司 XenServer平台虚拟机迁移至KVM虚拟化平台的方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109062670A (zh) * 2018-08-14 2018-12-21 郑州云海信息技术有限公司 一种虚拟机迁移方法和装置
CN109213570A (zh) * 2018-08-28 2019-01-15 郑州云海信息技术有限公司 一种虚拟机迁移方法、装置、设备及可读存储介质
CN109522088A (zh) * 2018-09-30 2019-03-26 华为技术有限公司 一种虚拟机迁移方法及装置
US12056519B2 (en) 2018-09-30 2024-08-06 Huawei Cloud Computing Technologies Co., Ltd. Virtual machine migration method and apparatus
CN110532061A (zh) * 2019-08-13 2019-12-03 国云科技股份有限公司 一种在多云环境下迁移虚拟机的方法
CN110673930A (zh) * 2019-12-04 2020-01-10 深信服科技股份有限公司 虚拟机迁移方法、虚拟化设备、存储介质及装置
CN110673930B (zh) * 2019-12-04 2020-07-17 深信服科技股份有限公司 虚拟机迁移方法、虚拟化设备、存储介质及装置
CN111176793A (zh) * 2019-12-31 2020-05-19 北京安码科技有限公司 实现虚拟机跨平台格式转换的方法、系统、电子设备及存储介质
WO2023246168A1 (zh) * 2022-06-23 2023-12-28 华为云计算技术有限公司 一种微服务迁移方法、装置及计算设备

Similar Documents

Publication Publication Date Title
CN108255574A (zh) 一种虚拟机迁移方法及装置
US10089135B2 (en) Expediting the provisioning of virtual machines based on cached repeated portions of a template
EP3762826B1 (en) Live migration of virtual machines in distributed computing systems
US9361147B2 (en) Guest customization
CN102402446B (zh) 应用软件的安装方法和应用软件的安装装置
US9229705B2 (en) In-band hypervisor-managed firmware updates
US10216585B2 (en) Enabling disk image operations in conjunction with snapshot locking
US20110246988A1 (en) Hypervisor for starting a virtual machine
US9588793B2 (en) Creating new virtual machines based on post-boot virtual machine snapshots
US20150363181A1 (en) Software deployment in a distributed virtual machine environment
US20110208929A1 (en) In-place virtualization during operating system installation
US20130132950A1 (en) Automation of virtual machine installation by splitting an installation into a minimal installation and customization
US10467035B2 (en) Performing configuration and operating system identification for virtual machine images
CN105094964A (zh) 虚拟机迁移方法及系统
US10838751B1 (en) Virtual machine configuration
CN105573830A (zh) 一种虚拟机迁移方法
US20210294653A1 (en) Apparatus and method of securely and efficiently interfacing with a cloud computing service
CN107678831A (zh) 一种实现跨虚拟化平台间迁移的v2v方法
CN110737467A (zh) 一种业务迁移的方法和设备
CN104182257A (zh) 应用软件的安装方法和应用软件的安装装置
WO2013083547A1 (en) Method and system for creating a virtual appliance
CN114443221A (zh) 基于buildah构建跨平台容器镜像的方法、系统及电子设备
CN104503823A (zh) 基于oem操作系统的p2v迁移及配置方法
US20180203726A1 (en) Virtual machine migration method and apparatus
CN111459643A (zh) 一种主机迁移方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180706