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

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

Info

Publication number
CN108255575A
CN108255575A CN201711273661.1A CN201711273661A CN108255575A CN 108255575 A CN108255575 A CN 108255575A CN 201711273661 A CN201711273661 A CN 201711273661A CN 108255575 A CN108255575 A CN 108255575A
Authority
CN
China
Prior art keywords
virtual machine
migration
target physical
data
magnetic disk
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
CN201711273661.1A
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 CN201711273661.1A priority Critical patent/CN108255575A/zh
Publication of CN108255575A publication Critical patent/CN108255575A/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

一种虚拟机迁移方法及工具,包括:获取目标虚拟机信息,并判断目标虚拟机是否存在,若目标虚拟机存在,则导出虚拟机磁盘数据,并在云平台的控制节点和目标物理机上分别开启nc,传输待迁移虚拟机的磁盘数据;若目标虚拟机不存在,则迁移失败。此外,本申请在虚拟机迁移过程中还针对目标host上的网络带宽情况,动态的进行网络限速;迁移后的虚拟机的配置文件保持了和目标平台自建vm的配置文件一致性,便于迁移后的统一管理;为虚拟机安装虚拟机安装virtio驱动。实现了opens tack平台使用ceph对象存储的情况下,虚拟机一键式迁移到其他基于kvm的虚拟化平台。

Description

一种虚拟机迁移方法及装置
技术领域
本发明涉及云计算平台管理技术领域,具体地,涉及一种虚拟机迁移方法及装置。
背景技术
如今,云计算技术越来越广泛地得到使用。Openstack是当下最热门的开源云计算平台,它集成了多种虚拟化(包含KVM、VMware、Hyper-V、Xen)的管理能力。现有Openstack平台使用的存储都是ceph对象存储,但目前还没有针对openstack平台使用ceph等对象存储的场景下,如何一键式迁移openstack中的虚拟机到其他基于kvm虚拟机的虚拟化平台中的成熟方案。
发明内容
鉴于现有技术的上述缺陷或不足,期望提供一种能够一键式迁移openstack中的虚拟机到其他基于kvm虚拟机的虚拟化平台中的成熟方案。
第一方面,本申请实施例提供了一种虚拟机迁移方法,包括:将待迁移的第一虚拟机的磁盘数据从openstack平台传输至目标物理机;在所述目标物理机上生成所述磁盘数据的配置文件,并在所述目标物理机上生成所述第二虚拟机。
第二方面,本申请实施例提供了一种用于虚拟机迁移的装置,包括:数据传输单元,配置用于将所述磁盘数据从所述openstack平台传输至目标物理机;配置注册单元,配置用于在所述目标物理机上生成所述磁盘数据的配置文件,并在所述目标物理机上注册为第二虚拟机。
第三方面,本申请实施例提供了一种用于虚拟机迁移设备,包括:包括处理器、存储器和显示器;所述存储器包含可由所述处理器执行的指令以使得所述处理器执行:将待迁移的第一虚拟机的磁盘数据从openstack平台传输至目标物理机;在所述目标物理机上生成所述磁盘数据的配置文件,并在所述目标物理机上生成所述第二虚拟机。
本发明实施例提供的虚拟机迁移方案,通过ansible连接openstack平台的控制节点下发命令,开启控制节点和目标物理机上的nc后传输待迁移虚拟机的磁盘数据,实现了openstack平台使用ceph对象存储的情况下,虚拟机一键式迁移到其他基于kvm的虚拟化平台;并在迁移过程中针对目标host上的网络带宽情况,动态的进行网络限速;迁移后的虚拟机的配置文件保持了和目标平台自建vm的配置文件一致性,便于迁移后的统一管理。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出了本申请实施例的虚拟机一键迁移的示例性流程图;
图2示出了本申请实施例的网络带宽限速的示例性流程图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
诚如背景技术所述的,目前还没有针对openstack平台使用ceph对象存储的情况下,虚拟机一键式迁移到其他基于kvm的虚拟化平台上的成熟方案。基于此,本发明提供了一种虚拟机一键式迁移方法,获取目标虚拟机信息,并判断目标虚拟机是否存在,若目标虚拟机存在,则导出虚拟机磁盘数据,并在云平台的控制节点和目标物理机上分别开启nc(开源的基于网络的文件传输工具),传输待迁移虚拟机的磁盘数据;若目标虚拟机不存在,则迁移失败。
本申请提供的具体虚拟机一键式迁移方法包括以下步骤:
1)程序通过ansible连接openstack平台的控制节点下发命令来查询待迁移的vm(虚拟机)。然后openstack平台的控制节点上我们部署了上图中的自建工具,该自建工具是将openstack的命令行操作和openstack上常用到的查询db表语句的结合而制作成一个shell脚本工具,通过该自建工具查询openstack的db(数据库),并返回vm的信息。通过ansible拿到的返回信息来判断vm是否存在及相关信息;
2)程序通过ansible连接openstack平台的控制节点下发命令,此时是调用openstack控制节点上我们已经准备好的脚本,此脚本会首先访问DB获取待迁移vm的系统盘和数据盘,然后通过rbd命令导出磁盘文件到指定位置;
3)程序通过ansible在openstack的控制节点和目标host上分别开启nc,用来传输待迁移vm的磁盘数据,迁移完成后则将之前配置的限速取消;待磁盘数据全部拷贝到目标host后,程序会根据目标host上的磁盘命名规则来重新命名迁移后的磁盘文件,并生产新的xml文件;在目标host上注册新虚拟机;迁移后虚拟机在目标host上完成开机。
本申请实施例提供的虚拟机驱动安装方法,具体包括:
为openstack平台的vm安装virtio驱动:这一步先部署一个一键准备的脚本,用户只需下载此脚本,并使用root权限执行即可(windows则为administrator权限)
本申请实施例提供的虚拟机迁移过程中的网络限速方法,具体包括:
首先程序会通过ansible连接到目标HOST主机上执行事先已准备好的脚本来获取当前host的空闲网络带宽,然后计算出迁移用的带宽大小。然后再通过ansible连接到openstack的控制节点上,通过tc(linux进行流量控制的工具)来配置指定带宽的限速。
本申请实施例提供的ip注入方法,具体包括:
因openstack平台一般都是DHCP模式,因此迁移后我们将ip改成静态模式。通过修改qemu-guest-agent源码重新编译,使qemu-guest-agent能够在host上直接注入任意命令到vm中执行。通过改进的qemu-guest-agent下发vm的ip注入命令来完成ip注入。至此openstack+ceph环境的vm到kvm虚拟机平台的导出迁移完成。

Claims (13)

1.一种虚拟机迁移方法,其特征在于,包括以下步骤:
将待迁移的第一虚拟机的磁盘数据从openstack平台传输至目标物理机;
在所述目标物理机上生成所述磁盘数据的配置文件,并在所述目标物理机上生成所述第二虚拟机。
2.根据权利要求1所述的虚拟机迁移方法,其特征在于,所述方法还包括:
获取所述第一虚拟机信息,并判断所述第一虚拟机是否存在。
3.根据权利要求1所述的虚拟机迁移方法,其特征在于,所述方法还包括:
在所述openstack平台上配置脚本以供安装virtio驱动。
4.根据权利要求1所述的虚拟机迁移方法,其特征在于,所述方法还包括:
在openstack平台上导出第一虚拟机的磁盘数据。
5.根据权利要求1所述的虚拟机迁移方法,其特征在于,所述方法还包括:
获取目标物理机的空闲网络宽带,并计算出迁移用的带宽;
调用流量控制工具配置指定带宽的限速。
6.根据权利要求1所述的虚拟机迁移方法,其特征在于,所述方法还包括:
目标物理机根据磁盘命名规则重新命名迁移后的磁盘文件,并产生新的xml文件。
7.一种用于虚拟机迁移的装置,其特征在于,所述装置包括:
数据传输单元,配置用于将所述磁盘数据从所述openstack平台传输至目标物理机;
配置注册单元,配置用于在所述目标物理机上生成所述磁盘数据的配置文件,并在所述目标物理机上注册为第二虚拟机。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
信息获取单元,配置用于获取所述第一虚拟机信息,并判断第一虚拟机是否存在。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:
驱动安装单元,配置用于在所述openstack平台上配置脚本以供一键安装virtio驱动。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:
数据导出单元,配置用于在openstack平台上导出第一虚拟机的磁盘数据。
11.根据权利要求7所述的装置,其特征在于,所述装置还包括:
带宽限速单元,配置用于根据算出的迁移用的带宽配置指定带宽的限速。
12.根据权利要求7所述的装置,其特征在于,所述配置注册单元还包括:
文件配置子单元,配置用于根据目标物理机磁盘命名规则重新命名迁移以后的磁盘文件,并产生新的xml文件。
13.一种设备,包括处理器、存储器和显示器;其特征在于:
所述存储器包含可由所述处理器执行的指令以使得所述处理器执行:
将所述磁盘数据从所述openstack平台传输至目标物理机;
在所述目标物理机上生成所述磁盘数据的配置文件,并在所述目标物理机上生成所述第二虚拟机。
CN201711273661.1A 2017-12-06 2017-12-06 一种虚拟机迁移方法及装置 Pending CN108255575A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711273661.1A CN108255575A (zh) 2017-12-06 2017-12-06 一种虚拟机迁移方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711273661.1A CN108255575A (zh) 2017-12-06 2017-12-06 一种虚拟机迁移方法及装置

Publications (1)

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

Family

ID=62721050

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711273661.1A Pending CN108255575A (zh) 2017-12-06 2017-12-06 一种虚拟机迁移方法及装置

Country Status (1)

Country Link
CN (1) CN108255575A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109388478A (zh) * 2018-11-01 2019-02-26 郑州云海信息技术有限公司 用于OpenStack环境中迁移虚拟机的方法和装置
CN112256397A (zh) * 2020-10-28 2021-01-22 上海英方软件股份有限公司 一种虚机跨平台迁移方法及系统

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521038A (zh) * 2011-12-06 2012-06-27 北京航空航天大学 基于分布式文件系统的虚拟机迁移方法和装置
CN105260226A (zh) * 2015-09-23 2016-01-20 浙江网新恒天软件有限公司 一种基于云平台自动迁移虚拟机的方法
CN105573830A (zh) * 2014-10-09 2016-05-11 中国银联股份有限公司 一种虚拟机迁移方法
CN105656969A (zh) * 2014-11-24 2016-06-08 中兴通讯股份有限公司 一种虚拟机迁移决策方法及装置
CN106406979A (zh) * 2016-09-04 2017-02-15 国云科技股份有限公司 XenServer平台虚拟机迁移至KVM虚拟化平台的方法
CN106775928A (zh) * 2016-11-25 2017-05-31 国家电网公司 一种异构云平台间的虚拟机自动迁移系统及方法
CN106775993A (zh) * 2017-02-15 2017-05-31 郑州云海信息技术有限公司 一种物理机迁移至云计算平台的方法及系统
CN106874111A (zh) * 2017-01-11 2017-06-20 深圳证券通信有限公司 一种云计算平台的虚拟机高可用性管理方法
CN107102890A (zh) * 2017-07-12 2017-08-29 郑州云海信息技术有限公司 一种虚拟机的迁移方法及迁移装置
CN107124473A (zh) * 2017-06-26 2017-09-01 网宿科技股份有限公司 云平台的构建方法及云平台

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521038A (zh) * 2011-12-06 2012-06-27 北京航空航天大学 基于分布式文件系统的虚拟机迁移方法和装置
CN105573830A (zh) * 2014-10-09 2016-05-11 中国银联股份有限公司 一种虚拟机迁移方法
CN105656969A (zh) * 2014-11-24 2016-06-08 中兴通讯股份有限公司 一种虚拟机迁移决策方法及装置
CN105260226A (zh) * 2015-09-23 2016-01-20 浙江网新恒天软件有限公司 一种基于云平台自动迁移虚拟机的方法
CN106406979A (zh) * 2016-09-04 2017-02-15 国云科技股份有限公司 XenServer平台虚拟机迁移至KVM虚拟化平台的方法
CN106775928A (zh) * 2016-11-25 2017-05-31 国家电网公司 一种异构云平台间的虚拟机自动迁移系统及方法
CN106874111A (zh) * 2017-01-11 2017-06-20 深圳证券通信有限公司 一种云计算平台的虚拟机高可用性管理方法
CN106775993A (zh) * 2017-02-15 2017-05-31 郑州云海信息技术有限公司 一种物理机迁移至云计算平台的方法及系统
CN107124473A (zh) * 2017-06-26 2017-09-01 网宿科技股份有限公司 云平台的构建方法及云平台
CN107102890A (zh) * 2017-07-12 2017-08-29 郑州云海信息技术有限公司 一种虚拟机的迁移方法及迁移装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109388478A (zh) * 2018-11-01 2019-02-26 郑州云海信息技术有限公司 用于OpenStack环境中迁移虚拟机的方法和装置
CN112256397A (zh) * 2020-10-28 2021-01-22 上海英方软件股份有限公司 一种虚机跨平台迁移方法及系统

Similar Documents

Publication Publication Date Title
US11093268B2 (en) Portable aggregated information calculation and injection for application containers
KR101793306B1 (ko) 가상 애플리케이션 확장 포인트
US20200067796A1 (en) Managing service deployment
US10747585B2 (en) Methods and apparatus to perform data migration in a distributed environment
US10824453B2 (en) Hypervisor-based just-in-time compilation
CN106201566B (zh) 利博伟特软件热升级方法及设备
US12045642B2 (en) Virtual machine management method and apparatus for cloud platform
US20200192689A1 (en) Container migration in computing systems
CN103856343B (zh) 配置虚拟机网络信息的方法及系统
EP2765508A1 (en) Installation method and installation device for application software
US20090210869A1 (en) Advanced packaging and deployment of virtual appliances
CN105094964B (zh) 虚拟机迁移方法及系统
US10838751B1 (en) Virtual machine configuration
CN110347483B (zh) 物理机到虚拟机迁移方法、装置及存储介质
US10884764B1 (en) Optimizing managed runtime applications for serverless environments
EP1892623A1 (en) Method and apparatus for operating enterprise software from a detachable storage device
US20220385532A1 (en) Adding host systems to existing containerized clusters
US10152338B2 (en) Marking external sibling caller routines
CN112000439A (zh) 一种实现云原生应用管理虚拟机的方法
CN108255575A (zh) 一种虚拟机迁移方法及装置
CN102789392A (zh) 一种电力系统分布式平台构建方法
CN105447382A (zh) 一种基于沙箱的软件注册表重定向方法及系统
CN105867894A (zh) 开发环境自动创建方法及系统
CN105843881A (zh) 一种图片处理url映射方法和装置
US11847611B2 (en) Orchestrating and automating product deployment flow and lifecycle management

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