CN115562911B - 虚拟机数据备份方法及装置、***、电子设备、存储介质 - Google Patents

虚拟机数据备份方法及装置、***、电子设备、存储介质 Download PDF

Info

Publication number
CN115562911B
CN115562911B CN202211560664.4A CN202211560664A CN115562911B CN 115562911 B CN115562911 B CN 115562911B CN 202211560664 A CN202211560664 A CN 202211560664A CN 115562911 B CN115562911 B CN 115562911B
Authority
CN
China
Prior art keywords
backup
virtual machine
node
message
management node
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
CN202211560664.4A
Other languages
English (en)
Other versions
CN115562911A (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.)
Nfs China Software Co ltd
Original Assignee
Nfs China Software 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 Nfs China Software Co ltd filed Critical Nfs China Software Co ltd
Priority to CN202211560664.4A priority Critical patent/CN115562911B/zh
Publication of CN115562911A publication Critical patent/CN115562911A/zh
Application granted granted Critical
Publication of CN115562911B publication Critical patent/CN115562911B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • 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

Landscapes

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

Abstract

本申请提供一种虚拟机数据备份方法及装置、***、电子设备、存储介质,涉及云平台技术领域。本申请提供的虚拟机数据备份方法应用于云平台,云平台包括管理节点和多个计算节点,虚拟机数据备份方法包括:管理节点获取待备份的虚拟机所对应的目标计算节点,根据备份任务创建备份信息,根据备份信息,创建以目标计算节点名字命名路由值的备份消息,将备份消息发送至一个或多个计算节点,一个或多个计算节点包括目标计算节点;目标计算节点根据备份消息的路由值接收对应的备份消息,根据接收到的备份消息,将虚拟机中的待备份数据备份至备份存储服务器中。本申请的技术方案能够解决对大量虚拟机进行数据备份时的备份任务并发问题。

Description

虚拟机数据备份方法及装置、***、电子设备、存储介质
技术领域
本申请涉及云平台技术领域,尤其涉及一种虚拟机数据备份方法及装置、***、电子设备、存储介质。
背景技术
数据备份恢复的意义在于当***受到黑客入侵、硬件故障、软件故障或者误操作等事故发生后,可以完整、快速、简捷、可靠地恢复原有数据,在一定的时间范围内尽可能保障***的正常运行,数据备份是保障数据安全的一个重要手段。
目前,对虚拟机进行数据备份的方式包括如下两种:
第一种方式是入侵式,即在虚拟机中安装代理软件,通过代理软件把虚拟机中的数据复制拷贝到远端的备份服务器上。第一种方式的优点是可针对不同类型的数据进行独立备份,数据量少,缺点是对不同种类的数据需要单独的工具或插件,代理模块维护较为繁琐;
第二种方式是非入侵式,即对整个虚拟机中的数据进行备份。第二种方式的优点是维护简单,缺点是要备份数据量大。
在云的环境下,云平台承载的虚拟机数量通常较大,云平台上的大量虚拟机在同一时刻进行数据备份时,采用以上任一种数据备份方式均会存在并发处理大量备份任务的瓶颈问题。
发明内容
本申请提供一种虚拟机数据备份方法及装置、***、电子设备、存储介质,可以解决对大量虚拟机进行数据备份时的备份任务并发问题。
第一方面,本申请提供一种虚拟机数据备份方法,采用如下技术方案:
所述虚拟机数据备份方法应用于云平台,所述云平台包括管理节点和多个计算节点,每台虚拟机具有对应的一个计算节点,所述虚拟机数据备份方法包括:
所述管理节点获取待备份的虚拟机所对应的目标计算节点;
所述管理节点根据备份任务创建备份信息;
所述管理节点根据所述备份信息,创建以所述目标计算节点名字命名路由值的备份消息;
所述管理节点将所述备份消息发送至一个或多个计算节点,所述一个或多个计算节点包括所述目标计算节点;
所述目标计算节点根据所述备份消息的路由值接收对应的备份消息;
所述目标计算节点根据接收到的备份消息,将所述虚拟机中的待备份数据备份至备份存储服务器中。
可选地,所述管理节点根据备份任务创建备份信息包括:
所述管理节点根据所述备份任务生成备份指令;
所述管理节点根据所述备份指令创建备份信息。
可选地,所述虚拟机数据备份方法还包括:在所述管理节点根据备份任务创建备份信息之后,将所述备份信息保存在所述管理节点的数据库中。
可选地,所述虚拟机数据备份方法还包括:在所述目标计算节点接收所述备份消息之后,所述目标计算节点向所述管理节点发送确认信息,所述管理节点根据所述确认信息更新所述备份任务的状态。
可选地,所述虚拟机数据备份方法还包括:在所述目标计算节点根据所述备份消息,对所述虚拟机中的待备份数据进行备份之后,所述目标计算节点向所述管理节点发送备份完成通知,所述管理节点根据所述备份完成通知更新所述备份任务的状态。
可选地,所述虚拟机数据备份方法还包括:在所述管理节点异常恢复后,查找未完成的备份任务,更新所有未完成的备份任务的状态。
可选地,所述更新所有未完成的备份任务的状态包括:
所述管理节点以消息模式向各计算节点发出备份任务异常通知;
各所述计算节点接收到所述备份任务异常通知后,向所述管理节点上报当前备份任务的状态;
所述管理节点根据各所述计算节点上报的当前备份任务的状态,更新所有未完成的备份任务的状态。
可选地,所述虚拟机数据备份方法还包括:在计算节点异常恢复后,所述计算节点向所述管理节点上报异常恢复,所述管理节点将所述计算节点上未完成的备份任务重新下发,所述计算节点重新执行备份任务。
可选地,所述虚拟机数据备份方法还包括:在所述计算节点重新执行所述备份任务之前,所述计算节点对所述备份存储服务器中未备份完成的数据进行清理。
可选地,所述虚拟机数据备份方法还包括:在所述计算节点向所述管理节点上报异常恢复后,所述管理节点更新所述备份任务的状态,并在所述管理节点将所述计算节点上未完成的备份任务重新下发前,再次更新所述备份任务的状态。
可选地,所述将所述虚拟机中的待备份数据备份至备份存储服务器中包括:将所述虚拟机中的所述待备份数据通过远程复制的方式拷贝到所述备份存储服务器中,得到备份文件。
可选地,所述虚拟机数据备份方法还包括:根据所述备份文件所在的磁盘ID和备份时间,命名所述备份文件。
可选地,所述虚拟机数据备份方法还包括:将所述备份文件的命名信息持久化保存在所述管理节点的数据库中。
可选地,所述虚拟机数据备份方法还包括:构建备份存储池,所述备份存储池包括多个备份存储服务器。
可选地,所述虚拟机数据备份方法还包括:建立所述备份存储池中的备份存储服务器与计算节点之间的映射关系。
可选地,所述虚拟机数据备份方法还包括:在所述目标计算节点根据所述备份消息,将所述虚拟机中的待备份数据备份至备份存储服务器中之前,根据所述映射关系,确定所述目标计算节点对应的备份存储服务器。
可选地,所述虚拟机数据备份方法还包括:将所述备份存储池中的各所述备份存储服务器注册到所述管理节点;在增加备份存储服务器时,将增加的备份存储服务器在所述管理节点进行注册,所述管理节点根据所述计算节点的总数和备份存储服务器的总数,维护所述映射关系;在删除备份存储服务器时,将删除的备份存储服务器在所述管理节点进行注销,所述管理节点根据所述计算节点的总数和备份存储服务器的总数,维护所述映射关系。
第二方面,本申请提供一种虚拟机数据备份装置,采用如下技术方案:
所述虚拟机数据备份装置应用于云平台,所述云平台包括管理节点和多个计算节点,每台虚拟机具有对应的一个计算节点,所述虚拟机数据备份装置包括:
节点获取模块,用于获取待备份的虚拟机所对应的目标计算节点;
信息创建模块,用于根据备份任务创建备份信息;
消息创建模块,用于根据所述备份信息,创建以所述目标计算节点名字命名路由值的备份消息;
消息发送模块,用于将所述备份消息发送至一个或多个计算节点,所述一个或多个计算节点包括所述目标计算节点;
消息接收模块,用于根据所述备份消息的路由值接收对应的备份消息;
备份执行模块,用于根据接收到的备份消息,将所述虚拟机中的待备份数据备份至备份存储服务器中;
其中,所述节点获取模块、所述信息创建模块、所述消息创建模块和所述消息发送模块部署于所述管理节点上,所述消息接收模块和所述备份执行模块部署于所述计算节点上。
第三方面,本申请提供一种虚拟机数据备份***,采用如下技术方案:
所述虚拟机数据备份***包括以上所述的虚拟机数据备份装置和至少一个备份存储服务器。
第四方面,本申请提供一种电子设备,采用如下技术方案:
所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行以上任一所述的虚拟机数据备份方法。
第五方面,本申请提供一种计算机可读存储介质,采用如下技术方案:
该计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行以上任一所述的虚拟机数据备份方法。
本申请实施例提供了一种虚拟机数据备份方法及装置、***、电子设备、存储介质,其中,虚拟机数据备份方法应用于云平台,云平台包括管理节点和计算节点,在应用该虚拟机数据备份方法进行数据备份的过程中,管理节点获取待备份的虚拟机所对应的目标计算节点,根据备份任务创建备份信息,根据备份信息,创建以所述目标计算节点名字命名路由值的备份消息,将备份消息发送至一个或多个计算节点,目标计算节点根据备份消息的路由值接收对应的备份消息,并根据接收到的备份消息,将虚拟机中的待备份数据备份至备份存储服务器中。在以上过程中,采取了分布式备份任务分发的方式,即管理节点分发备份任务,与待备份的虚拟机对应的目标计算节点对该备份任务进行处理,一方面,避免了同一节点或设备既管理备份任务,又执行备份任务,另一方面,大量虚拟机的备份任务可以分配到不同的目标计算节点进行处理。因此,通过以上虚拟机数据备份方法可以解决对大量虚拟机进行数据备份时的备份任务并发问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的云平台的示意图;
图2为本申请实施例提供的虚拟机数据备份方法的流程图;
图3为本申请实施例提供的备份任务状态的变化流程图;
图4为本申请实施例提供的数据备份过程示意图;
图5为本申请实施例提供的数据备份和数据恢复过程示意图;
图6为本申请实施例提供的增量备份的原理示意图;
图7为本申请实施例提供的备份存储池和计算节点的映射示意图;
图8为本申请实施例提供的虚拟机数据备份装置的示意图;
图9是本申请实施例提供的装置的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在不冲突的情况下本申请实施例中的各技术特征均可以相互结合。
本申请实施例提供一种虚拟机数据备份方法,虚拟机数据备份方法应用于云平台,如图1所示,云平台包括管理节点(也可以称为控制节点,可由一个或多个控制服务器组成)和多个计算节点(可由一个或多个计算服务器组成),每台虚拟机具有对应的一个计算节点(计算节点与虚拟机之间可以为一对一或一对多的关系),具体地,如图2所示,该虚拟机数据备份方法包括:
步骤S1、管理节点获取待备份的虚拟机所对应的目标计算节点。
管理节点可根据虚拟机与计算节点之间的对应关系,获取待备份的虚拟机所对应的目标计算节点。
步骤S2、管理节点根据备份任务创建备份信息。
示例性地,管理节点先根据备份任务生成备份指令,再根据备份指令创建备份信息。
示例性地,备份指令可以通过如下方式下发:根据备份任务选择待备份的虚拟机,通过在管理节点上设置备份策略的方式使管理节点自动下发备份指令。以上备份策略可包括备份时间、备份周期、备份类型(全量备份或者增量备份)等。例如,备份策略为每天下午3点,对某个虚拟机进行全量备份,则,管理节点自动下发的备份指令为在每天下午3点整对该虚拟机执行全量数据备份。当然,备份指令也可以由管理员通过管理节点手动触发,手动触发是指一次性立即备份。本领域技术人员可以根据实际需要进行选择。
示例性地,该备份信息可以但不限于包含创建时间、备份时间、备份对象(虚拟机)、任务状态、备份类型(增量备份或全量备份)、备份文件名称、备份存储服务器名称等。
可选地,本申请实施例中,虚拟机数据备份方法还包括:在管理节点根据备份指令创建备份信息之后,将备份信息保存在管理节点的数据库中,以便于后续对备份信息进行维护(例如,对备份信息中的任务状态进行更新)。
步骤S3、管理节点根据备份信息,创建以目标计算节点名字命名路由值的备份消息。
也就是说,将生成的备份消息的消息头赋值为目标计算节点的名字,以便于区分备份消息的接收方。
示例性地,备份消息包含备份对象(虚拟机)、备份类型(增量备份或全量备份)、备份存储服务器名称、备份时间等信息。
步骤S4、管理节点将备份消息发送至一个或多个计算节点。
以上一个或多个计算节点包括目标计算节点。
可选地,本申请实施例中,管理节点通过消息中间件将备份消息发送至一个或多个计算节点,例如,管理节点通过消息中间件将备份消息发送至所有计算节点。以上方式可以使得管理节点发送备份消息的方式简单,无需任何判断过程,且适用于所有计算节点。
步骤S5、目标计算节点根据备份消息的路由值接收对应的备份消息。
也就是说,目标计算节点根据路由值只接收属于自己节点的备份消息,以执行自己节点对应的备份任务。
可选地,本申请实施例中虚拟机数据备份方法还包括:在目标计算节点接收备份消息之后,目标计算节点向管理节点发送确认信息,管理节点根据确认信息更新备份任务的状态,以便于后续准确判断备份任务是否执行完成。示例性地,如图3所示,将备份任务的状态更新为“进行中”。
步骤S6、目标计算节点根据接收到的备份消息,将虚拟机中的待备份数据备份至备份存储服务器中。
示例性地,目标计算节点根据备份消息指示的备份对象(虚拟机)、备份类型(增量备份或全量备份)、备份存储服务器名称、备份时间等信息对虚拟机中的待备份数据进行数据备份。
可选地,如图4和图5所示,本申请实施例中将虚拟机中的待备份数据备份至备份存储服务器中包括:将虚拟机中的待备份数据通过远程复制的方式拷贝到备份存储服务器中,得到备份文件。进一步地,虚拟机数据备份方法还包括:根据备份文件所对应的磁盘ID和备份时间,命名备份文件。进一步地,虚拟机数据备份方法还包括:将备份文件的命名信息持久化保存在管理节点的数据库中。
在一个例子中,备份类型为“全量备份”,则向备份存储服务器拷贝全部待备份数据。具体过程如下:从虚拟机的存储***中导出全部磁盘(包含***盘和数据盘)数据,通过远程复制的方式拷贝到备份存储服务器上。备份文件命名由磁盘ID(该磁盘ID唯一,不会重复)和备份时间组成,如:4e863410-e076-4605-b8f4-96a4569ae6e8_20220919130100。
在又一个例子中,备份类型为“增量备份”,则对虚拟机中的数据进行快照操作,把两次快照中的增量数据导出,通过远程复制的方式拷贝到备份存储服务器上。具体过程如下:如图6所示,对某个虚拟机进行备份,会对该虚拟机的***盘、数据盘分别进行备份,以***盘为例(数据盘备份过程与***盘类似),备份时会对该磁盘做一次快照,如果是第一次备份,基于该快照导出待备份数据,如果不是第一次备份,则将当前快照和前一次快照做差值比较,将增量数据导出作为待备份数据,通过远程复制的方式拷贝到备份存储服务器上。备份文件命名由磁盘ID(该磁盘ID唯一,不会重复)和备份时间组成,如:4e863410-e076-4605-b8f4-96a4569ae6e8_20220919130100。
可选地,本申请实施例中的虚拟机数据备份方法还包括:在目标计算节点根据备份消息,对虚拟机中的待备份数据进行备份之后,目标计算节点向管理节点发送备份完成通知,管理节点根据备份完成通知更新备份任务的状态。示例性地,如图3所示,将备份任务的状态由“进行中”更新为“完成”。
当然除此之外,管理节点和计算节点还承担云平台的其他基础功能,例如,管理节点主要负责云平台资源调度、认证、计算、存储、网络等管理,计算节点是承载业务的节点,用来承载虚拟机的运行。
本申请实施例提供了一种虚拟机数据备份方法,应用于云平台,云平台包括管理节点和多个计算节点,每台虚拟机具有对应的计算节点,在应用该虚拟机数据备份方法进行数据备份的过程中,管理节点获取待备份的虚拟机所对应的目标计算节点,根据备份任务创建备份信息,根据备份信息,创建以所述目标计算节点名字命名路由值的备份消息,将备份消息发送至一个或多个计算节点,目标计算节点根据备份消息的路由值接收对应的备份消息,并根据接收到的备份消息,将虚拟机中的待备份数据备份至备份存储服务器中。在以上过程中,采取了分布式备份任务分发的方式,即管理节点分发备份任务,与待备份的虚拟机对应的目标计算节点对该备份任务进行处理,一方面,避免了同一节点或设备既管理备份任务,又执行备份任务,另一方面,大量虚拟机的备份任务可以分配到不同的目标计算节点进行处理。因此,通过以上虚拟机数据备份方法可以解决对大量虚拟机进行数据备份时的备份任务并发问题。
采用以上虚拟机数据备份方法进行数据备份后,如因意外或误操作导致虚拟机中的数据丢失时,如图5所示,可通过以下方式进行数据恢复:
全量备份数据的恢复:选择要进行数据恢复的虚拟机,选择某个时间点的备份文件,从备份存储服务器中远程拉取该备份文件,并将该备份文件恢复到虚拟机对应的磁盘上。
增量备份数据的恢复:选择要进行数据恢复的虚拟机,选择某个时间点,从备份存储服务器中远程拉取该时间点之前的所有备份文件,并将该时间点之前的所有备份文件进行合并,合并成一个总备份文件,将该总备份文件恢复到虚拟机对应的磁盘上。需要说明的是,增量备份出的数据有依赖关系,数据恢复时需要按照依赖关系进行备份文件的合并,比如已产生4个备份文件file1、file2、file3、file4,当需要恢复时需要把4个备份文件合并成一个总备份文件后,再恢复到虚拟机中。
可选地,本申请实施例中的虚拟机数据备份方法还包括:在管理节点异常恢复后,查找未完成的备份任务(例如,通过查询管理节点中的数据库的方式查找未完成的备份任务),更新所有未完成的备份任务的状态。通过以上方式,即使在云平台的实际运行过程中,管理节点出现异常(如断电、故障等)时,在异常恢复后也能及时更新所有未完成的备份任务的状态,使备份任务的状态与实际执行情况保持一致。例如,在管理节点异常时,某一备份任务已经执行完成,则将该备份任务的状态由“进行中”更新为“完成”。示例性地,本申请实施例中,更新所有未完成的备份任务的状态包括:管理节点以消息模式向各计算节点发出备份任务异常通知;各计算节点接收到备份任务异常通知后,向管理节点上报当前备份任务的状态;管理节点根据各计算节点上报的当前备份任务的状态,更新所有未完成的备份任务的状态。
可选地,虚拟机数据备份方法还包括:在计算节点异常恢复后,计算节点向管理节点上报异常恢复,管理节点将计算节点上未完成的备份任务重新下发,计算节点重新执行备份任务,重新下发和重新执行的方式与首次下发和执行的方式相同,参照之前步骤即可,此处不再进行赘述。通过以上方式,即使在云平台的实际运行过程中,计算节点出现异常(如断电、故障等)时,在异常恢复后也能重新执行备份任务。
示例性地,本申请实施例中,虚拟机数据备份方法还包括:在计算节点重新执行备份任务之前,计算节点对备份存储服务器中未备份完成的数据进行清理。这些未备份完成的数据也可称为脏数据,其没有任何实际作用,仅占据备份存储服务器中的存储空间。
可选地,本申请实施例中,虚拟机数据备份方法还包括:在计算节点向管理节点上报异常恢复后,管理节点更新备份任务的状态,并在管理节点将计算节点上未完成的备份任务重新下发前,再次更新备份任务的状态。示例性地,如图3所示,在计算节点异常恢复后,计算节点向管理节点上报异常恢复,管理节点则将备份任务状态更新为“失败”,并检查(可通过查询备份信息的方式进行检查)该计算节点上是否存在未完成的备份任务,当存在未完成的备份任务后,将备份任务状态重置为“重建”,重新下发备份任务,计算节点首先对未完成的脏数据进行清理,然后重新进行备份任务的执行。
需要补充的是,当备份信息保存在管理节点的数据库中时,以上所提到的更新备份任务的状态指的就是更新数据库中的备份信息包含的任务状态。
可选地,本申请实施例中的虚拟机数据备份方法还包括:构建备份存储池,如图7所示,备份存储池包括多个备份存储服务器。通过此方式可以实现备份存储服务器的横向扩展,进而能够扩充备份存储服务器的存储性能,解决现存的瓶颈问题。备份存储服务器的数量可根据备份存储服务器网络、磁盘IO的性能、云平台规模和备份业务的负载情况进行确定。示例性地,该备份存储池数据结构可以包含:备份存储池名称,ID,创建时间,备份存储服务器名称(全局唯一)等。
可选地,本申请实施例中的虚拟机数据备份方法还包括:建立备份存储池中的备份存储服务器与计算节点之间的映射关系,也可称为备份存储服务器对应计算节点列表。例如,如图7所示,该映射关系为第1个备份存储服务器对应第1个和第2个计算节点,第2个备份存储服务器对应第3个和第4个计算节点,以此类推。该映射关系可以包含在备份存储池数据结构中。通过该映射关系,可以合理向各计算节点分配备份存储池的存储资源,避免大量计算节点在执行备份任务时,将备份数据均拷贝至同一个备份存储服务器上而造成的传输效率低的问题。可选地,本申请实施例中的虚拟机数据备份方法中,先根据映射关系,确定目标计算节点对应的备份存储服务器,目标计算节点再根据备份消息,将虚拟机中的待备份数据备份至备份存储服务器中。
可选地,本申请实施例中的虚拟机数据备份方法还包括:在增加或减少备份存储服务器时,维护映射关系,以使备份存储池的存储资源分配持续处于较优状态。
示例性地,虚拟机数据备份方法还包括:将备份存储池中的各备份存储服务器注册到管理节点。具体可以为,云平台完成部署后,备份存储池默认配置一个备份存储服务器,同时注册到管理节点,管理节点给备份存储池和备份存储服务器制定唯一编号,并维护对应的信息,只有一个备份存储服务器时所有的计算节点对应到该备份存储服务器;当增加备份存储服务器时,将该备份存储服务器进行注册,以及在删除备份存储服务器时,将删除的备份存储服务器进行注销。
基于以上内容,在增加或减少备份存储服务器时,维护映射关系,对备份存储池进行管理的过程包括:
(2)当增加一个备份存储服务器时,该备份存储服务器在管理节点进行注册,管理节点对该备份存储服务器进行维护,同时根据计算节点数量进行计算,用计算节点总数除以备份存储服务器总数,将对应的映射关系维护起来。备份任务调度时根据计算节点和备份存储服务器的映射关系进行备份数据的存放,例如,云平台包括10个计算节点(云平台中计算节点总数是设计云平台方案时确定的,通常是一个固定值),标记为C1~C10,备份存储池中之前有1个备份存储服务器,增加了1个备份存储服务器后,共有2个备份存储服务器,标记为 S1和S2,计算节点总数10除以备份存储服务器总数2的结果为5,则每个备份存储服务器对应5个计算节点,可以使C1~C5 对应S1,C6~C10对应S2。在其他情况下如果无法整除,则可使其中一个备份存储服务器对应较少的计算节点即可。
(3)当删除一个备份存储服务器时,该备份存储服务器在管理节点进行注销,同时根据计算节点数量重新进行计算映射关系,用计算节点总数除以备份存储服务器总数,将对应的映射关系维护起来。需要注意的是,注销备份存储服务器时应确保其中没有备份数据。例如,云平台包括10个计算节点,标记为C1~C10,备份存储池中之前有3个备份存储服务器,删除了1个备份存储服务器后,剩余2个备份存储服务器,标记为 S1和S2,计算节点总数10除以备份存储服务器总数2的结果为5,则每个备份存储服务器对应5个计算节点,可以使C1~C5 对应S1,C6~C10对应S2。在其他情况下如果无法整除,则可使其中一个备份存储服务器对应较少的节点即可。
此外,本申请实施例还提供一种虚拟机数据备份装置,虚拟机数据备份装置应用于云平台,云平台包括管理节点和计算节点,每台虚拟机具有对应的一个计算节点,如图8所示,虚拟机数据备份装置包括:
节点获取模块10,用于获取待备份的虚拟机所对应的目标计算节点;
信息创建模块20,用于根据备份任务创建备份信息;
消息创建模块30,用于根据备份信息,创建以目标计算节点名字命名路由值的备份消息;
消息发送模块40,用于将备份消息发送至一个或多个计算节点,一个或多个计算节点包括目标计算节点;
消息接收模块50,用于根据备份消息的路由值接收对应的备份消息;
备份执行模块60,用于根据接收到的备份消息,将虚拟机中的待备份数据备份至备份存储服务器中;
其中,节点获取模块10、信息创建模块20、消息生成模块30和消息发送模块40部署于管理节点上,消息接收模块50和备份执行模块60部署于计算节点上。
在图8中,仅示出了一个计算节点,管理节点与其他计算节点的连接方式与图8所示相同,本领域技术人员基于以上内容即可得出。另外,每个计算节点可以包括一个或多个备份执行模块,用来执行备份任务。
可选地,本申请实施例中消息发送模块40为消息中间件,例如,ActiveMQ、RabbitMQ、Kafka、RocketMQ等消息中间件。
可选地,本申请实施例中的虚拟机数据备份装置还包括存储模块和数据库,存储模块和数据库部署于管理节点上,存储模块用于在管理节点根据备份指令创建备份信息之后,将备份信息保存在管理节点的数据库中,和/或,将备份文件的命名信息持久化保存在管理节点的数据库中。
可选地,本申请实施例中的虚拟机数据备份装置还包括反馈模块和状态更新模块,反馈模块部署于计算节点上,状态更新模块部署于管理节点上。其中,
反馈模块用于在消息接收模块接收备份消息之后,向管理节点发送确认信息,和/或,在根据备份消息,对虚拟机中的待备份数据进行备份之后,向管理节点发送备份完成通知,和/或,在接收到备份任务异常通知后,向管理节点上报当前备份任务的状态,和/或,向管理节点上报异常恢复。
状态更新模块用于接收确认信息,并根据确认信息更新备份任务的状态,和/或,根据备份完成通知更新备份任务的状态,和/或,在管理节点异常恢复后,根据计算节点上报的当前备份任务的状态,更新所有未完成的备份任务的状态,和/或,在计算节点向管理节点上报异常恢复后,更新备份任务的状态,在管理节点将计算节点上未完成的备份任务重新下发前,再次更新备份任务的状态。
可选地,本申请实施例中的虚拟机数据备份装置还包括清理模块,用于在计算节点重新执行备份任务之前,对备份存储服务器中未备份完成的数据进行清理。清理模块部署于计算节点上。
可选地,本申请实施例中的虚拟机数据备份装置还包括构建模块,用于构建备份存储池,备份存储池包括多个备份存储服务器。构建模块部署于管理节点上。
可选地,本申请实施例中的虚拟机数据备份装置还包括关系建立模块,用于建立备份存储服务器与计算节点之间的映射关系。关系建立模块部署于管理节点上。
可选地,本申请实施例中的虚拟机数据备份装置还包括关系确定模块,用于在目标计算节点根据备份消息,将虚拟机中的待备份数据备份至备份存储服务器中之前,根据映射关系,确定目标计算节点对应的备份存储服务器。关系确定模块部署于管理节点上。
可选地,本申请实施例中的虚拟机数据备份装置还包括注册模块,注册模块用于将备份存储池中的各备份存储服务器注册到管理节点,以及,在增加备份存储服务器时,将增加的备份存储服务器在管理节点进行注册,以及在删除备份存储服务器时,将删除的备份存储服务器在管理节点进行注销。注册模块部署于管理节点上。
可选地,本申请实施例中的虚拟机数据备份装置还包括关系维护模块,用于在增加或删除备份存储服务器时,根据计算节点的总数和备份存储服务器的总数,维护映射关系。关系维护模块部署于管理节点上。
需要说明的是,本申请实施例中虚拟机数据备份方法的相关细节均适用于其对应的模块,此处不再进行赘述。
此外,本申请实施例还提供一种虚拟机数据备份***,该虚拟机数据备份***包括以上所述的虚拟机数据备份装置和至少一个备份存储服务器。
此外,本申请实施例还提供一种电子设备,该电子设备包括:
至少一个处理器;以及,
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行以上任一所述的虚拟机数据备份方法。
此外,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行以上任一所述的虚拟机数据备份方法。
本申请的实施例可被实现为使用任意适当的硬件,固件,软件,或及其任意组合进行想要的配置的装置,该装置可包括:终端设备、服务器(集群)等电子设备。图9示意性地示出了可被用于实现本申请中所述的各个实施例的示例性装置1100 。
对于一个实施例,图9示出了示例性装置1100,该装置具有一个或多个处理器1102、被耦合到(一个或多个)处理器1102中的至少一个的控制模块(芯片组)1104、被耦合到控制模块1104的存储器1106、被耦合到控制模块1104的非易失性存储器(NVM)/存储设备1108、被耦合到控制模块1104的一个或多个输入/输出设备1110,以及被耦合到控制模块1104的网络接口1112。
处理器1102可包括一个或多个单核或多核处理器,处理器1102可包括通用处理器或专用处理器(例如图形处理器、应用处理器、基频处理器等)的任意组合。在一些实施例中,装置1100 能够作为本申请实施例中所述终端设备、服务器(集群)等设备。
在一些实施例中,装置1100 可包括具有指令1114的一个或多个计算机可读介质(例如,存储器1106或NVM/ 存储设备1108) 以及与该一个或多个计算机可读介质相合并被配置为执行指令1114以实现模块从而执行本申请中所述的动作的一个或多个处理器1102。
对于一个实施例,控制模块1104可包括任意适当的接口控制器,以向(一个或多个)处理器1102中的至少一个和/或与控制模块1104通信的任意适当的设备或组件提供任意适当的接口。
控制模块1104可包括存储器控制器模块,以向存储器1106提供接口。存储器控制器模块可以是硬件模块、软件模块和/或固件模块。
存储器1106可被用于例如为装置1100加载和存储数据和/或指令1114。对于一个实施例,存储器1106可包括任意适当的易失性存储器,例如,适当的DRAM。在一些实施例中,存储器1106可包括双倍数据速率类型四同步动态随机存取存储器(DDR4SDRAM) 。
对于一个实施例,控制模块1104可包括一个或多个输入/输出控制器,以向NVM/存储设备1108及(一个或多个)输入/输出设备1110 提供接口。
例如,NVM/存储设备1108可被用于存储数据和/或指令1114。NVM/存储设备1108可包括任意适当的非易失性存储器(例如,闪存)和/或可包括任意适当的(一个或多个)非易失性存储设备(例如,一个或多个硬盘驱动器(HDD) 、一个或多个光盘(CD) 驱动器和/或一个或多个数字通用光盘(DVD) 驱动器)。
NVM/存储设备1108可包括在物理上作为装置1100 被安装在其上的设备的一部分的存储资源,或者其可被该设备访问可不必作为该设备的一部分。例如, NVM/存储设备1108可通过网络经由(一个或多个)输入/输出设备1110 进行访问。
(一个或多个)输入/输出设备1110 可为装置1100 提供接口以与任意其他适当的设备通信,输入/输出设备1110可以包括通信组件、音频组件、传感器组件等。网络接口1112可为装置1100 提供接口以通过一个或多个网络通信,装置1100 可根据一个或多个无线网络标准和/或协议中的任意标准和/或协议来与无线网络的一个或多个组件进行无线通信,例如接入基于通信标准的无线网络,如WiFi、2G、3G、4G、5G等,或它们的组合进行无线通信。
对于一个实施例,(一个或多个)处理器1102中的至少一个可与控制模块1104的一个或多个控制器(例如,存储器控制器模块) 的逻辑封装在一起。对于一个实施例,(一个或多个)处理器1102中的至少一个可与控制模块1104的一个或多个控制器的逻辑封装在一起以形成***级封装(SiP) 。对于一个实施例, (一个或多个)处理器1102中的至少一个可与控制模块1104的一个或多个控制器的逻辑集成在同一模具上。对于一个实施例, (一个或多个)处理器1102中的至少一个可与控制模块1104的一个或多个控制器的逻辑集成在同一模具上以形成片上***(SoC) 。
在各个实施例中,装置1100可以但不限于是:服务器、台式计算设备或移动计算设备(例如,膝上型计算设备、手持计算设备、平板电脑、上网本等)等终端设备。在各个实施例中,装置1100 可具有更多或更少的组件和/或不同的架构。例如,在一些实施例中,装置1100包括一个或多个摄像机、键盘、液晶显示器(LCD) 屏幕(包括触屏显示器)、非易失性存储器端口、多个天线、图形芯片、专用集成电路(ASIC) 和扬声器。
其中,检测装置中可采用主控芯片作为处理器或控制模块,传感器数据、位置信息等存储到存储器或NVM/存储设备中,传感器组可作为输入/输出设备,通信接口可包括网络接口。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本申请实施例是参照根据本申请实施例的方法、终端设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图的一个流程或多个流程和/或方框图的一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图的一个流程或多个流程和/或方框图的一个方框或多个方框中指定的功能。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (10)

1.一种虚拟机数据备份方法,应用于云平台,所述云平台包括管理节点和多个计算节点,每台虚拟机具有对应的一个计算节点,其特征在于,所述虚拟机数据备份方法包括:
所述管理节点获取待备份的虚拟机所对应的目标计算节点;
所述管理节点根据备份任务创建备份信息;
所述管理节点根据所述备份信息,创建以所述目标计算节点名字命名路由值的备份消息;
所述管理节点将所述备份消息发送至多个计算节点,所述多个计算节点包括所述目标计算节点;
所述目标计算节点根据所述备份消息的路由值接收对应的备份消息;
所述目标计算节点根据接收到的备份消息,将所述虚拟机中的待备份数据备份至备份存储服务器中;
所述虚拟机数据备份方法还包括:
构建备份存储池,所述备份存储池包括多个备份存储服务器;
建立所述备份存储池中的备份存储服务器与计算节点之间的映射关系;
在所述目标计算节点根据所述备份消息,将所述虚拟机中的待备份数据备份至备份存储服务器中之前,根据所述映射关系,确定所述目标计算节点对应的备份存储服务器。
2.根据权利要求1所述的虚拟机数据备份方法,其特征在于,还包括:在所述管理节点根据备份任务创建备份信息之后,将所述备份信息保存在所述管理节点的数据库中。
3.根据权利要求1所述的虚拟机数据备份方法,其特征在于,还包括:在所述管理节点异常恢复后,查找未完成的备份任务,更新所有未完成的备份任务的状态。
4.根据权利要求3所述的虚拟机数据备份方法,其特征在于,所述更新所有未完成的备份任务的状态包括:
所述管理节点以消息模式向各计算节点发出备份任务异常通知;
各所述计算节点接收到所述备份任务异常通知后,向所述管理节点上报当前备份任务的状态;
所述管理节点根据各所述计算节点上报的当前备份任务的状态,更新所有未完成的备份任务的状态。
5.根据权利要求1所述的虚拟机数据备份方法,其特征在于,还包括:在计算节点异常恢复后,所述计算节点向所述管理节点上报异常恢复,所述管理节点将所述计算节点上未完成的备份任务重新下发,所述计算节点重新执行备份任务。
6.根据权利要求1所述的虚拟机数据备份方法,其特征在于,还包括:将所述备份存储池中的各所述备份存储服务器注册到所述管理节点;在增加备份存储服务器时,将增加的备份存储服务器在所述管理节点进行注册,所述管理节点根据所述计算节点的总数和备份存储服务器的总数,维护所述映射关系;在删除备份存储服务器时,将删除的备份存储服务器在所述管理节点进行注销,所述管理节点根据所述计算节点的总数和备份存储服务器的总数,维护所述映射关系。
7.一种虚拟机数据备份装置,应用于云平台,所述云平台包括管理节点和多个计算节点,每台虚拟机具有对应的一个计算节点,所述虚拟机数据备份装置包括:
节点获取模块,用于获取待备份的虚拟机所对应的目标计算节点;
信息创建模块,用于根据备份任务创建备份信息;
消息创建模块,用于根据所述备份信息,创建以所述目标计算节点名字命名路由值的备份消息;
消息发送模块,用于将所述备份消息发送至多个计算节点,所述多个计算节点包括所述目标计算节点;
消息接收模块,用于根据所述备份消息的路由值接收对应的备份消息;
备份执行模块,用于根据接收到的备份消息,将所述虚拟机中的待备份数据备份至备份存储服务器中;
其中,所述节点获取模块、所述信息创建模块、所述消息创建模块和所述消息发送模块部署于所述管理节点上,所述消息接收模块和所述备份执行模块部署于所述计算节点上;
所述虚拟机数据备份装置还包括:
构建模块,用于构建备份存储池,所述备份存储池包括多个备份存储服务器;
关系建立模块,用于建立所述备份存储池中的备份存储服务器与计算节点之间的映射关系;
关系确定模块,用于在所述目标计算节点根据所述备份消息,将所述虚拟机中的待备份数据备份至备份存储服务器中之前,根据所述映射关系,确定所述目标计算节点对应的备份存储服务器。
8.一种虚拟机数据备份***,其特征在于,包括如权利要求7所述的虚拟机数据备份装置和至少一个备份存储服务器。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1~6任一所述的虚拟机数据备份方法。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行权利要求1~6任一所述的虚拟机数据备份方法。
CN202211560664.4A 2022-12-07 2022-12-07 虚拟机数据备份方法及装置、***、电子设备、存储介质 Active CN115562911B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211560664.4A CN115562911B (zh) 2022-12-07 2022-12-07 虚拟机数据备份方法及装置、***、电子设备、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211560664.4A CN115562911B (zh) 2022-12-07 2022-12-07 虚拟机数据备份方法及装置、***、电子设备、存储介质

Publications (2)

Publication Number Publication Date
CN115562911A CN115562911A (zh) 2023-01-03
CN115562911B true CN115562911B (zh) 2023-04-25

Family

ID=84770526

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211560664.4A Active CN115562911B (zh) 2022-12-07 2022-12-07 虚拟机数据备份方法及装置、***、电子设备、存储介质

Country Status (1)

Country Link
CN (1) CN115562911B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116881052B (zh) * 2023-09-07 2023-11-24 上海凯翔信息科技有限公司 一种分布式存储的数据修复***
CN116991562B (zh) * 2023-09-28 2023-12-26 宁波银行股份有限公司 一种数据处理方法、装置、电子设备及存储介质
CN117608494B (zh) * 2023-12-06 2024-06-07 太极计算机股份有限公司 云计算集群的存储方法及***

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015096500A1 (zh) * 2013-12-24 2015-07-02 华为技术有限公司 一种业务迁移方法、装置和一种容灾***
CN108287747A (zh) * 2017-01-09 2018-07-17 ***通信集团贵州有限公司 用于虚拟机备份的方法和设备
CN113127258A (zh) * 2019-12-30 2021-07-16 华为技术有限公司 一种数据备份方法、装置、设备及介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120072685A1 (en) * 2010-09-16 2012-03-22 Hitachi, Ltd. Method and apparatus for backup of virtual machine data
CN105245565A (zh) * 2015-08-28 2016-01-13 浪潮集团有限公司 一种云***、管理节点及数据获取的方法
CN110058959B (zh) * 2018-01-18 2023-06-16 伊姆西Ip控股有限责任公司 数据备份方法、设备和计算机程序产品
CN109669644A (zh) * 2019-01-02 2019-04-23 浪潮商用机器有限公司 一种数据存储的方法和装置
CN112311568B (zh) * 2019-07-26 2022-06-03 中移(苏州)软件技术有限公司 一种虚拟网络创建方法、装置及计算机存储介质
CN111651305B (zh) * 2020-08-05 2020-11-03 腾讯科技(深圳)有限公司 一种虚拟机备份方法、组件及云计算***
CN113986450A (zh) * 2021-09-28 2022-01-28 新华三大数据技术有限公司 一种虚拟机备份方法及装置
CN114995958A (zh) * 2022-06-24 2022-09-02 济南浪潮数据技术有限公司 一种虚拟化平台信息一致性的控制方法、装置及介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015096500A1 (zh) * 2013-12-24 2015-07-02 华为技术有限公司 一种业务迁移方法、装置和一种容灾***
CN108287747A (zh) * 2017-01-09 2018-07-17 ***通信集团贵州有限公司 用于虚拟机备份的方法和设备
CN113127258A (zh) * 2019-12-30 2021-07-16 华为技术有限公司 一种数据备份方法、装置、设备及介质

Also Published As

Publication number Publication date
CN115562911A (zh) 2023-01-03

Similar Documents

Publication Publication Date Title
CN115562911B (zh) 虚拟机数据备份方法及装置、***、电子设备、存储介质
US9870291B2 (en) Snapshotting shared disk resources for checkpointing a virtual machine cluster
CN107526659B (zh) 用于失效备援的方法和设备
US9098439B2 (en) Providing a fault tolerant system in a loosely-coupled cluster environment using application checkpoints and logs
US8954579B2 (en) Transaction-level health monitoring of online services
WO2017067484A1 (zh) 一种虚拟化数据中心调度***和方法
CN109656742B (zh) 一种节点异常处理方法、装置及存储介质
CN105229613A (zh) 协调分布式***中的故障恢复
US9052833B2 (en) Protection of former primary volumes in a synchronous replication relationship
CN110795503A (zh) 分布式存储***的多集群数据同步方法及相关装置
CN103562904A (zh) 在服务的次要位置重放作业
US20140068620A1 (en) Task execution & management in a clustered computing environment
CN105589756B (zh) 批处理集群***以及方法
CN104750573A (zh) 分布式数据***数据节点的全局一致性备份和还原方法
CN109254876A (zh) 云计算***中数据库的管理方法和装置
CN114138732A (zh) 一种数据处理方法及装置
CN115658390A (zh) 容器容灾方法、***、装置、设备及计算机可读存储介质
US11042454B1 (en) Restoration of a data source
CN112600690B (zh) 一种配置数据同步方法、装置、设备及存储介质
WO2024041363A1 (zh) 无服务器架构分布式容错***、方法、装置、设备及介质
CN107943615B (zh) 基于分布式集群的数据处理方法与***
CN117992283A (zh) 云主机备份方法、装置、计算机设备及存储介质
CN116389233B (zh) 容器云管理平台主备切换***、方法、装置和计算机设备
CN112269693B (zh) 一种节点自协调方法、装置和计算机可读存储介质
CN111208949B (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
GR01 Patent grant
GR01 Patent grant