CN106990999A - 虚拟机业务迁移方法及装置 - Google Patents

虚拟机业务迁移方法及装置 Download PDF

Info

Publication number
CN106990999A
CN106990999A CN201710155656.4A CN201710155656A CN106990999A CN 106990999 A CN106990999 A CN 106990999A CN 201710155656 A CN201710155656 A CN 201710155656A CN 106990999 A CN106990999 A CN 106990999A
Authority
CN
China
Prior art keywords
virtual machine
data center
business
data
migration
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
CN201710155656.4A
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.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies 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 Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN201710155656.4A priority Critical patent/CN106990999A/zh
Publication of CN106990999A publication Critical patent/CN106990999A/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

本发明公开了一种虚拟机业务迁移方法,包括步骤:第一数据中心与第二数据中心建立通信连接,其中,所述第一数据中心运行有待迁移业务的虚拟机;获取所述虚拟机当前对应的业务数据;将所述业务数据发送至所述第二数据中心,并关闭所述虚拟机,以将所述待迁移业务迁移至所述第二数据中心运行。本发明还公开了一种虚拟机业务迁移装置。本发明提高了虚拟机业务迁移的效率。

Description

虚拟机业务迁移方法及装置
技术领域
本发明涉及虚拟机(Virtual Machine)技术领域,尤其涉及一种虚拟机业务迁移方法及装置。
背景技术
虚拟机是通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,虚拟机带来了更高的资源利用率,各个数据中心通过运行虚拟机可执行各种相应业务。当需要将一个数据中心(源端数据中心)的虚拟机上运行的业务迁移至另外一个数据中心(目的端数据中心)运行时,一般需要先将源端数据中心的该虚拟机关闭,以停止运行在该虚拟机上的业务,然后导出该虚拟机对应的业务数据,并将该业务数据导入目的端数据中心,之后才能在目的端数据中心运行原本在该虚拟机上运行的业务,实现虚拟机业务迁移。由于在虚拟机关闭之后,需要执行导出虚拟机对应的业务数据、将业务数据导入目的端数据中心等操作,使得虚拟机业务中断时间较长,虚拟机业务迁移的效率较低。
发明内容
本发明的主要目的在于提出一种虚拟机业务迁移方法及装置,旨在解决现有技术中虚拟机业务迁移的效率较低的技术问题。
为实现上述目的,本发明提供一种虚拟机业务迁移方法,所述虚拟机业务迁移方法包括以下步骤:
第一数据中心与第二数据中心建立通信连接,其中,所述第一数据中心运行有待迁移业务的虚拟机;
获取所述虚拟机当前对应的业务数据;
将所述业务数据发送至所述第二数据中心,并关闭所述虚拟机,以将所述待迁移业务迁移至所述第二数据中心运行。
优选地,所述业务数据包括所述虚拟机当前对应的脏数据,所述获取所述虚拟机当前对应的业务数据的步骤包括:
对保存有所述虚拟机的磁盘及运行状态数据的位图进行遍历,获取所述虚拟机当前对应的脏数据;
所述将所述业务数据发送至所述第二数据中心,并关闭所述虚拟机的步骤包括:
将所述脏数据发送至所述第二数据中心,并计算所述虚拟机当前对应的停机时长;
当所述停机时长小于预设时长阈值时,关闭所述虚拟机。
优选地,所述计算所述虚拟机当前对应的停机时长的步骤之后,还包括:
当所述停机时长大于或等于所述预设时长阈值时,返回继续执行所述对保存有所述虚拟机的磁盘及运行状态数据的位图进行遍历,获取所述虚拟机当前对应的脏数据的步骤。
优选地,所述计算所述虚拟机当前对应的停机时长的步骤包括:
根据所述脏数据的数据量大小以及当前迁移速率,计算所述虚拟机当前对应的停机时长。
优选地,所述第一数据中心与第二数据中心建立通信连接的步骤包括:
第一数据中心发送虚拟机业务迁移请求至所述第二数据中心,以在所述第二数据中心响应所述第一数据中心的所述虚拟机业务迁移请求后,所述第一数据中心与所述第二数据中心成功建立通信连接。
此外,为实现上述目的,本发明还提出一种虚拟机业务迁移装置,所述虚拟机业务迁移装置包括:
通讯模块,用于第一数据中心与第二数据中心建立通信连接,其中,所述第一数据中心运行有待迁移业务的虚拟机;
获取模块,用于获取所述虚拟机当前对应的业务数据;
处理模块,用于将所述业务数据发送至所述第二数据中心,并关闭所述虚拟机,以将所述待迁移业务迁移至所述第二数据中心运行。
优选地,所述业务数据包括所述虚拟机当前对应的脏数据,所述获取模块用于:
对保存有所述虚拟机的磁盘及运行状态数据的位图进行遍历,获取所述虚拟机当前对应的脏数据;
所述处理模块包括:
处理单元,用于将所述脏数据发送至所述第二数据中心,并计算所述虚拟机当前对应的停机时长;
控制单元,用于当所述停机时长小于预设时长阈值时,关闭所述虚拟机。
优选地,所述获取模块还用于:
当所述停机时长大于或等于所述预设时长阈值时,对保存有所述虚拟机的磁盘及运行状态数据的位图进行遍历,获取所述虚拟机当前对应的脏数据。
优选地,所述处理单元用于:
根据所述脏数据的数据量大小以及当前迁移速率,计算所述虚拟机当前对应的停机时长。
优选地,所述通讯模块用于:
发送虚拟机业务迁移请求至所述第二数据中心,以在所述第二数据中心响应所述虚拟机业务迁移请求后,所述第一数据中心与所述第二数据中心成功建立通信连接。
本发明提出的虚拟机业务迁移方法及装置,当需要将在第一数据中心的虚拟机上运行的业务迁移至第二数据中心运行时,首先建立第一数据中心与第二数据中心的通信连接,然后获取运行该待迁移业务的虚拟机当前对应的业务数据,将该业务数据发送至第二数据中心,并关闭此虚拟机,将本在该虚拟机上运行的待迁移业务迁移至第二数据中心运行,由于避免了执行导出虚拟机对应的业务数据、将业务数据导入第二数据中心等操作,大大缩短了虚拟机业务中断时间,从而提高了虚拟机业务迁移的效率。
附图说明
图1为本发明虚拟机业务迁移方法第一实施例的流程示意图;
图2为本发明虚拟机业务迁移方法第二实施例的流程示意图;
图3为本发明虚拟机业务迁移装置第一实施例的功能模块示意图;
图4为本发明虚拟机业务迁移装置第二实施例中处理模块的细化功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种虚拟机业务迁移方法,参照图1,图1为本发明虚拟机业务迁移方法第一实施例的流程示意图。
在本实施例中,该虚拟机业务迁移方法包括以下步骤:
步骤S10,第一数据中心与第二数据中心建立通信连接,其中,所述第一数据中心运行有待迁移业务的虚拟机;
在本实施例中,为了实现虚拟机业务的跨数据中心热迁移,首先建立起需要进行热迁移的虚拟机业务当前运行所在的数据中心(源端数据中心)与虚拟机业务待迁移至的数据中心(目的端数据中心)之间的通信连接。为了便于描述,下文中用第一数据中心表示虚拟机业务当前运行所在的数据中心,也即源端数据中心,用第二数据中心表示虚拟机业务待迁移至的数据中心,也即目的端数据中心。也即本实施例中,首先建立第一数据中心和第二数据中心的通信连接。第一数据中心和第二数据中心都处于活动状态,分别运行不同的虚拟机执行相应的业务,其中,需要进行热迁移的虚拟机业务在第一数据中心的虚拟机上运行。具体地,所述步骤S10包括:
步骤a,第一数据中心发送虚拟机业务迁移请求至所述第二数据中心,以在所述第二数据中心响应所述第一数据中心的所述虚拟机业务迁移请求后,所述第一数据中心与所述第二数据中心成功建立通信连接。
当要进行第一数据中心的虚拟机业务热迁移时,第一数据中心首先发送相应的虚拟机业务迁移请求至第二数据中心,当第二数据中心接收到该虚拟机业务迁移请求时,第二数据中心对第一数据中心发送的该虚拟机业务迁移请求进行响应,实现第一数据中心与第二数据中心成功建立通信连接。可选地,第二数据中心上创建相应的虚拟机进程,该虚拟机进程处于暂停状态,并不运行相应业务,仅监听一个tcp端口用于接收第一数据中心发送的虚拟机业务迁移请求,通过该tcp端口实现第一数据中心与第二数据中心建立tcp连接。
步骤S20,获取所述虚拟机当前对应的业务数据;
在第一数据中心与第二数据中心建立通信连接之后,接下来就要将第一数据中心上运行的需要进行热迁移的虚拟机业务迁移至第二数据中心。具体地,由于该虚拟机业务当前运行在第一数据中心的虚拟机上,第一数据中心先获取该虚拟机当前所对应的业务数据。其中,该业务数据包括虚拟机磁盘中的数据以及在迁移过程中虚拟机业务运行所产生的脏数据等。
步骤S30,将所述业务数据发送至所述第二数据中心,并关闭所述虚拟机,以将所述待迁移业务迁移至所述第二数据中心运行。
在获取到虚拟机当前所对应的业务数据之后,第一数据中心将该业务数据发送至第二数据中心,以同步该业务数据至第二数据中心。并且,将需要进行热迁移的虚拟机业务当前运行于的第一数据中心的虚拟机关闭。当第二数据中心接收到第一数据中心发送的业务数据之后,第二数据中心恢复运行之前所创建的虚拟机进程,使虚拟机处于运行状态,并根据所接收到的第一数据中心发送的业务数据,在该虚拟机上运行本是在第一数据中心运行的虚拟机业务,也即实现了将需要进行热迁移的虚拟机业务迁移至第二数据中心运行。由于不需要执行先将虚拟机关闭,以停止运行需要进行热迁移的虚拟机业务,然后导出虚拟机对应的业务数据,并将业务数据导入第二数据中心等操作,虚拟机业务中断时间大大缩短,从而提高了用户体验。
本实施例提供的方案,当需要将在第一数据中心的虚拟机上运行的业务迁移至第二数据中心运行时,首先建立第一数据中心与第二数据中心的通信连接,然后获取运行该待迁移业务的虚拟机当前对应的业务数据,将该业务数据发送至第二数据中心,并关闭此虚拟机,将本在该虚拟机上运行的待迁移业务迁移至第二数据中心运行,由于避免了执行导出虚拟机对应的业务数据、将业务数据导入第二数据中心等操作,大大缩短了虚拟机业务中断时间,从而提高了虚拟机业务迁移的效率。
进一步地,如图2所示,基于第一实施例提出本发明虚拟机业务迁移方法第二实施例。在本实施例中,所述业务数据包括虚拟机磁盘中的数据以及在迁移过程中虚拟机业务运行所产生的脏数据,所述步骤S20包括:
步骤S21,对保存有所述虚拟机的磁盘及运行状态数据的位图进行遍历,获取所述虚拟机当前对应的脏数据;
所述步骤S30包括:
步骤S31,将所述脏数据发送至所述第二数据中心,并计算所述虚拟机当前对应的停机时长;
步骤S32,判断所述停机时长是否小于预设时长阈值;若是,则执行步骤S33;若否,则返回执行所述步骤S21;
步骤S33,关闭所述虚拟机。
在本实施例中,第一数据中心通过一个位图保存虚拟机的磁盘以及运行状态数据,并且,本实施例中预先设置一预设时长阈值,比如预先设置该预设时长阈值为1s,本领域技术人员可以理解的是,该预设时长阈值可根据实际情况进行灵活设置,在此不作限制。当第一数据中心与第二数据中心成功建立通信连接之后,第一数据中心通过对位图进行扫描遍历,查询位图中当前所保存的虚拟机的磁盘及运行状态数据,获取虚拟机当前对应的脏数据。然后,第一数据中心将脏数据发送至第二数据中心,同时,第一数据中心在获取到脏数据之后,计算虚拟机当前对应的停机时长,也即计算将脏数据全部发送至第二数据中心所需要的时间。然后,将计算出的停机时长与预设时长阈值进行比较,判断两者的大小。若停机时长大于或等于预设时长阈值,则说明发送完脏数据还需要一段时间,此时若关闭虚拟机,则虚拟机业务的停机时间就会稍长了,因此,第一数据中心继续运行虚拟机以运行需要进行热迁移的虚拟机业务。此时,第一数据中心再次执行遍历位图的操作,重新再一次获取虚拟机当前对应的脏数据。然后,根据当前获取的脏数据,再次重新计算虚拟机当前对应的停机时长。具体地,所述步骤S31包括:
步骤b,根据所述脏数据的数据量大小以及当前迁移速率,计算所述虚拟机当前对应的停机时长。
第一数据中心根据虚拟机业务当前迁移速率,以及当前需要待发送的脏数据的数据量大小,将当前需要待发送的脏数据的数据量大小除以虚拟机业务当前迁移速率,计算出虚拟机当前对应的停机时长。其中,当前需要待发送的脏数据包括此次遍历位图所获取的脏数据;该迁移速率可由第一数据中心已发送的脏数据的数据量大小以及发送这些脏数据所耗费时间计算出来。
若此次计算出的停机时长依旧大于或等于预设时长阈值,则第一数据中心继续重复上述操作,直至当某次计算出的停机时长小于预设时长阈值时,也即说明发送完脏数据仅需很短的时间,此时关闭虚拟机。在之后的很短时间内(小于预设时长阈值),脏数据全部都发送至第二数据中心。当第二数据中心接收完所有的脏数据时,第二数据中心重新加载磁盘镜像并启动虚拟机运行,实现第二数据中心接管原本在第一数据中心运行的虚拟机业务。在整个虚拟机业务的迁移过程中,虚拟机业务的中断时间小于预设时长阈值,几乎实现了虚拟机业务的无缝切换。并且,由于虚拟机业务的迁移过程中拷贝的数据量大小是实际使用空间,而不是磁盘总容量,这样也可以较大的缩短迁移时间。
本实施例提供的方案,在第一数据中心与第二数据中心成功建立通信连接之后,第一数据中心通过遍历位图获取虚拟机当前对应的脏数据,将脏数据发送至第二数据中心,并计算虚拟机当前对应的停机时长,若停机时长大于或等于预设时长阈值,则再次遍历位图获取虚拟机当前对应的脏数据,根据待发送的脏数据重新计算虚拟机当前对应的停机时长,若再次计算的停机时长依旧大于或等于预设时长阈值,则重复上述操作,直至当计算的停机时长小于预设时长阈值,说明发送完脏数据仅需很短的时间,此时关闭虚拟机。因此,在整个虚拟机业务的迁移过程中,虚拟机业务的中断时间很短(小于预设时长阈值),几乎实现了虚拟机业务的无缝切换,从而进一步提高了虚拟机业务迁移的效率。
本发明进一步提供一种虚拟机业务迁移装置,如图3所示,图3为本发明虚拟机业务迁移装置第一实施例的功能模块示意图。
需要强调的是,对本领域的技术人员来说,图3所示功能模块图仅仅是一个较佳实施例的示例图,本领域的技术人员围绕图3所示的虚拟机业务迁移装置的功能模块,可轻易进行新的功能模块的补充;各功能模块的名称是自定义名称,仅用于辅助理解该虚拟机业务迁移装置的各个程序功能块,不用于限定本发明的技术方案,本发明技术方案的核心是,各自定义名称的功能模块所要达成的功能。
在本实施例中,该虚拟机业务迁移装置包括:
通讯模块10,用于第一数据中心与第二数据中心建立通信连接,其中,所述第一数据中心运行有待迁移业务的虚拟机;
在本实施例中,虚拟机业务迁移装置应用于数据中心端,可选地,该虚拟机业务迁移装置设置于数据中心内。为了实现虚拟机业务的跨数据中心热迁移,首先通过虚拟机业务迁移装置的通讯模块10建立起需要进行热迁移的虚拟机业务当前运行所在的数据中心(源端数据中心)与虚拟机业务待迁移至的数据中心(目的端数据中心)之间的通信连接。为了便于描述,下文中用第一数据中心表示虚拟机业务当前运行所在的数据中心,也即源端数据中心,用第二数据中心表示虚拟机业务待迁移至的数据中心,也即目的端数据中心。也即本实施例中,首先通讯模块10建立第一数据中心和第二数据中心的通信连接。第一数据中心和第二数据中心都处于活动状态,分别运行不同的虚拟机执行相应的业务,其中,需要进行热迁移的虚拟机业务在第一数据中心的虚拟机上运行。具体地,所述通讯模块10用于:
发送虚拟机业务迁移请求至所述第二数据中心,以在所述第二数据中心响应所述虚拟机业务迁移请求后,所述第一数据中心与所述第二数据中心成功建立通信连接。
当要进行第一数据中心的虚拟机业务热迁移时,第一数据中心的虚拟机业务迁移装置的通讯模块10首先发送相应的虚拟机业务迁移请求至第二数据中心,当第二数据中心接收到该虚拟机业务迁移请求时,第二数据中心对该虚拟机业务迁移请求进行响应,实现第一数据中心与第二数据中心成功建立通信连接。可选地,第二数据中心上创建相应的虚拟机进程,该虚拟机进程处于暂停状态,并不运行相应业务,仅监听一个tcp端口用于接收通讯模块10发送的虚拟机业务迁移请求,通过该tcp端口实现第一数据中心与第二数据中心建立tcp连接。
获取模块20,用于获取所述虚拟机当前对应的业务数据;
在第一数据中心与第二数据中心建立通信连接之后,接下来就要将第一数据中心上运行的需要进行热迁移的虚拟机业务迁移至第二数据中心。具体地,由于该虚拟机业务当前运行在第一数据中心的虚拟机上,获取模块20获取该虚拟机当前所对应的业务数据。其中,该业务数据包括虚拟机磁盘中的数据以及在迁移过程中虚拟机业务运行所产生的脏数据等。
处理模块30,用于将所述业务数据发送至所述第二数据中心,并关闭所述虚拟机,以将所述待迁移业务迁移至所述第二数据中心运行。
在获取模块20获取到虚拟机当前所对应的业务数据之后,处理模块30将该业务数据发送至第二数据中心,以同步该业务数据至第二数据中心。并且,处理模块30将需要进行热迁移的虚拟机业务当前运行于的第一数据中心的虚拟机关闭。当第二数据中心接收到第一数据中心发送的业务数据之后,第二数据中心恢复运行之前所创建的虚拟机进程,使虚拟机处于运行状态,并根据所接收到的第一数据中心发送的业务数据,在该虚拟机上运行本是在第一数据中心运行的虚拟机业务,也即实现了将需要进行热迁移的虚拟机业务迁移至第二数据中心运行。由于不需要执行先将虚拟机关闭,以停止运行需要进行热迁移的虚拟机业务,然后导出虚拟机对应的业务数据,并将业务数据导入第二数据中心等操作,虚拟机业务中断时间大大缩短,从而提高了用户体验。
本实施例提供的方案,当需要将在第一数据中心的虚拟机上运行的业务迁移至第二数据中心运行时,首先通过通讯模块10建立第一数据中心与第二数据中心的通信连接,然后获取模块20获取运行该待迁移业务的虚拟机当前对应的业务数据,处理模块30将该业务数据发送至第二数据中心,并关闭此虚拟机,将本在该虚拟机上运行的待迁移业务迁移至第二数据中心运行,由于避免了执行导出虚拟机对应的业务数据、将业务数据导入第二数据中心等操作,大大缩短了虚拟机业务中断时间,从而提高了虚拟机业务迁移的效率。
进一步地,基于第一实施例提出本发明虚拟机业务迁移装置第二实施例。在本实施例中,所述业务数据包括虚拟机磁盘中的数据以及在迁移过程中虚拟机业务运行所产生的脏数据,所述获取模块20用于:
对保存有所述虚拟机的磁盘及运行状态数据的位图进行遍历,获取所述虚拟机当前对应的脏数据。
在本实施例中,第一数据中心通过一个位图保存虚拟机的磁盘以及运行状态数据,并且,本实施例中预先设置一预设时长阈值,比如预先设置该预设时长阈值为1s,本领域技术人员可以理解的是,该预设时长阈值可根据实际情况进行灵活设置,在此不作限制。当第一数据中心与第二数据中心成功建立通信连接之后,获取模块20通过对位图进行扫描遍历,查询位图中当前所保存的虚拟机的磁盘及运行状态数据,获取虚拟机当前对应的脏数据。
本实施例中,如图4所示,所述处理模块30包括:
处理单元31,用于将所述脏数据发送至所述第二数据中心,并计算所述虚拟机当前对应的停机时长;
控制单元32,用于当所述停机时长小于预设时长阈值时,关闭所述虚拟机。
所述获取模块20,还用于当所述停机时长大于或等于所述预设时长阈值时,对保存有所述虚拟机的磁盘及运行状态数据的位图进行遍历,获取所述虚拟机当前对应的脏数据。
在获取模块20获取到虚拟机当前对应的脏数据之后,处理单元31将脏数据发送至第二数据中心,同时,计算虚拟机当前对应的停机时长,也即计算将脏数据全部发送至第二数据中心所需要的时间。然后,将计算出的停机时长与预设时长阈值进行比较,判断两者的大小。若停机时长大于或等于预设时长阈值,则说明发送完脏数据还需要一段时间,此时若关闭虚拟机,则虚拟机业务的停机时间就会稍长了,因此,第一数据中心继续运行虚拟机以运行需要进行热迁移的虚拟机业务。此时,获取模块20再次执行遍历位图的操作,重新再一次获取虚拟机当前对应的脏数据。然后,处理单元31根据当前获取的脏数据,再次重新计算虚拟机当前对应的停机时长。具体地,所述处理单元31用于:
根据所述脏数据的数据量大小以及当前迁移速率,计算所述虚拟机当前对应的停机时长。
处理单元31根据虚拟机业务当前迁移速率,以及当前需要待发送的脏数据的数据量大小,将当前需要待发送的脏数据的数据量大小除以虚拟机业务当前迁移速率,计算出虚拟机当前对应的停机时长。其中,当前需要待发送的脏数据包括此次遍历位图所获取的脏数据;该迁移速率可由第一数据中心已发送的脏数据的数据量大小以及发送这些脏数据所耗费时间计算出来。
若此次计算出的停机时长依旧大于或等于预设时长阈值,则继续重复上述操作,直至当某次计算出的停机时长小于预设时长阈值时,也即说明发送完脏数据仅需很短的时间,此时控制单元32控制关闭虚拟机。在之后的很短时间内(小于预设时长阈值),处理单元31将脏数据全部都发送至第二数据中心。当第二数据中心接收完所有的脏数据时,第二数据中心重新加载磁盘镜像并启动虚拟机运行,实现第二数据中心接管原本在第一数据中心运行的虚拟机业务。在整个虚拟机业务的迁移过程中,虚拟机业务的中断时间小于预设时长阈值,几乎实现了虚拟机业务的无缝切换。并且,由于虚拟机业务的迁移过程中拷贝的数据量大小是实际使用空间,而不是磁盘总容量,这样也可以较大的缩短迁移时间。
本实施例提供的方案,在第一数据中心与第二数据中心成功建立通信连接之后,获取模块20通过遍历位图获取虚拟机当前对应的脏数据,处理单元31将脏数据发送至第二数据中心,并计算虚拟机当前对应的停机时长,若停机时长大于或等于预设时长阈值,则获取模块20再次遍历位图获取虚拟机当前对应的脏数据,处理单元31根据待发送的脏数据重新计算虚拟机当前对应的停机时长,若再次计算的停机时长依旧大于或等于预设时长阈值,则重复上述操作,直至当计算的停机时长小于预设时长阈值,说明发送完脏数据仅需很短的时间,此时控制单元32控制关闭虚拟机。因此,在整个虚拟机业务的迁移过程中,虚拟机业务的中断时间很短(小于预设时长阈值),几乎实现了虚拟机业务的无缝切换,从而进一步提高了虚拟机业务迁移的效率。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种虚拟机业务迁移方法,其特征在于,所述虚拟机业务迁移方法包括以下步骤:
第一数据中心与第二数据中心建立通信连接,其中,所述第一数据中心运行有待迁移业务的虚拟机;
获取所述虚拟机当前对应的业务数据;
将所述业务数据发送至所述第二数据中心,并关闭所述虚拟机,以将所述待迁移业务迁移至所述第二数据中心运行。
2.如权利要求1所述的虚拟机业务迁移方法,其特征在于,所述业务数据包括所述虚拟机当前对应的脏数据,所述获取所述虚拟机当前对应的业务数据的步骤包括:
对保存有所述虚拟机的磁盘及运行状态数据的位图进行遍历,获取所述虚拟机当前对应的脏数据;
所述将所述业务数据发送至所述第二数据中心,并关闭所述虚拟机的步骤包括:
将所述脏数据发送至所述第二数据中心,并计算所述虚拟机当前对应的停机时长;
当所述停机时长小于预设时长阈值时,关闭所述虚拟机。
3.如权利要求2所述的虚拟机业务迁移方法,其特征在于,所述计算所述虚拟机当前对应的停机时长的步骤之后,还包括:
当所述停机时长大于或等于所述预设时长阈值时,返回继续执行所述对保存有所述虚拟机的磁盘及运行状态数据的位图进行遍历,获取所述虚拟机当前对应的脏数据的步骤。
4.如权利要求2所述的虚拟机业务迁移方法,其特征在于,所述计算所述虚拟机当前对应的停机时长的步骤包括:
根据所述脏数据的数据量大小以及当前迁移速率,计算所述虚拟机当前对应的停机时长。
5.如权利要求1-4任一项所述的虚拟机业务迁移方法,其特征在于,所述第一数据中心与第二数据中心建立通信连接的步骤包括:
第一数据中心发送虚拟机业务迁移请求至所述第二数据中心,以在所述第二数据中心响应所述第一数据中心的所述虚拟机业务迁移请求后,所述第一数据中心与所述第二数据中心成功建立通信连接。
6.一种虚拟机业务迁移装置,其特征在于,所述虚拟机业务迁移装置包括:
通讯模块,用于第一数据中心与第二数据中心建立通信连接,其中,所述第一数据中心运行有待迁移业务的虚拟机;
获取模块,用于获取所述虚拟机当前对应的业务数据;
处理模块,用于将所述业务数据发送至所述第二数据中心,并关闭所述虚拟机,以将所述待迁移业务迁移至所述第二数据中心运行。
7.如权利要求6所述的虚拟机业务迁移装置,其特征在于,所述业务数据包括所述虚拟机当前对应的脏数据,所述获取模块用于:
对保存有所述虚拟机的磁盘及运行状态数据的位图进行遍历,获取所述虚拟机当前对应的脏数据;
所述处理模块包括:
处理单元,用于将所述脏数据发送至所述第二数据中心,并计算所述虚拟机当前对应的停机时长;
控制单元,用于当所述停机时长小于预设时长阈值时,关闭所述虚拟机。
8.如权利要求7所述的虚拟机业务迁移装置,其特征在于,所述获取模块还用于:
当所述停机时长大于或等于所述预设时长阈值时,对保存有所述虚拟机的磁盘及运行状态数据的位图进行遍历,获取所述虚拟机当前对应的脏数据。
9.如权利要求7所述的虚拟机业务迁移装置,其特征在于,所述处理单元用于:
根据所述脏数据的数据量大小以及当前迁移速率,计算所述虚拟机当前对应的停机时长。
10.如权利要求6-9任一项所述的虚拟机业务迁移装置,其特征在于,所述通讯模块用于:
发送虚拟机业务迁移请求至所述第二数据中心,以在所述第二数据中心响应所述虚拟机业务迁移请求后,所述第一数据中心与所述第二数据中心成功建立通信连接。
CN201710155656.4A 2017-03-15 2017-03-15 虚拟机业务迁移方法及装置 Pending CN106990999A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710155656.4A CN106990999A (zh) 2017-03-15 2017-03-15 虚拟机业务迁移方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710155656.4A CN106990999A (zh) 2017-03-15 2017-03-15 虚拟机业务迁移方法及装置

Publications (1)

Publication Number Publication Date
CN106990999A true CN106990999A (zh) 2017-07-28

Family

ID=59411995

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710155656.4A Pending CN106990999A (zh) 2017-03-15 2017-03-15 虚拟机业务迁移方法及装置

Country Status (1)

Country Link
CN (1) CN106990999A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107729119A (zh) * 2017-09-26 2018-02-23 联想(北京)有限公司 虚拟机迁移方法及其系统
CN110858851A (zh) * 2018-08-24 2020-03-03 阿里巴巴集团控股有限公司 直播业务中数据连接重启方法、数据处理方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104683444A (zh) * 2015-01-26 2015-06-03 电子科技大学 一种数据中心多虚拟机的数据迁移方法
CN104965757A (zh) * 2015-01-21 2015-10-07 深圳市腾讯计算机系统有限公司 虚拟机热迁移的方法、虚拟机迁移管理装置及系统
CN105138394A (zh) * 2015-09-21 2015-12-09 上海爱数软件有限公司 一种热迁移kvm虚拟机的方法及系统
CN105700944A (zh) * 2015-12-31 2016-06-22 赛尔网络有限公司 虚拟机没有共享存储条件下的在线迁移方法和装置
CN106126318A (zh) * 2016-07-05 2016-11-16 云南大学 一种Openstack云平台中虚拟机的动态迁移方法
CN106469085A (zh) * 2016-08-31 2017-03-01 北京航空航天大学 虚拟机在线迁移方法、装置及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104965757A (zh) * 2015-01-21 2015-10-07 深圳市腾讯计算机系统有限公司 虚拟机热迁移的方法、虚拟机迁移管理装置及系统
CN104683444A (zh) * 2015-01-26 2015-06-03 电子科技大学 一种数据中心多虚拟机的数据迁移方法
CN105138394A (zh) * 2015-09-21 2015-12-09 上海爱数软件有限公司 一种热迁移kvm虚拟机的方法及系统
CN105700944A (zh) * 2015-12-31 2016-06-22 赛尔网络有限公司 虚拟机没有共享存储条件下的在线迁移方法和装置
CN106126318A (zh) * 2016-07-05 2016-11-16 云南大学 一种Openstack云平台中虚拟机的动态迁移方法
CN106469085A (zh) * 2016-08-31 2017-03-01 北京航空航天大学 虚拟机在线迁移方法、装置及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107729119A (zh) * 2017-09-26 2018-02-23 联想(北京)有限公司 虚拟机迁移方法及其系统
CN110858851A (zh) * 2018-08-24 2020-03-03 阿里巴巴集团控股有限公司 直播业务中数据连接重启方法、数据处理方法和装置
CN110858851B (zh) * 2018-08-24 2022-06-14 阿里巴巴集团控股有限公司 直播业务中数据连接重启方法、数据处理方法和装置

Similar Documents

Publication Publication Date Title
CN106301876B (zh) 物理机升级方法、业务迁移方法及装置
CN107343306B (zh) 网络切片的选择方法及装置
CN104581785B (zh) 无线网络测试方法、测试装置和移动终端
CN106412067B (zh) 基于工控协议模糊测试的数据分层生成方法
CN104486234B (zh) 一种将业务交换机卸载到物理网卡的方法及服务器
CN107347205A (zh) 一种网络切片选择方法、装置及系统
CN103942097B (zh) 一种数据处理方法、装置及具备相应装置的计算机
CN104780017B (zh) 一种数据处理方法及装置
CN107302585A (zh) 一种预置字典同步方法及设备
CN106990999A (zh) 虚拟机业务迁移方法及装置
CN109995814A (zh) 云主机资源的迁移方法及装置、通信设备、存储介质
CN108696911A (zh) 一种物联网数据传输方式的选择方法和装置
CN107465613A (zh) 链路聚合接口通信状态切换方法及装置
CN107689879A (zh) 虚拟网元的管理方法及装置
CN107769946A (zh) 一种网络配置方法及网络设备
CN103581317B (zh) 一种网络资源共享的方法
CN108418752B (zh) 一种聚合组的创建方法和装置
CN107295075A (zh) 一种基于会话保持的跨终端应用状态迁移方法
CN103874148B (zh) 基于x2接口的基站切换方法、系统以及基站
CN108076095A (zh) 一种nfv系统业务加速方法、系统、装置及服务器
CN110351152A (zh) 消息报文处理装置及方法
CN104468379B (zh) 基于最短逻辑距离的虚拟Hadoop集群节点选择方法及装置
CN105359489A (zh) 一种资源调度方法、装置及系统
CN105373451A (zh) 一种虚拟机放置的方法及装置
CN107623578A (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

Application publication date: 20170728

RJ01 Rejection of invention patent application after publication