CN116991546B - 一种跨平台存储热迁移方法及装置 - Google Patents

一种跨平台存储热迁移方法及装置 Download PDF

Info

Publication number
CN116991546B
CN116991546B CN202311275810.3A CN202311275810A CN116991546B CN 116991546 B CN116991546 B CN 116991546B CN 202311275810 A CN202311275810 A CN 202311275810A CN 116991546 B CN116991546 B CN 116991546B
Authority
CN
China
Prior art keywords
data
virtual machine
source
writing
storage device
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.)
Active
Application number
CN202311275810.3A
Other languages
English (en)
Other versions
CN116991546A (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.)
Hangzhou Youyun Technology Co ltd
Original Assignee
Hangzhou Youyun 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 Hangzhou Youyun Technology Co ltd filed Critical Hangzhou Youyun Technology Co ltd
Priority to CN202311275810.3A priority Critical patent/CN116991546B/zh
Publication of CN116991546A publication Critical patent/CN116991546A/zh
Application granted granted Critical
Publication of CN116991546B publication Critical patent/CN116991546B/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/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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

本说明书实施例提供一种跨平台存储热迁移方法及装置,该方法可以包括:在执行数据写入操作对应的调用函数之前,先执行使用jprobe技术预先在内核注册的钩子函数,所述数据写入操作是源虚拟机中的源存储设备的写入操作,所述钩子函数用于对所述数据写入操作进行监测,通过所述钩子函数监测到所述数据写入操作的写入位置,获取所述数据写入操作对应的写入数据,所述写入位置是所述数据写入操作对应的写入数据在所述源存储设备中的位置,发送所述写入数据至目的虚拟机,目的存储设备位于所述目的虚拟机,所述目的虚拟机与所述源虚拟机规格相同。

Description

一种跨平台存储热迁移方法及装置
技术领域
本说明书涉及计算机技术领域,尤其涉及一种跨平台存储热迁移方法及装置。
背景技术
当用户将虚拟机业务进行跨云平台迁移时,需要将源虚拟机磁盘中的数据迁移至新的虚拟机磁盘中,由于不同平台的磁盘格式存在差异,所以很难做到磁盘数据的热迁移。
当前的迁移方式都是先将源虚拟机关闭,暂停业务,然后将源虚拟机的磁盘进行格式转换,把格式转换为目的平台支持的磁盘格式,然后拷贝到目的平台,然后在目的平台上启动虚拟机。
目前,跨平台迁移业务需要对磁盘格式进行转换,并且在迁移数据时,需要中断很长时间的业务。
发明内容
为克服相关技术中存在的问题,本说明书提供了一种跨平台存储热迁移方法及装置。
在本说明书任一实施例的第一方面,提供一种跨平台存储热迁移方法,应用于源虚拟机,源存储设备位于所述源虚拟机,所述源存储设备与目的存储设备存储于不同平台,所述方法包括:
在执行数据写入操作对应的调用函数之前,先执行使用jprobe技术预先在内核注册的钩子函数,所述数据写入操作是源虚拟机中的源存储设备的写入操作,所述钩子函数用于对所述数据写入操作进行监测;
通过所述钩子函数监测到所述数据写入操作的写入位置,获取所述数据写入操作对应的写入数据,所述写入位置是所述数据写入操作对应的写入数据在所述源存储设备中的位置;
发送所述写入数据至目的虚拟机,目的存储设备位于所述目的虚拟机,所述目的虚拟机与所述源虚拟机规格相同。
根据本说明书任一实施例的第二方面,提供了一种跨平台存储热迁移方法,应用于目的虚拟机,目的存储设备位于所述目的虚拟机,所述目的存储设备与源存储设备存储于不同平台,所述方法包括:
接收源虚拟机发送的写入数据,所述写入数据是所述源虚拟机执行使用jprobe技术预先在内核注册的钩子函数,监测数据写入操作的写入位置,获取的所述数据写入操作对应的数据,源存储设备位于所述源虚拟机;
将所述写入数据写入目的虚拟机中的目的存储设备,所述目的虚拟机与所述源虚拟机规格相同。
根据本说明书任一实施例的第三方面,提供了一种跨平台存储热迁移装置,应用于源虚拟机,源存储设备位于所述源虚拟机,所述源存储设备与目的存储设备存储于不同平台,所述装置包括:
函数执行模块,用于在执行数据写入操作对应的调用函数之前,先执行使用jprobe技术预先在内核注册的钩子函数,所述数据写入操作是源虚拟机中的源存储设备的写入操作,所述钩子函数用于对所述数据写入操作进行监测;
数据获取模块,用于通过所述钩子函数监测到所述数据写入操作的写入位置,获取所述数据写入操作对应的写入数据,所述写入位置是所述数据写入操作对应的写入数据在所述源存储设备中的位置;
数据发送模块,用于发送所述写入数据至目的虚拟机,目的存储设备位于所述目的虚拟机,所述目的虚拟机与所述源虚拟机规格相同。
根据本说明书任一实施例的第四方面,提供了一种跨平台存储热迁移装置,应用于目的虚拟机,目的存储设备位于所述目的虚拟机,所述目的存储设备与源存储设备存储于不同平台,所述装置包括:
数据接收模块,用于接收源虚拟机发送的写入数据,所述写入数据是所述源虚拟机执行使用jprobe技术预先在内核注册的钩子函数,监测数据写入操作的写入位置,获取的所述数据写入操作对应的数据,源存储设备位于所述源虚拟机;
数据写入模块,用于将所述写入数据写入目的虚拟机中的目的存储设备,所述目的虚拟机与所述源虚拟机规格相同。
根据本说明书任一实施例的第五方面,提供了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现本说明书任一实施例中所述的方法。
根据本说明书任一实施例的第六方面,提供了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上述本说明书任一实施例中所述方法的步骤。
本说明书的实施例提供的技术方案可以包括以下有益效果:
由以上技术方案可见,本说明书任一实施例通过由源虚拟机在执行数据写入操作对应的调用函数之前,先执行使用jprobe技术预先在内核注册的钩子函数,可以对数据写入操作进行监测,通过监测数据写入操作的写入位置,获取并发送数据写入操作的写入数据,至与源虚拟机规格相同的目的虚拟机,可以在业务运行中实现数据迁移,支持目的平台对目的存储设备模拟适配的格式,无需关闭源虚拟机,避免转换存储设备格式,解决跨平台迁移磁盘数据的兼容性问题,从而实现存储热迁移,并且可以缩短数据迁移时长,避免业务长时间中断,降低对业务产生的影响。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是根据本说明书一示例性实施例示出的一种跨平台存储热迁移的架构示意图;
图2是根据本说明书一示例性实施例示出的一种跨平台存储热迁移方法的流程图;
图3是根据本说明书一示例性实施例示出的另一种跨平台存储热迁移方法的流程图;
图4是根据本说明书一示例性实施例示出的一种写入数据获取方法的流程图;
图5是根据本说明书一示例性实施例示出的一种电子设备的结构示意图;
图6是根据本说明书一示例性实施例示出的一种跨平台存储热迁移装置的框图;
图7是根据本说明书一示例性实施例示出的另一种跨平台存储热迁移装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
目前在跨平台迁移数据时,需要将原数据盘中的数据迁移至新数据盘中,由于不同平台对磁盘的模拟格式大多是不兼容的,在数据迁移过程中需要先关闭虚拟机,然后转换磁盘格式,限制格式转换的工具,很难直接对磁盘数据进行存储热迁移,迁移过程较为复杂,而且部分厂商会放慢磁盘向外拷贝的速度,导致业务中断时间很长。
为了解决上述的问题,本说明书实施例提供了一种跨平台存储热迁移方法。在介绍该存储热迁移方法之前,为了使得该方法的描述更容易理解,首先对本说明书实施例的后续描述中所涉及到的部分概念进行解释说明:
1)、存储热迁移
存储热迁移是将运行的虚拟机从一个数据存储迁移至另一个数据存储上,在迁移过程中业务不会中断,用户对迁移过程无感知。
2)、jprobe技术
jprobe技术是Linux中的一种探测技术,它可以探测到内核中任意函数被执行。如果注册钩子函数对某个函数的执行进行监测,那么在这个函数被执行前先会执行在内核模块中注册的钩子函数,从而达到截获信息的效果。其中,钩子函数是在系统在进行消息的传递处理时候利用钩子机制截取消息的函数,可以对一些特定的消息进行处理。
为对本说明书进行进一步说明,提供下列实施例:
如图1所示,图1是本说明书根据一示例性实施例示出的一种跨平台存储热迁移的架构示意图。源虚拟机11部署于源平台1,源存储设备111存储于源虚拟机11;目的虚拟机21部署于目的平台2,目的存储设备211存储于目的虚拟机21。
源平台1和目的平台2可以是云计算平台、普通物理服务器等,可用于运行虚拟机和业务软件;源虚拟机11和目的虚拟机21可以是VMware、KVM等,可用于独立的运行应用程序和服务。源存储设备111和目的存储设备211可以是虚拟磁盘、物理磁盘等存储介质,可用于存储运行业务软件所需数据。
其中,对源虚拟机11和目的虚拟机21来说,源存储设备111与目的存储设备211可以是两个相同的存储设备。源平台1对源存储设备111与目的平台2对目的存储设备211的模拟格式可以不同。示例性的,源平台1针对源存储设备111可以使用qcow2格式进行模拟,目的平台2针对目的存储设备211可以使用vmdk格式进行模拟。
源虚拟机11和目的虚拟机21中可以包括用户态和内核态,用户态是程序在用户空间运行的状态,内核态是系统内核在内核空间运行的状态。用户态中可以执行应用程序的数据处理、网络通信等操作,内核态中可以监测存储设备的I/O操作。
在跨平台存储热迁移过程中,以Linux系统为例,在目的平台2上创建目的虚拟机21,部署与源虚拟机11相同的业务软件。
源虚拟机11获取源存储设备111中待迁移的数据,可以通过公网将待迁移的数据发送至目的虚拟机21,循环获取并发送运行中的业务进程写入源存储设备111的数据。所述业务进程可以是运行中的业务软件或系统软件,可以包括文件管理进程、浏览器进程等。源虚拟机11将源存储设备111的全部数据发送至目的虚拟机21后,将发送热迁移结束消息至目的虚拟机21。
目的虚拟机21接收到热迁移结束消息,并将全部接收到的数据写入目的存储设备211,目的虚拟机21启动业务进程。
基于上述方式,同一源虚拟机可以获取源存储设备111中待迁移的数据,可以将待迁移的数据同时发送至同一目的虚拟机的多个目的存储设备,同时多个目的存储设备进行存储热迁移,本说明书实施例对此不做限制。
基于上述的存储热迁移架构,如下描述本说明书实施例的方法:
请参阅图2,图2为根据本说明书一示例性实施例示出的一种跨平台存储热迁移方法的流程图。如图2所示,该方法应用于源虚拟机,源存储设备位于所述源虚拟机,所述源存储设备与目的存储设备存储于不同平台,可以包括如下步骤:
步骤202:在执行数据写入操作对应的调用函数之前,先执行使用jprobe技术预先在内核注册的钩子函数,所述数据写入操作是源虚拟机中的源存储设备的写入操作,所述钩子函数用于对所述数据写入操作进行监测。
本步骤中,源虚拟机通过jprobe技术在内核中注册钩子函数,用以监测源存储设备中的I/O(Input/Output,输入/输出)操作,所述源虚拟机一旦监测到I/O操作对应的调用函数将要被执行,会先执行所述钩子函数。
在执行所述数据写入操作对应的调用函数之前,先执行预先在内核注册的钩子函数。所述数据写入操作可以是I/O操作中的写入操作,用于将业务进程产生的数据写入到虚拟机内部的存储设备中。所述调用函数是I/O操作必定会调用的函数,所述钩子函数可以根据传入与所述调用函数相同的参数,判断所述调用函数对应的I/O操作是否为数据写入操作。
以图1所示的存储热迁移结构为例,本步骤所述的数据写入操作可以是将修改浏览器的配置数据写入到源存储设备111的I/O操作,调用函数可以是每次I/O操作完成后内核都会调用的bio_endio函数。钩子函数可以是函数名为bio_endio_catcher的函数,在bio_endio即将被调用之前内核会先调用bio_endio_catcher函数,并传入与bio_endio一样的参数。
在内核中注册可以对bio_endio函数进行监测的钩子函数,用以监测bio_endio函数的执行。源虚拟机11在监测到将修改的配置数据写入到源存储设备111的I/O操作中的bio_endio函数被执行之前,先执行bio_endio_catcher函数。
步骤204:通过所述钩子函数监测到所述数据写入操作的写入位置,获取所述数据写入操作对应的写入数据,所述写入位置是所述数据写入操作对应的写入数据在所述源存储设备中的位置。
本步骤中,源虚拟机可以通过在执行调用函数之前,先执行钩子函数,并传入与所述调用函数相同的参数。钩子函数可以根据传入的参数,监测源存储设备中的数据写入操作的写入位置。所述写入位置是数据写入操作将写入数据写入到源存储设备的位置。
获取源存储设备中所述数据写入操作对应的写入数据,所述写入数据可以是以0或1格式存储于源存储设备的数据,示例性的,所述写入数据可以包括缓存数据、配置数据等。
以图1所示的存储热迁移结构为例,bio_endio_catcher函数传入的参数可以是struct bio结构体指针,根据bio结构体中的源存储设备111的名称与的目的存储设备211的名称是否一致,和I/O操作类型,判断bio_endio函数对应的I/O操作是否数据写入操作。
示例性的,若bio结构体中的源存储设备111的名称与的目的存储设备211的名称一致,并且操作类型不是读操作,则判断该I/O操作为数据写入操作,即将修改的配置数据写入到源存储设备111的I/O操作为数据写入操作。
bio_endio_catcher函数根据bio结构体中的扇区值与写入数据的长度监测到所述数据写入操作的写入位置,示例性的,写入位置可以是在源存储设备111中400KB至403KB的位置。源虚拟机11通过该写入位置获取修改的配置数据在源存储设备111中对应的写入数据。
步骤206:发送所述写入数据至目的虚拟机,目的存储设备位于所述目的虚拟机,所述目的虚拟机与所述源虚拟机规格相同。
本步骤中,源虚拟机将在步骤204中获取的写入数据发送至目的虚拟机,所述目的虚拟机与所述源虚拟机规格相同,即所述目的虚拟机与所述源虚拟机的CPU、存储设备等配置相同。以图1所示的存储热迁移结构为例,源虚拟机11将获取到的源存储设备111中的写入数据发送至与源虚拟机11规格相同的目的虚拟机21,即目的虚拟机21与源虚拟机11的CPU、存储设备等配置相同。
本实施例的跨平台存储热迁移方法,通过由源虚拟机在执行数据写入操作对应的调用函数之前,执行使用jprobe技术预先在内核注册的钩子函数,可以对数据写入操作进行监测,根据钩子函数监测的数据写入操作的写入位置,从而获取并发送数据写入操作对应的写入数据至目的虚拟机,使得即使不同平台对存储设备的模拟格式不同,由源虚拟机获取源存储设备中的写入数据,并发送至与所述源虚拟机规格相同的目的虚拟机,支持目的平台对目的存储设备模拟适配的格式,无需在热迁移过程中转换存储设备格式,从而解决跨平台的兼容性问题。
同时,本实施例的方式由源虚拟机发送源存储设备中的写入数据至目的虚拟机,可以在业务运行中实现数据迁移,无需中断业务。此外,由于不需要关闭源虚拟机,避免转换存储设备格式,可以实现热迁移,从而降低对业务产生的影响,并且可以缩短数据迁移时长,简化迁移流程。
请参阅图3,图3为根据本说明书一示例性实施例示出的另一种跨平台存储热迁移方法的流程图。如图3所示,该方法应用于目的虚拟机,目的存储设备位于所述目的虚拟机,所述目的存储设备与源存储设备存储于不同平台,可以包括如下步骤:
步骤302:接收源虚拟机发送的写入数据,所述写入数据是所述源虚拟机执行使用jprobe技术预先在内核注册的钩子函数,监测数据写入操作的写入位置,获取的所述数据写入操作对应的数据,源存储设备位于所述源虚拟机。
本步骤中,目的虚拟机接收源虚拟机发送的写入数据,所述源虚拟机通过在执行数据写入操作对应的调用函数之前,先执行使用jprobe技术预先在内核注册的钩子函数,根据所述钩子函数监测数据写入操作在源存储设备中的写入位置,获取所述数据写入操作对应的写入数据,将所述写入数据发送至所述目的虚拟机。
以图1所示的存储热迁移结构为例,本步骤所述的数据写入操作可以是将修改的浏览器的配置数据写入到源存储设备111的I/O操作,所述写入数据可以是修改的配置数据在源存储设备111中写入的数据。示例性的,源虚拟机在执行数据写入操作对应的bio_endio函数之前,先执行使用jprobe技术预先在内核注册的bio_endio_catcher函数,监测到将修改的配置数据写入到源存储设备111是数据写入操作,通过bio_endio_catcher函数获取数据写入操作的写入位置,源虚拟机11获取并发送修改的配置数据在源存储设备111中对应的写入数据。目的虚拟机21接收源虚拟机11发送的写入数据。
步骤304:将所述写入数据写入目的虚拟机中的目的存储设备,所述目的虚拟机与所述源虚拟机规格相同。
本步骤中,目的虚拟机将步骤302中接收的写入数据写入所述目的虚拟机中的目的存储设备,所述目的虚拟机与所述源虚拟机规格相同,即所述目的虚拟机与所述源虚拟机配置相同规格的存储设备。以图1所示的存储热迁移结构为例,目的虚拟机21将接收到的写入数据写入位于目的虚拟机21的目的存储设备211中,目的虚拟机21与源虚拟机11规格相同,即目的虚拟机21中的目的存储设备211与源虚拟机11中的源存储设备111规格相同。
进一步的,源虚拟机将源存储设备中的全部写入数据发送至目的虚拟机后,将热迁移结束消息发送至所述目的虚拟机。所述目的虚拟机接收到所述热迁移结束消息,并将全部接收到的写入数据,写入到存储于目的虚拟机的目的存储设备中。启动所述目的虚拟机侧的业务进程成功后,发送热迁移成功消息至所述源虚拟机。
所述源虚拟机接收到所述热迁移成功消息后,结束所述源虚拟机侧的业务进程,从内核中移除钩子函数。
以图1所示的存储热迁移结构为例,源虚拟机11将源存储设备111中的全部写入数据发送至目的虚拟机21后,将热迁移结束消息发送至目的虚拟机21。目的虚拟机21接收到热迁移结束消息,并将全部接收到的写入数据写入到存储于目的虚拟机21的目的存储设备211中,目的虚拟机21启动与源虚拟机侧相同的业务进程成功后,发送热迁移成功消息至源虚拟机11。
源虚拟机11接收到热迁移成功消息后,可以调用kill -TERM pid命令结束源虚拟机11侧的业务进程,从内核中移除bio_endio_catcher函数。
如上所述的,通过由目的虚拟机在启动业务进程成功后发送热迁移成功消息至源虚拟机,源虚拟机结束所述源虚拟机侧的业务进程,从内核中移除钩子函数,可以防止业务进程和钩子函数长时间占用源虚拟机的空间和资源。
本实施例的跨平台存储热迁移方法,通过由目的虚拟机接收源虚拟机在执行数据写入操作对应的调用函数之前,根据执行钩子函数监测数据写入操作的写入位置,获取并发送所述数据写入操作对应的写入数据,目的虚拟机将写入数据写入存储于目的虚拟机的目的存储设备,支持目的平台对目的存储设备模拟适配的格式,无需关闭源虚拟机,避免转换存储设备格式,解决跨平台的兼容性问题;同时,可以在业务运行中实现数据迁移,无需中断业务,从而实现跨平台存储热迁移,降低对业务产生的影响,并且可以缩短数据迁移时长,简化迁移流程。
在另一实施例中,源虚拟机可以将获取到的数据写入操作对应的写入数据进行压缩,将压缩后的写入数据发送至目的虚拟机。所述目的虚拟机对接收到的压缩后的写入数据进行解压,将解压后的写入数据写入到存储于所述目的虚拟机的目的存储设备。
以图1所示的存储热迁移结构为例,举例来说,所述写入数据可以是根据将浏览器的配置数据写入到源存储设备111的数据写入操作,获取到的源存储设备111中的写入数据。源虚拟机11可以将获取到的写入数据进行压缩,将压缩后的写入数据发送至目的虚拟机21。目的虚拟机21对接收到的压缩后的写入数据进行解压,将解压后的写入数据写入到存储于目的虚拟机21的目的存储设备211。
如上所述的,通过由源虚拟机将获取到的数据写入操作对应的写入数据进行压缩,并发送至目的虚拟机,目的虚拟机将接收到的压缩数据进行解压,可以提高数据传输速度,提升存储热迁移性能。
在前述的例子中,源虚拟机可以对数据写入操作进行监测,并获取数据写入操作对应的写入数据。如下将通过图4示例一种获取写入数据的方式,该方式可以包括如下步骤:
步骤402:基于所述写入位置将脏页位图对应位置标记为脏页位,所述脏页位图中存储用于读取写入数据的脏页位。
本步骤中,源虚拟机在启动时根据源存储设备的大小创建脏页位图,所述脏页位图可以由若干个位构成,可以对脏页位图中的位进行标记为脏或者干净,标记为脏的脏页位可以表示该脏页位对应的所述源存储设备中的数据是待迁移的写入数据。钩子函数监测到数据写入操作的写入位置后,基于所述写入位置将所述脏页位图对应位置标记为脏页位。
以图1所示的存储热迁移结构为例,示例性的,在源虚拟机11和目的虚拟机21上可以安装存储热迁移软件,存储热迁移软件可以包括:脏页发送模块、脏页捕获模块和脏页接收模块三个模块。其中,脏页捕获模块可以通过insmod方法运行于源虚拟机11的内核态,脏页发送模块运行于源虚拟机11的用户态,脏页接收模块运行于目的虚拟机21的用户态。
脏页发送模块首先检查源存储设备111的大小,传递给脏页捕获模块。脏页捕获模块在启动时可以根据源存储设备111的大小创建脏页位图。创建方式可以为脏页位图的每一位代表源存储设备111中的一页,可以指定一页的大小。
举例来说,指定源存储设备111中的一页代表4KB,若源存储设备111的大小为400GB,则400GB/4KB=1MB,一个字节是8位,1MB/8=128KB,因此脏页捕获模块会创建大小为128KB的脏页位图。
脏页捕获模块通过钩子函数监测到数据写入操作,并获取数据写入操作的写入位置,钩子函数基于该写入位置将脏页位图对应位置标记为脏页位。示例性的,钩子函数监测到数据写入操作的写入位置是源存储设备111中400KB至403KB的位置,写入数据的大小为4KB,脏页位图中的脏页位获取方式可以是400KB/4KB=100,则将脏页位图的第100位标记为脏页位。
步骤404:根据所述脏页位的位置,计算所述写入数据在所述源存储设备中的偏移位置,读取所述偏移位置的所述写入数据。
本步骤中,源虚拟机11根据步骤402中标记的脏页位的位置,计算所述写入数据在所述源存储设备中的偏移位置,读取所述偏移位置的所述写入数据。所述偏移位置是数据写入操作在所述源存储设备中的写入位置,用以读取待迁移的写入数据。
以图1所示的存储热迁移结构为例,脏页发送模块可以通过sysfs接口来遍历脏页捕获模块中脏页位图中的脏页位,以读取源存储设备中的写入数据。示例性的,脏页发送模块获取到脏页位图第100位为脏页位,根据脏页位的位置计算待迁移的数据在源存储设备111中的偏移位置。
偏移位置获取方式可以与上述的脏页位获取方式相对应,示例性的,偏移位置获取方式可以根据脏页位图第100位为脏页位,计算得到在源存储设备111的100*4KB=400KB位置开始有4KB的写入数据,读取源存储设备111中400KB至403KB的位置的写入数据。
进一步的,源虚拟机读取所述脏页位图中的所述脏页位,将所述脏页位标记为干净,以在标记为干净的脏页位上再次标记其他数据写入操作。
以图1所示的存储热迁移结构为例,脏页发送模块读取脏页位图中第100位的脏页位后,将第100位标记为干净,表示该位置对应的写入数据肯定会被发送到目的虚拟机21。若脏页捕获模块监测到其他数据写入操作的写入位置对应的脏页位为脏页位图的第100位,则脏页位图中标记为干净的第100位可以再次被标记为脏页位。
源虚拟机读取所述脏页位图中的所述脏页位,将所述脏页位标记为干净,可以避免长时间占用脏页位图,避免影响源虚拟机对脏页位的再次标记。
进一步的,源虚拟机在所述脏页位的数量低于预设阈值的情况下,暂停所述源虚拟机侧的业务进程。所述源虚拟机刷新缓存中的数据,将缓存中的数据写入至源存储设备,所述源虚拟机通过钩子函数检测数据写入操作的写入位置,并对脏页位图中的脏页位进行标记。所述源虚拟机根据所述脏页位图中的脏页位获取所述源存储设备中所有的写入数据,并发送至所述目的虚拟机。
所述预设阈值支持配置,对于吞吐量大的源存储设备可以配置较高的阈值,对于吞吐量低的源存储设备可以配置较低的阈值。
以图1所示的存储热迁移结构为例,示例性的,配置预设阈值为50位,当脏页发送模块获取到脏页位图的脏页位的数量低于50时,可以通过调用kill -STOP pid命令暂停源虚拟机11侧的业务进程。
源虚拟机11中的脏页发送模块通过调用sync命令刷新缓存中的数据,将缓存中的数据写入至源存储设备111,脏页捕获模块通过钩子函数监测到数据写入操作的写入位置,对脏页位图中的脏页位进行标记。脏页发送模块根据脏页位图中的脏页位获取源存储设备111中所有的写入数据,并发送至目的虚拟机21的脏页接收模块。
当脏页位的数量低于预设阈值时,源虚拟机暂停业务进程,发送全部写入数据至目的虚拟机,可以缩短存储热迁移时间;支持配置预设阈值,能够根据存储设备的吞吐量调节预设阈值,进一步缩短存储热迁移时间。
进一步的,在源虚拟机暂停所述源虚拟机侧的业务进程之后,若出现迁移失败的情况,所述源虚拟机继续运行所述业务进程。所述迁移失败可以是出现写入数据发送失败、目的虚拟机业务进程启动失败等情况。
以图1所示的存储热迁移结构为例,在脏页位的数量低于预设阈值的情况下,源虚拟机11暂停源虚拟机11侧的业务进程。示例性的,若出现写入数据发送失败的情况,源虚拟机11可以通过调用kill -CONT pid命令继续运行业务进程,排查写入数据发送失败原因。
源虚拟机暂停业务进程后,若出现迁移失败的情况,源虚拟机继续运行业务进程,可以避免发送业务长时间中断,也无需重启业务进程。
图5是根据本说明书一示例性实施例示出的一种电子设备的结构示意图。参考图5,在硬件层面,该电子设备包括处理器502、内部总线504、网络接口506、内存508以及非易失性存储器510,当然还可能包括其他业务所需要的硬件。处理器502从非易失性存储器510中读取对应的计算机程序到内存608中然后运行,在逻辑层面上形成跨平台存储热迁移装置。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
图6是根据本说明书一示例性实施例示出的一种跨平台存储热迁移装置的框图。参照图6,该装置包括函数执行模块602、数据获取模块604和数据发送模块606,其中:
函数执行模块602,用于在执行数据写入操作对应的调用函数之前,先执行使用jprobe技术预先在内核注册的钩子函数,所述数据写入操作是源虚拟机中的源存储设备的写入操作,所述钩子函数用于对所述数据写入操作进行监测;
数据获取模块604,用于通过所述钩子函数监测到所述数据写入操作的写入位置,获取所述数据写入操作对应的写入数据,所述写入位置是所述数据写入操作对应的写入数据在所述源存储设备中的位置;
数据发送模块606,用于发送所述写入数据至目的虚拟机,目的存储设备位于所述目的虚拟机,所述目的虚拟机与所述源虚拟机规格相同。
在一个例子中,所述数据发送模块606,在用于发送所述写入数据至目的虚拟机时,包括:压缩所述写入数据,将压缩后的写入数据发送至目的虚拟机。
在一个例子中,所述数据获取模块604,在用于所述获取数据写入操作对应的写入数据时,包括:基于所述写入位置将脏页位图对应位置标记为脏页位,所述脏页位图中存储用于读取写入数据的脏页位;根据所述脏页位的位置,计算所述写入数据在所述源存储设备中的偏移位置,读取所述偏移位置的所述写入数据。
在一个例子中,所述数据获取模块604,还用于在根据所述脏页位的位置,计算写入数据在所述源存储设备中的偏移位置之前,读取所述脏页位图中的所述脏页位,将所述脏页位标记为干净,以在标记为干净的脏页位上再次标记其他数据写入操作的写入位置。
在一个例子中,所述数据发送模块606,在用于发送所述写入数据至所述目的虚拟机时,包括:在所述脏页位的数量低于预设阈值的情况下,暂停业务进程,发送所有写入数据至所述目的虚拟机。
在一个例子中,所述数据发送模块606,还用于在所述暂停业务进程之后,在迁移失败的情况下,继续运行所述业务进程。
图7是根据本说明书一示例性实施例示出的另一种跨平台存储热迁移装置的框图。参照图7,该装置包括数据接收模块702、数据写入模块704,其中:
所述数据接收模块702,用于接收源虚拟机发送的写入数据,所述写入数据是所述源虚拟机执行使用jprobe技术预先在内核注册的钩子函数,监测数据写入操作的写入位置,获取的所述数据写入操作对应的数据,源存储设备位于所述源虚拟机。
所述数据写入模块704,用于将所述写入数据写入目的虚拟机中的目的存储设备,所述目的虚拟机与所述源虚拟机规格相同。
在一个例子中,所述数据接收模块702,在用于接收源虚拟机发送的写入数据时,包括:接收源虚拟机发送的压缩后的写入数据,解压所述写入数据。
在一个例子中,所述数据写入模块704,还用于发送热迁移成功消息至所述源虚拟机,以使所述源虚拟机结束业务进程。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由跨平台存储热迁移装置的处理器执行以实现如上述实施例中任一所述的方法。
其中,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等,本申请并不对此进行限制。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域技术人员在考虑说明书及实践这里申请的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。

Claims (12)

1.一种跨平台存储热迁移方法,其特征在于,应用于源虚拟机,源存储设备位于所述源虚拟机,所述源存储设备与目的存储设备存储于不同平台,所述方法包括:
在执行数据写入操作对应的调用函数之前,先执行使用jprobe技术预先在内核注册的钩子函数,所述数据写入操作是源虚拟机中的源存储设备的写入操作,所述钩子函数用于对所述数据写入操作进行监测;
通过所述钩子函数监测到所述数据写入操作的写入位置,获取所述数据写入操作对应的写入数据,所述写入位置是所述数据写入操作对应的写入数据在所述源存储设备中的位置;
发送所述写入数据至目的虚拟机,目的存储设备位于所述目的虚拟机,所述目的虚拟机与所述源虚拟机规格相同;
所述发送所述写入数据至所述目的虚拟机,包括:
在脏页位的数量低于预设阈值的情况下,暂停业务进程,发送所有写入数据至所述目的虚拟机,所述脏页位用于标识所述脏页位对应的所述源存储设备中的数据是待迁移的写入数据。
2.根据权利要求1所述的方法,其特征在于,
所述发送所述写入数据至目的虚拟机,包括:
压缩所述写入数据,将压缩后的写入数据发送至目的虚拟机。
3.根据权利要求1所述的方法,其特征在于,
所述获取所述数据写入操作对应的写入数据,包括:
基于所述写入位置将脏页位图对应位置标记为脏页位,所述脏页位图中存储用于读取写入数据的脏页位;
根据所述脏页位的位置,计算所述写入数据在所述源存储设备中的偏移位置,读取所述偏移位置的所述写入数据。
4.根据权利要求3所述的方法,其特征在于,
在所述根据所述脏页位的位置,计算写入数据在所述源存储设备中的偏移位置之前,所述方法还包括:
读取所述脏页位图中的所述脏页位,将所述脏页位标记为干净,以在标记为干净的脏页位上再次标记其他数据写入操作。
5.根据权利要求1所述的方法,其特征在于,
在所述暂停业务进程之后,所述方法还包括:
在迁移失败的情况下,继续运行所述业务进程。
6.一种跨平台存储热迁移方法,其特征在于,应用于目的虚拟机,目的存储设备位于所述目的虚拟机,所述目的存储设备与源存储设备存储于不同平台,所述方法包括:
接收源虚拟机发送的写入数据,所述写入数据是所述源虚拟机执行使用jprobe技术预先在内核注册的钩子函数,监测数据写入操作的写入位置,获取的所述数据写入操作对应的数据,源存储设备位于所述源虚拟机;
将所述写入数据写入目的虚拟机中的目的存储设备,所述目的虚拟机与所述源虚拟机规格相同;
所述将所述写入数据写入目的虚拟机中的目的存储设备,包括:
接收所述源虚拟机发送的所有写入数据,所述所有写入数据是所述源虚拟机在脏页位的数量低于预设阈值的情况下,暂停业务进程并发送的,所述脏页位用于标识所述脏页位对应的所述源存储设备中的数据是待迁移的写入数据。
7.根据权利要求6所述的方法,其特征在于,
所述接收源虚拟机发送的写入数据,包括:
接收源虚拟机发送的压缩后的写入数据,解压所述写入数据。
8.根据权利要求6所述的方法,其特征在于,
所述方法还包括:
发送热迁移成功消息至所述源虚拟机,以使所述源虚拟机结束业务进程。
9.一种跨平台存储热迁移装置,其特征在于,应用于源虚拟机,源存储设备位于所述源虚拟机,所述源存储设备与目的存储设备存储于不同平台,所述装置包括:
函数执行模块,用于在执行数据写入操作对应的调用函数之前,先执行使用jprobe技术预先在内核注册的钩子函数,所述数据写入操作是源虚拟机中的源存储设备的写入操作,所述钩子函数用于对所述数据写入操作进行监测;
数据获取模块,用于通过所述钩子函数监测到所述数据写入操作的写入位置,获取所述数据写入操作对应的写入数据,所述写入位置是所述数据写入操作对应的写入数据在所述源存储设备中的位置;
数据发送模块,用于发送所述写入数据至目的虚拟机,目的存储设备位于所述目的虚拟机,所述目的虚拟机与所述源虚拟机规格相同;
所述数据发送模块,在用于发送所述写入数据至所述目的虚拟机时,包括:
在脏页位的数量低于预设阈值的情况下,暂停业务进程,发送所有写入数据至所述目的虚拟机,所述脏页位用于标识所述脏页位对应的所述源存储设备中的数据是待迁移的写入数据。
10.一种跨平台存储热迁移装置,其特征在于,应用于目的虚拟机,目的存储设备位于所述目的虚拟机,所述目的存储设备与源存储设备存储于不同平台,所述装置包括:
数据接收模块,用于接收源虚拟机发送的写入数据,所述写入数据是所述源虚拟机执行使用jprobe技术预先在内核注册的钩子函数,监测数据写入操作的写入位置,获取的所述数据写入操作对应的数据,源存储设备位于所述源虚拟机;
数据写入模块,用于将所述写入数据写入目的虚拟机中的目的存储设备,所述目的虚拟机与所述源虚拟机规格相同;
所述数据写入模块,在用于将所述写入数据写入目的虚拟机中的目的存储设备时,包括:
接收所述源虚拟机发送的所有写入数据,所述所有写入数据是所述源虚拟机在脏页位的数量低于预设阈值的情况下,暂停业务进程并发送的,所述脏页位用于标识所述脏页位对应的所述源存储设备中的数据是待迁移的写入数据。
11.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求1-8中任一项所述的方法。
12.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1-8中任一项所述方法的步骤。
CN202311275810.3A 2023-09-28 2023-09-28 一种跨平台存储热迁移方法及装置 Active CN116991546B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311275810.3A CN116991546B (zh) 2023-09-28 2023-09-28 一种跨平台存储热迁移方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311275810.3A CN116991546B (zh) 2023-09-28 2023-09-28 一种跨平台存储热迁移方法及装置

Publications (2)

Publication Number Publication Date
CN116991546A CN116991546A (zh) 2023-11-03
CN116991546B true CN116991546B (zh) 2024-01-23

Family

ID=88534311

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311275810.3A Active CN116991546B (zh) 2023-09-28 2023-09-28 一种跨平台存储热迁移方法及装置

Country Status (1)

Country Link
CN (1) CN116991546B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112667999A (zh) * 2020-12-31 2021-04-16 中电长城网际安全技术研究院(北京)有限公司 虚拟机的执行时间调整方法和装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103500146A (zh) * 2013-09-30 2014-01-08 北京邮电大学 虚拟机磁盘存储数据迁移方法和系统
CN105912428A (zh) * 2016-05-20 2016-08-31 上海数腾软件科技股份有限公司 实现源数据实时转化为虚拟机镜像的系统及方法
CN107621980A (zh) * 2016-07-13 2018-01-23 阿里巴巴集团控股有限公司 一种虚拟机迁移方法、集群控制系统和控制装置
CN110795733A (zh) * 2019-10-12 2020-02-14 苏州浪潮智能科技有限公司 管理主机中文件方法和装置
CN111176781A (zh) * 2019-08-23 2020-05-19 腾讯科技(深圳)有限公司 虚拟机热迁移方法、装置、存储介质与电子设备
CN111857968A (zh) * 2020-07-29 2020-10-30 山东超越数控电子股份有限公司 一种虚拟机的热迁移方法、系统、设备以及介质
CN112099908A (zh) * 2020-08-27 2020-12-18 腾讯科技(深圳)有限公司 虚拟机热迁移方法、装置和计算机设备
CN115469968A (zh) * 2022-08-29 2022-12-13 紫光云技术有限公司 一种v2v热迁移业务整合方法
CN116185571A (zh) * 2023-04-20 2023-05-30 深圳市科力锐科技有限公司 数据迁移方法、设备、存储介质及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9110702B2 (en) * 2010-06-02 2015-08-18 Microsoft Technology Licensing, Llc Virtual machine migration techniques
US8490092B2 (en) * 2011-07-06 2013-07-16 Microsoft Corporation Combined live migration and storage migration using file shares and mirroring
US9239689B2 (en) * 2013-03-28 2016-01-19 Red Hat Israel, Ltd. Live migration of virtual disks

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103500146A (zh) * 2013-09-30 2014-01-08 北京邮电大学 虚拟机磁盘存储数据迁移方法和系统
CN105912428A (zh) * 2016-05-20 2016-08-31 上海数腾软件科技股份有限公司 实现源数据实时转化为虚拟机镜像的系统及方法
CN107621980A (zh) * 2016-07-13 2018-01-23 阿里巴巴集团控股有限公司 一种虚拟机迁移方法、集群控制系统和控制装置
CN111176781A (zh) * 2019-08-23 2020-05-19 腾讯科技(深圳)有限公司 虚拟机热迁移方法、装置、存储介质与电子设备
CN110795733A (zh) * 2019-10-12 2020-02-14 苏州浪潮智能科技有限公司 管理主机中文件方法和装置
CN111857968A (zh) * 2020-07-29 2020-10-30 山东超越数控电子股份有限公司 一种虚拟机的热迁移方法、系统、设备以及介质
CN112099908A (zh) * 2020-08-27 2020-12-18 腾讯科技(深圳)有限公司 虚拟机热迁移方法、装置和计算机设备
CN115469968A (zh) * 2022-08-29 2022-12-13 紫光云技术有限公司 一种v2v热迁移业务整合方法
CN116185571A (zh) * 2023-04-20 2023-05-30 深圳市科力锐科技有限公司 数据迁移方法、设备、存储介质及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于写时重定向的虚拟机磁盘迁移技术;焦术进;白静;;电视技术(23);107-111 *

Also Published As

Publication number Publication date
CN116991546A (zh) 2023-11-03

Similar Documents

Publication Publication Date Title
US11397648B2 (en) Virtual machine recovery method and virtual machine management device
US8527990B1 (en) Systems and methods for migrating virtual machines
CN110311831B (zh) 基于容器云的系统资源监控方法及相关设备
US20190012110A1 (en) Information processing apparatus, and control method of information processing system
CN116991546B (zh) 一种跨平台存储热迁移方法及装置
CN106339177A (zh) 一种创建虚拟机的方法和装置
US10620871B1 (en) Storage scheme for a distributed storage system
EP3311272B1 (en) A method of live migration
CN111352647A (zh) 虚拟机升级方法、装置、设备及存储介质
CN107145399B (zh) 一种共享内存管理方法及共享内存管理设备
CN111857968A (zh) 一种虚拟机的热迁移方法、系统、设备以及介质
US11263069B1 (en) Using unsupervised learning to monitor changes in fleet behavior
CN114675791A (zh) 一种磁盘处理方法、系统及电子设备
CN116560802B (zh) 一种基于虚拟机负载的虚拟机自适应热迁移方法及系统
CN111506388B (zh) 容器性能探测方法、容器管理平台及计算机存储介质
CN111722909A (zh) 一种虚拟机迁移方法、系统、设备及存储介质
CN112363980A (zh) 一种分布式系统的数据处理方法及装置
CN114138424B (zh) 一种虚拟机内存快照生成方法、装置及电子设备
CN115617479A (zh) Bios日志存储方法及计算设备
CN115904520A (zh) 基于pcie拓扑状态变更的配置保存方法及相关设备
CN112286622A (zh) 虚机迁移处理及策略生成方法、装置、设备及存储介质
CN108932149B (zh) 数据传输方法及装置
CN107688479B (zh) Android系统网络集群及其搭建的方法、Android系统网络集群数据处理的方法和系统
GB2522732A (en) Data migration method and systems
CN109144788B (zh) 一种重建osd的方法、装置及系统

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
GR01 Patent grant
GR01 Patent grant