CN105589746A - 虚拟机迁移记录管理方法及系统 - Google Patents

虚拟机迁移记录管理方法及系统 Download PDF

Info

Publication number
CN105589746A
CN105589746A CN201511010530.5A CN201511010530A CN105589746A CN 105589746 A CN105589746 A CN 105589746A CN 201511010530 A CN201511010530 A CN 201511010530A CN 105589746 A CN105589746 A CN 105589746A
Authority
CN
China
Prior art keywords
virtual machine
migration
information
database
machine
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.)
Granted
Application number
CN201511010530.5A
Other languages
English (en)
Other versions
CN105589746B (zh
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.)
China Unionpay Co Ltd
Original Assignee
China Unionpay 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 China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN201511010530.5A priority Critical patent/CN105589746B/zh
Publication of CN105589746A publication Critical patent/CN105589746A/zh
Application granted granted Critical
Publication of CN105589746B publication Critical patent/CN105589746B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data

Abstract

本发明提供虚拟机迁移记录管理方法,其包括:a)要迁移的虚拟机发送迁移请求给管理机;b)管理机解析该虚拟请求,以获得虚拟机迁移相关的信息;c)管理机依据所解析的该虚拟机迁移相关的信息,检查第二数据库中是否有与该虚拟机迁移相关的信息所涉及的虚拟机与物理机的信息;d)在步骤c的检查结果为缺少部分或全部信息的情况下,管理机自第一数据库获取所缺信息,并将所获取的信息写入第二数据库;以及e)如果步骤c中检查结果为不缺少或在步骤d中管理机将所获取的信息写入第二数据库后,在第二数据库中生成要迁移的虚拟机的迁移记录。还提供虚拟机迁移记录管理系统。

Description

虚拟机迁移记录管理方法及系统
技术领域
本发明涉及虚拟机管理技术,更为具体地,涉及虚拟机迁移记录管理技术。
背景技术
在云计算背景下,尤其是私有云,云运维人员希望能够对租户系统或是应用所在的虚拟机的进行强监控,但发生物理机故障会产生人为或是自动的虚拟机迁移,在多次迁移后,虚拟机的分布会变得杂乱无章。
每次虚拟机发生迁移操作时,都会记录log,运维人员可通过log来追溯虚拟机迁移的历史,但这种方式需大量人力和时间,且容易发生疏漏。
还有一种方式是在传统关系数据库中记录虚拟机迁移过程。这种方式中,传统的关系数据库信息冗余度大,不直观,对于复杂的查询需求实现困难。
发明内容
有鉴于此,本发明提供虚拟机迁移记录管理方法,其包括:a)要迁移的虚拟机发送迁移请求给管理机;b)管理机解析该虚拟请求,以获得虚拟机迁移相关的信息;c)管理机依据所解析的该虚拟机迁移相关的信息,检查第二数据库中是否有与该虚拟机迁移相关的信息所涉及的虚拟机与物理机的信息;d)在步骤c的检查结果为缺少部分或全部信息的情况下,管理机自第一数据库获取所缺信息,并将所获取的信息写入第二数据库;以及e)如果步骤c中检查结果为不缺少或在步骤d中管理机将所获取的信息写入第二数据库后,在第二数据库中生成要迁移的虚拟机的迁移记录。
根据本发明示例的虚拟机迁移记录管理方法,其中,所述虚拟机迁移相关的信息至少包括该要迁移的虚拟机的虚拟机ID、原物理机ID、目的物理机ID以及当前的系统时间。
根据本发明示例的虚拟机迁移记录管理方法,其中,所述第一数据库是虚拟机创建时写入数据的数据库。
根据本发明示例的虚拟机迁移记录管理方法,其中,所述第一数据库是NOVA数据库。
根据本发明示例的虚拟机迁移记录管理方法,其中,所述第二数据库是图形数据库Neo4j。
本发明还提供虚拟机迁移记录管理系统,该系统包括:设置在各虚拟机出的请求发送单元,其用于在虚拟机要迁移时发送迁移请求;设置在管理机的接收处理单元,其用于接收迁移请求并解析该请求以获得虚拟机迁移相关的信息;设置在管理机的信息检查单元,其用于依据所解析的该虚拟机迁移相关的信息,检查第二数据库中是否有与该虚拟机迁移相关的信息所涉及的虚拟机与物理机的信息;设置在管理机的信息获取单元,其用于在信息检查单元的检查结果为缺少部分或全部信息的情况下,管理机自第一数据库获取所缺信息,并将所获取的信息写入第二数据库;设置在管理机的迁移记录生成单元,其用于在信息检查单元检查结果为不缺少或信息获取单元将所获取的信息写入第二数据库后,生在第二数据库中生成要迁移的虚拟机的迁移记录。
根据本发明示例的虚拟机迁移记录管理系统,其中,所述第一数据库是虚拟机创建时写入数据的数据库。
根据本发明示例的虚拟机迁移记录管理系统,其中,所述第一数据库是NOVA数据库。
根据本发明示例的虚拟机迁移记录管理系统,其中,所述第二数据库是图形数据库Neo4j。
采用本发明示例的虚拟机迁移记录管理系统或执行根据本发明示例的虚拟机迁移记录管理方法,可自动记录虚拟机迁移历史。
附图说明
图1是根据本发明一个实施例的虚拟机迁移记录管理方法的流程图。
图2示意了该虚拟机迁移记录管理系统的机构示意图。
图3是根据本发明示例的虚拟机迁移状态拓扑图。
具体实施方式
现在参照附图描述本发明的示意性示例。相同的附图标号表示相同的元件。下文描述的各实施例有助于本领域技术人员透彻理解本发明,且意在示例而非限制。除非另有限定,文中使用的术语(包括科学、技术和行业术语)具有与本发明所属领域的技术人员普遍理解的含义相同的含义。此外,流程图中各步骤的先后顺序也不以图示的顺序为限。
在结合附图详细描述本发明的示例之前,在此首先大体介绍一些背景。
虚拟机迁移一般分为两种,一种是由运维人员操作的有计划的迁移,另一种是无计划的意外迁移。有计划的迁移一般发生在物理机需要升级操作系统、升级环境以及计划内检查维修等情况下。这种有计划的迁移可进一步细分为在虚拟机非运行状态下的冷迁移,以及在虚拟机运行状态下的热迁移。无计划的意外迁移一般发生在物理机意外宕机时,为了不影响业务,会将这台虚拟机迁移到其他物理机并启动。
Neo4j是一种完全兼容ACID的图形数据库。Neo4j将数据以一种针对图形网络进行过优化的格式保存在磁盘上。Neo4j具有传统数据库的所有特性,例如恢复、两阶段提交以及符合XA等,它的内核是一个速度极快的图形引擎。Neo4j可支持通过元模型构造图形结构以及一种SparQL兼容的RDFTripleStore实现或一组公共图形算法的实现。
图1是根据本发明一个实施例的虚拟机迁移记录管理方法的流程图。该迁移记录管理方法应用的环境包括多个虚拟机、管理机、第一数据库与第二数据库。多个虚拟机与管理机通信连接。管理机可以是服务器、或其它可执行数据处理的电子设备。
根据本发明的一些示例,第一数据库指的是虚拟机创建时,写入相关数据的数据库。几乎在所有的虚拟机管理系统中,都有该第一数据库。虚拟机创建时写入第一数据库的数据一般包括虚拟机ID,与该虚拟机对应的物理机的物理机ID,以及该虚拟机的IP地址、磁盘镜像文件所在位置等信息。在本文中,“ID”指的是标识,其可以是名称也可是可识别拥有该ID的部件的标号、符号等。例如,虚拟机ID可以是为虚拟机设立的名称,也可以是可识别该虚拟机的符号,只要可唯一标识该虚拟机即可。
根据本发明的一个具体示例,该第一数据库为NOVA数据库。
根据本发明的一些示例,第二数据库在本申请中为图形数据库Neo4j。
回到图1,在步骤10,要迁移的虚拟机发送迁移请求给管理机。要迁移的虚拟机可以是有计划迁移的虚拟机也可以是意外迁移的虚拟机。在本文以下的各示例中,以虚拟机A作为要迁移的虚拟机且假定其为有计划迁移的虚拟机;以虚拟机B作为因意外宕机而迁移的虚拟机。在发送的迁移请求中,包括如下四项数据:要迁移的虚拟机的ID、原物理机ID,目的物理机ID以及系统时间。其中,系统时间就是发起该迁移请求时的系统时间。
在步骤12,管理机解析该虚拟请求,以获得虚拟机迁移相关的信息。解析该虚拟请求后,管理机可获得一个四元组数据,其包括要迁移的虚拟机的ID、原物理机ID,目的物理机ID以及系统时间。
在步骤12之后,管理机依据所解析的该虚拟机迁移相关的信息,检查第二数据库中是否有与该虚拟机迁移相关的信息所涉及的虚拟机与物理机的信息。具体而言,在步骤12之后,进行到步骤14。
在步骤14,管理机依据解析获得的虚拟机ID检查该第二数据库中是否存在该虚拟机的相关信息。一般而言,如果该虚拟机从未进行过迁移,则第二数据库中一般就不存在该虚拟机的相关记录,也就是说该第二数据库中没有该虚拟机。
如果步骤14中的检查结果是该第二数据库中不存在该虚拟机,则进到步骤16。在步骤16,管理机向第二数据库发出信息获取请求,以自该第二数据库中获取该虚拟机的相关信息。
在步骤16之后,进到步骤18,管理机依据解析后获得的原物理机ID检查该第二数据库中是否存在该物理机的相关信息。
如果步骤18的检查结果是存在,则进到步骤20,通过数据库驱动程序访问第二数据库,将所获取的相关信息写入到第二数据库,并生成关于该要迁移的虚拟机的迁移记录,其中,所获取的相关信息可能仅是该物理机的相关信息,还可能仅是该虚拟机的相关信息,也可能既有该物理机的相关信息又有该虚拟机的相关信息。
如果步骤18的检查结果是不存在,则进到步骤19,管理机向第二数据库发出信息获取请求,以自该第二数据库中获取具有该物理机ID的物理机的相关信息。随后,进到步骤20,通过数据库驱动程序访问第二数据库,并生成关于该要迁移的虚拟机的迁移记录。
在步骤14中的检查结果是该第二数据库中存在该虚拟机,则直接进到步骤18。
如图1所示的虚拟机迁移记录管理方法可通过软件实现,也可通过硬件实现,或通过软件与硬件的结合实现。
根据本发明的另一实施方式,还提供虚拟机迁移记录管理系统,图2示意了该虚拟机迁移记录管理系统的机构示意图。该系统包括设置在虚拟机的请求发送单元20、设置在管理机的接收处理单元22、设置在管理机的信息检查单元24、设置在管理机的信息获取单元26以及设置在管理机的迁移记录生成单元28。
有关第一数据库与第二数据库已在上文介绍过,不再赘述。
请求发送单元20在虚拟机要迁移时发送迁移请求。要迁移的虚拟机可以是有计划迁移的虚拟机也可以是意外迁移的虚拟机。在发送的迁移请求中,包括如下四项数据:要迁移的虚拟机的ID、原物理机ID,目的物理机ID以及系统时间。其中,系统时间就是发起该迁移请求时的系统时间。
接收处理单元22用于接收迁移请求并解析该请求以获得虚拟机迁移相关的信息。解析该虚拟请求后,管理机可获得一个四元组数据,其包括要迁移的虚拟机的ID、原物理机ID,目的物理机ID以及系统时间。
信息检查单元24用于依据所解析的该虚拟机迁移相关的信息,检查第二数据库中是否有与该虚拟机迁移相关的信息所涉及的虚拟机与物理机的信息,并在检查结果传送给信息获取单元26。
信息获取单元26用于在信息检查单元的检查结果为缺少部分或全部信息的情况下,管理机自第一数据库获取所缺信息,并将所获取的信息写入第二数据库。具体而言,检查过程如下:信息获取单元26依据解析获得的虚拟机ID检查该第二数据库中是否存在该虚拟机的相关信息,如果不存在,则向第二数据库发出信息获取请求,以自该第二数据库中获取该虚拟机的相关信息;信息获取单元26还依据解析后获得的原物理机ID检查该第二数据库中是否存在该物理机的相关信息,如果不存在,则管理机向第二数据库发出信息获取请求,以自该第二数据库中获取具有该物理机ID的物理机的相关信息。
迁移记录生成单元28用于在信息检查单元24检查结果为不缺少或信息获取单元26将所获取的信息写入第二数据库后,生在第二数据库中生成要迁移的虚拟机的迁移记录。
根据本发明的示例中,第二数据库为图形数据库Neo4j,其是一个完全兼容ACID的图形数据库。图3是根据本发明示例的虚拟机迁移状态拓扑图。该拓扑图中,各圆圈本身分别代表一个物理机,标号30与标号40分别表示不同的时间,例如标号30表示2015年9月20日的15点,而标号40表示2015年9月21号14点26分。图3中的物VM1表示虚拟机1,VM2表是虚拟机2,总而言之VMx表示虚拟机x。由图3可见,每个物理机可对应多个虚拟机,例如物理机A对应虚拟机1、虚拟机2与虚拟机3。在图中虚线3内,标号为34的箭头指示Vm3迁移,且该迁移指的是虚拟机3从物理机A迁移到物理机E。在该迁移中,物理机A是原物理机,物理机E是目的物理机。参考在此对虚线3内示例的解释,可了解图3中的其它各迁移。要说明的是,虚线3本身并不是第二数据库中图谱的一部分,而只是用来标示。
在结合图1与图2的各示例中,从第一数据库获取的各数据写入第二数据库,示例地,就是以图3所示的样子将从第一数据库获取的各数据插入到第二数据库中。
根据本发明示例的虚拟机迁移记录管理系统可实现为软件模块、硬件模块、或软件与硬件模块的结合。
如上所述,根据本发明的各示例,采用图形数据库Neo4j且执行如本发明图1所示的方法或采用如本发明图2所示的系统,可自动记录虚拟机迁移历史,相比于查log来记录虚拟机迁移历史的方式,节省了大量的人力和时间成本。
此外,由于虚拟机迁移的历史记录数据本身就是表示状态的拓扑图,用传统的关系数据库来记录的话,会增加额外的开销,且对复杂的查询方法支持性比较差。但是因采用了图形数据库Neo4j,因此根据本发明的各示例很好的解决了上述的问题,且支持复杂的查询方法。
尽管已结合附图在上文的描述中,公开了本发明的具体实施例,但是本领域技术人员可以理解到,可在不脱离本发明精神的情况下,对公开的具体实施例进行变形或修改。本发明的实施例仅用于示意并不用于限制本发明。

Claims (9)

1.一种虚拟机迁移记录管理方法,其特征在于,该方法包括:
a)要迁移的虚拟机发送迁移请求给管理机;
b)管理机解析该虚拟请求,以获得虚拟机迁移相关的信息;
c)管理机依据所解析的该虚拟机迁移相关的信息,检查第二数据库中是否有与该虚拟机迁移相关的信息所涉及的虚拟机与物理机的信息;
d)在步骤c的检查结果为缺少部分或全部信息的情况下,管理机自第一数据库获取所缺信息,并将所获取的信息写入第二数据库;以及
e)如果步骤c中检查结果为不缺少或在步骤d中管理机将所获取的信息写入第二数据库后,在第二数据库中生成要迁移的虚拟机的迁移记录。
2.如权利要求1所述的虚拟机迁移记录管理方法,其中,所述虚拟机迁移相关的信息至少包括该要迁移的虚拟机的虚拟机ID、原物理机ID、目的物理机ID以及当前的系统时间。
3.如权利要求1所述的虚拟机迁移记录管理方法,其中,所述第一数据库是虚拟机创建时写入数据的数据库。
4.如权利要求1或3所述的虚拟机迁移记录管理方法,其中,所述第一数据库是NOVA数据库。
5.如权利要求1到4中任意一项所述的虚拟机迁移记录管理方法,其中,所述第二数据库是图形数据库Neo4j。
6.一种虚拟机迁移记录管理系统,其特征在于,该系统包括:
设置在各虚拟机出的请求发送单元,其用于在虚拟机要迁移时发送迁移请求;
设置在管理机的接收处理单元,其用于接收迁移请求并解析该请求以获得虚拟机迁移相关的信息;
设置在管理机的信息检查单元,其用于依据所解析的该虚拟机迁移相关的信息,检查第二数据库中是否有与该虚拟机迁移相关的信息所涉及的虚拟机与物理机的信息;
设置在管理机的信息获取单元,其用于在信息检查单元的检查结果为缺少部分或全部信息的情况下,管理机自第一数据库获取所缺信息,并将所获取的信息写入第二数据库;
设置在管理机的迁移记录生成单元,其用于在信息检查单元检查结果为不缺少或信息获取单元将所获取的信息写入第二数据库后,生在第二数据库中生成要迁移的虚拟机的迁移记录。
7.如权利要求6所述的虚拟机迁移记录管理系统,其中,所述第一数据库是虚拟机创建时写入数据的数据库。
8.如权利要求6或7所述的虚拟机迁移记录管理系统,其中,所述第一数据库是NOVA数据库。
9.如权利要求6所述的虚拟机迁移记录管理系统,其中,所述第二数据库是图形数据库Neo4j。
CN201511010530.5A 2015-12-30 2015-12-30 虚拟机迁移记录管理方法及系统 Active CN105589746B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201511010530.5A CN105589746B (zh) 2015-12-30 2015-12-30 虚拟机迁移记录管理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511010530.5A CN105589746B (zh) 2015-12-30 2015-12-30 虚拟机迁移记录管理方法及系统

Publications (2)

Publication Number Publication Date
CN105589746A true CN105589746A (zh) 2016-05-18
CN105589746B CN105589746B (zh) 2019-05-10

Family

ID=55929348

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511010530.5A Active CN105589746B (zh) 2015-12-30 2015-12-30 虚拟机迁移记录管理方法及系统

Country Status (1)

Country Link
CN (1) CN105589746B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109783199A (zh) * 2019-03-28 2019-05-21 浪潮商用机器有限公司 一种虚拟机迁移方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090265707A1 (en) * 2008-04-21 2009-10-22 Microsoft Corporation Optimizing application performance on virtual machines automatically with end-user preferences
US20110239215A1 (en) * 2010-03-24 2011-09-29 Fujitsu Limited Virtual machine management apparatus
CN102821028A (zh) * 2011-06-08 2012-12-12 上海贝尔股份有限公司 支持虚拟机在多协议标签网络中迁移的方法和相应的设备
US8352953B2 (en) * 2009-12-03 2013-01-08 International Business Machines Corporation Dynamically provisioning virtual machines
CN103620551A (zh) * 2011-06-29 2014-03-05 微软公司 虚拟机迁移工具

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090265707A1 (en) * 2008-04-21 2009-10-22 Microsoft Corporation Optimizing application performance on virtual machines automatically with end-user preferences
US8352953B2 (en) * 2009-12-03 2013-01-08 International Business Machines Corporation Dynamically provisioning virtual machines
US20110239215A1 (en) * 2010-03-24 2011-09-29 Fujitsu Limited Virtual machine management apparatus
CN102821028A (zh) * 2011-06-08 2012-12-12 上海贝尔股份有限公司 支持虚拟机在多协议标签网络中迁移的方法和相应的设备
CN103620551A (zh) * 2011-06-29 2014-03-05 微软公司 虚拟机迁移工具

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109783199A (zh) * 2019-03-28 2019-05-21 浪潮商用机器有限公司 一种虚拟机迁移方法及装置

Also Published As

Publication number Publication date
CN105589746B (zh) 2019-05-10

Similar Documents

Publication Publication Date Title
CN102057355B (zh) 同步虚拟机和应用程序生存周期
US7698545B1 (en) Computer configuration chronology generator
CN101719149B (zh) 数据同步方法及装置
CN107544871B (zh) 一种虚拟机磁盘备份方法及装置
CN101582920B (zh) 一种分布式文件系统中校验和同步数据块的方法及装置
CN111324610A (zh) 一种数据同步的方法及装置
CN102982085A (zh) 数据迁移系统和方法
CN103744906A (zh) 一种数据同步系统、方法及装置
CN102591910A (zh) 用于组合oltp数据库和olap数据库环境的计算机方法和系统
CN102917072A (zh) 用于数据服务器集群之间进行数据迁移的设备、系统及方法
US20120284471A1 (en) Virtual machine disk migration
WO2015021215A1 (en) Data bus architecture for inter-database data distribution
CN103020193A (zh) 处理数据库操作请求的方法和设备
CN104850502A (zh) 一种数据的访问方法、装置及设备
CN101075210B (zh) 无需再引导对硬盘进行分区的设备和方法
CN105446794A (zh) 一种基于虚拟机的磁盘操作方法、装置及系统
US9613168B2 (en) Computer aided modeling
CN103036947B (zh) 基于kvm的虚拟机迁移方法及系统
US20170351509A1 (en) Prototype management system
CN109558380A (zh) 用于处理工业自动化环境中的工程对象的方法和系统
CN101499148A (zh) 用于处理订单的设备和方法
CN104517067A (zh) 访问数据的方法、装置及系统
CN105589746A (zh) 虚拟机迁移记录管理方法及系统
CN102792281A (zh) 存储设备
CN112699118A (zh) 数据同步方法及相应的装置、系统、存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant