CN112395133A - 基于虚拟机的数据备份方法、装置和计算机设备 - Google Patents

基于虚拟机的数据备份方法、装置和计算机设备 Download PDF

Info

Publication number
CN112395133A
CN112395133A CN202011287787.6A CN202011287787A CN112395133A CN 112395133 A CN112395133 A CN 112395133A CN 202011287787 A CN202011287787 A CN 202011287787A CN 112395133 A CN112395133 A CN 112395133A
Authority
CN
China
Prior art keywords
backup
virtual machine
data
time period
preset
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
CN202011287787.6A
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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN202011287787.6A priority Critical patent/CN112395133A/zh
Publication of CN112395133A publication Critical patent/CN112395133A/zh
Pending legal-status Critical Current

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
    • 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/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments

Abstract

本申请涉及数据处理领域,提供一种基于虚拟机的数据备份方法、装置和计算机设备,方法包括:在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接,其中,备份时间段为指定虚拟机不会触发数据写操作的时间段;向备份代理客户端发送备份指令,以使备份代理客户端将指定虚拟机的系统缓存数据发送至底层存储系统;获取底层存储系统对用于存储系统缓存数据的目标卷进行打快照操作后生成的快照数据;对快照数据进行数据复制处理得到复制数据;将复制数据备份至备份存储系统。本申请简化了虚拟机的数据备份流程,提高了虚拟机的数据备份效率。本申请还可以应用于区块链领域,所述快照数据等数据可以存储于区块链上。

Description

基于虚拟机的数据备份方法、装置和计算机设备
技术领域
本申请涉及数据处理技术领域,具体涉及一种基于虚拟机的数据备份方法、装置和计算机设备。
背景技术
对基于KVM(Kernel-based Virtual Machine)虚拟化技术的虚拟机进行数据备份时,目前通用的备份方案是利用LIBVIRT与QEMU来实现的,QEMU是一套开源的模拟计算机软件,在很多应用场景下,它为KVM虚拟机提供IO虚拟化,LIBVIRT是用于管理虚拟化平台的开源的API,它被用来管理KVM虚拟机。具体的,现有对KVM虚拟机进行数据备份的具体流程为:备份工具触发数据备份任务;备份工具通过LIBVIRT向QEMU调用Hook script,暂停虚拟机应用的读写;备份工具通过LIBVIRT向QEMU调用Linux内核函数冻结虚拟机文件系统;备份工具通过LIBVIRT向QEMU调用Linux内核函数将虚拟机的系统缓存数据发送至底层存储系统;底层存储系统对与系统缓存数据对应的目标卷进行打快照操作,生成快照数据;备份工具通过LIBVIRT向QEMU调用Linux内核函数解冻虚拟机文件系统;备份工具通过LIBVIRT向QEMU调用Hook script,恢复虚拟机应用的正常读写;备份工具对快照数据进行数据复制处理,备份数据值备份存储系统。然而发明人意识到,上述的备份流程繁琐,涉及与LIBVIRT和QEMU的交互操作过多,导致虚拟机的数据备份效率低下。
发明内容
本申请的主要目的为提供一种基于虚拟机的数据备份方法、装置、计算机设备和存储介质,旨在解决现有的KVM虚拟机的数据备份流程繁琐,数据备份效率低下的技术问题。
本申请提出一种基于虚拟机的数据备份方法,所述方法包括步骤:
在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接,其中,所述备份时间段为所述指定虚拟机不会触发数据写操作的时间段;
在与所述备份代理客户端成功建立通讯连接后,向所述备份代理客户端发送备份指令,以使所述备份代理客户端基于所述备份指令,将所述指定虚拟机的系统缓存数据发送至底层存储系统;
获取所述底层存储系统对用于存储所述系统缓存数据的目标卷进行打快照操作后生成的对应的快照数据;
基于所述快照数据,对所述快照数据进行数据复制处理,得到对应的复制数据;
将所述复制数据备份至预设的备份存储系统。
可选地,所述与所述指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前,包括:
获取预设的备份代理程序;
将所述备份代理程序发送至所述指定虚拟机,以及将与所述备份代理程序对应的执行启动指令发送至所述指定虚拟机,以使得所述指定虚拟机在成功执行启动所述备份代理程序后生成所述备份代理客户端。
可选地,所述在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前,包括:
获取所述指定虚拟机在预设时间周期的指定时间段内的资源消耗数据;
对所述预设时间周期、所述指定时间段与所述资源消耗数据进行统计分析,生成相应的资源消耗统计表;
基于所述资源消耗统计表,分别获取所述指定虚拟机在所述预设时间周期中每一天的资源消耗数据为0的第一时间段;
计算所有所述第一时间段的交集,得到对应的第二时间段;
将所述第二时间段作为所述备份时间段。
可选地,所述在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接的步骤,包括:
获取预先输入的备份信息,其中所述备份信息携带备份开始时间与需要进行备份的指定虚拟机;
判断所述备份开始时间是否处于所述备份时间段内;
若所述备份开始时间处于所述备份时间段内,则在当前时间到达所述备份开始时间时,与所述指定虚拟机内预设的备份代理客户端建立通讯连接。
可选地,所述备份时间段包括备份起始端时间与备份末尾端时间,所述在当前时间到达所述备份开始时间时,与所述指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前,包括:
获取所述备份时间段中包含的所述备份末尾端时间;
计算所述备份末尾端时间与所述备份开始时间的差值;
获取预设的正常备份时间阈值;
判断所述差值是否大于所述正常备份时间阈值;
若所述差值大于所述正常备份时间阈值,则生成在当前时间到达所述备份开始时间时,与所述指定虚拟机内预设的备份代理客户端建立通讯连接的第一连接指令。
可选地,所述在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前,包括:
向所述指定虚拟机发送状态检测包;
判断是否在预设时间段内接收到所述指定虚拟机返回的与所述状态检测包对应的反馈信息;
若在预设时间段内接收到所述指定虚拟机返回的所述反馈信息,判定所述指定虚拟机当前处于正常状态,并生成在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接的第二连接指令。
可选地,所述将所述复制数据备份至预设的备份存储系统的步骤之后,包括:
判断所述将所述复制数据备份至所述备份存储系统的备份过程是否已成功完成;
若所述将所述复制数据备份至所述备份存储系统的备份过程已成功完成,生成备份完成的提示信息;
向所述备份代理客户端发送数据删除指令,以使所述备份代理客户端基于所述数据删除指令对所述快照数据进行删除处理。
本申请还提供一种基于虚拟机的数据备份装置,包括:
连接模块,用于在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接,其中,所述备份时间段为所述指定虚拟机不会触发数据写操作的时间段;
第一发送模块,用于在与所述备份代理客户端成功建立通讯连接后,向所述备份代理客户端发送备份指令,以使所述备份代理客户端基于所述备份指令,将所述指定虚拟机的系统缓存数据发送至底层存储系统;
第一获取模块,用于获取所述底层存储系统对用于存储所述系统缓存数据的目标卷进行打快照操作后生成的对应的快照数据;
复制模块,用于基于所述快照数据,对所述快照数据进行数据复制处理,得到对应的复制数据;
备份模块,用于将所述复制数据备份至预设的备份存储系统。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本申请中提供的基于虚拟机的数据备份方法、装置、计算机设备和存储介质,具有以下有益效果:
本申请中提供的基于虚拟机的数据备份方法、装置、计算机设备和存储介质,通过在备份时间段内进行指定虚拟机的数据备份处理,跳过了寄宿主机层的交互,而采用直接与指定虚拟机内的备份代理客户端进行通讯的方式,通过与该备份代理客户端进行交互来快速地实现对于指定虚拟机内的系统缓存数据的数据备份处理,有效地减少了数据备份过程中备份工具与寄宿主机层的频繁交互,简化了指定虚拟机的数据备份流程,进而提高了指定虚拟机的数据备份效率。且数据备份过程由于不再依赖LIBVIRT模块与QEMU模块,能够有效避免LIBVIRT模块与QEMU模块在进行交互的过程中出现故障的风险,从而提升数据备份的成功率。另外,通过在备份时间段内进行对于指定虚拟机的数据备份处理,从而取消了指定虚拟机在进行数据备份前的冻结操作和数据备份后解冻操作,有效避免由于执行冻结或解冻操作的过程中因故障而导致指定虚拟机卡死,保障指定虚拟机内的应用业务不会因备份出错而受影响。同时也取消了在数据备份过程对于Hook script机制的调用,用户不需要根据应用自定义Hook script,降低用户实现指定虚拟机的数据备份的复杂度和难度,提升用户的备份体验。
附图说明
图1是本申请一实施例的基于虚拟机的数据备份方法的流程示意图;
图2是本申请一实施例的基于虚拟机的数据备份装置的结构示意图;
图3是本申请一实施例的计算机设备的结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用于解释本申请,并不用于限定本申请。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
参照图1,本申请一实施例的基于虚拟机的数据备份方法,包括:
S1:在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接,其中,所述备份时间段为所述指定虚拟机不会触发数据写操作的时间段;
S2:在与所述备份代理客户端成功建立通讯连接后,向所述备份代理客户端发送备份指令,以通过所述备份代理客户端将所述指定虚拟机的系统缓存数据发送至底层存储系统;
S3:获取所述底层存储系统对用于存储所述系统缓存数据的目标卷进行打快照操作后生成的对应的快照数据;
S4:基于所述快照数据,对所述快照数据进行数据复制处理,得到对应的复制数据;
S5:将所述复制数据备份至预设的备份存储系统。
如上述步骤S1至S5所述,本方法实施例的执行主体为一种基于虚拟机的数据备份装置。在实际应用中,上述基于虚拟机的数据备份装置可以通过虚拟装置,例如软件代码实现,也可以通过写入或集成有相关执行代码的实体装置实现,且可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。上述基于虚拟机的数据备份装置具体可为备份工具,该备份工具可为执行安装由用户编写生成的备份程序后生成的工具。本实施例中的基于虚拟机的数据备份装置,能够简化虚拟机的数据备份流程,降低虚拟机的数据备份的复杂度,提高备份效率。具体地,在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接。其中,上述备份时间段是通过对指定虚拟机的历史资源消耗数据进行分析处理后确定生成的指定虚拟机的空闲时间段,且在该空闲时间段,即上述备份空闲时间段内指定虚拟机内的应用不会触发任何的数据写操作。另外,对于执行与指定虚拟机内预设的备份代理客户端建立通讯连接的连接操作的时间点不作具体限定,只需保证该连接操作的时间点处于上述备份时间点的范围之内即可。上述指定虚拟机的型号为基于KVM虚拟化技术的虚拟机此外,可先将预生成的备份代理程序发送至上述指定虚拟机内,通过控制指定虚拟机启动安装该备份代理程序便可生成上述备份代理客户端。具体的,上述备份代理程序可使用C语言进行编写,使用C语言能够很好的对Linux的内核函数进行调用,操作控制虚拟机比较方便。生成的上述备份代理客户端,拥有能够与外部系统(例如本实施例中的基于虚拟机的数据备份装置)进行交互的功能,且具备特殊的对于指定虚拟机的管理权限,例如可具有监控虚拟机状态、备份虚拟机、拷贝虚拟机中的数据等管理功能。在与上述备份代理客户端成功建立通讯连接后,向上述备份代理客户端发送备份指令,以使上述备份代理客户端基于上述备份指令,将上述指定虚拟机的系统缓存数据发送至底层存储系统。其中,在指定虚拟机内挂载有一定数量的存储磁盘,上述底层存储系统包含有上述存储磁盘对应的存储卷,存储卷具有数据存储功能。可将上述系统缓存数据发送至底层存储系统内的任意一个存储卷中进行存储,并将最终存储有该系统缓存数据的存储卷标记为目标卷。另外,备份代理客户端能够通过调用相应的Linux内核函数实现将上述指定虚拟机的系统缓存数据发送至底层存储系统。之后获取上述底层存储系统对用于存储上述系统缓存数据的目标卷进行打快照操作后生成的对应的快照数据。其中,快照(Snapshot)为关于指定数据集合的一个完全可用拷贝,该拷贝包括相应数据在某个时间点,也即拷贝开始的时间点的映像。在得到了上述快照数据后,基于上述快照数据,对上述快照数据进行数据复制处理,得到对应的复制数据。最后将上述复制数据备份至预设的备份存储系统,以完成对于指定虚拟机中的快照数据的数据备份流程。其中,上述备份存储系统为外部存储系统,为了防止指定虚拟机本身的存储磁盘发送故障,用于对快照数据进行数据备份的备份存储系统要与指定虚拟机进行分离,以确保上述快照数据的数据存储安全性。本实施例在进行指定虚拟机的数据备份时,通过直接与指定虚拟机内的备份代理客户端进行通讯,跳过了寄宿主机层的交互,减少了数据备份过程中备份工具与主机的频繁交互,有效地简化了数据备份流程,进而提高了虚拟机的数据备份效率。且数据备份过程由于不再依赖LIBVIRT模块与QEMU模块,能够有效避免LIBVIRT模块与QEMU模块在进行交互的过程中出现故障的风险,从而提升数据备份的成功率。另外,通过在备份时间段内进行对于指定虚拟机的数据备份处理,从而取消了指定虚拟机在进行数据备份前的冻结操作和数据备份后解冻操作,有效避免由于执行冻结或解冻操作的过程中因故障而导致指定虚拟机卡死,保障指定虚拟机内的应用业务不会因备份出错而受影响。同时也取消了在数据备份过程对Hook script机制的调用,用户不需要根据应用自定义Hook script,降低用户实现指定虚拟机的数据备份的复杂度和难度,提升用户的备份体验。
进一步地,本申请一实施例中,上述步骤S1中的与指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前,包括:
S100:获取预设的备份代理程序;
S101:将所述备份代理程序发送至所述指定虚拟机,以及将与所述备份代理程序对应的执行启动指令发送至所述指定虚拟机,以使得所述指定虚拟机在成功执行启动所述备份代理程序后生成所述备份代理客户端。
如上述步骤S100至S101所述,上述与指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前,具体可包括:首先获取预设的备份代理程序。其中,上述备份代理程序可使用C语言进行编写,使用C语言能够很好的对Linux的内核函数进行调用,操作控制虚拟机比较方便。另外,上述备份程序还可在上述指定虚拟机初始化时便安装于其内部。然后将上述备份代理程序发送至上述指定虚拟机。其中,备份工具可通过远程命令将上述备份代理程序发送至上述指定虚拟机,以便后续能够使得备份工具与基于上述备份代理程序生成的备份代理客户端建立通信连接,以及将与上述备份代理程序对应的执行启动指令发送至上述指定虚拟机,以使得上述指定虚拟机在成功执行启动上述备份代理程序后生成上述备份代理客户端,并基于上述备份代理客户端实现与备份工具之间的通信功能。其中,基于执行启动上述备份代理程序后生成的备份代理客户端,拥有能够与外部系统进行交互的功能,且具备特殊的对于指定虚拟机的管理权限,例如可具有监控指定虚拟机状态、备份指定虚拟机、拷贝指定虚拟机中的数据等管理功能。本实施例通过向指定虚拟机发送备份代理程序,采用备份程序直接与指定虚拟机内的与该备份代理程序对应的备份代理客户端进行通讯,并通过该备份代理客户端对指定虚拟机进行管理,从而跳过与指定虚拟机中寄宿主机层的交互,减少了数据备份过程中备份程序与寄宿主机层的频繁交互,优化了数据备份的流程,能有效减低模块交互的过程中出现故障的风险,提升数据备份的成功率。
进一步地,本申请一实施例中,上述步骤S1之前,包括:
S110:获取所述指定虚拟机在预设时间周期的指定时间段内的资源消耗数据;
S111:对所述预设时间周期、所述指定时间段与所述资源消耗数据进行统计分析,生成相应的资源消耗统计表;
S112:基于所述资源消耗统计表,分别获取所述指定虚拟机在所述预设时间周期中每一天的资源消耗数据为0的第一时间段;
S113:计算所有所述第一时间段的交集,得到对应的第二时间段;
S114:将所述第二时间段作为所述备份时间段。
如上述步骤S110至S114所述,在执行在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接的连接过程之前,还可包括生成上述备份时间段的生成过程。具体地,上述在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前还可包括:首先获取上述指定虚拟机在预设时间周期的指定时间段内的资源消耗数据。其中,对于上述预设时间周期与指定时间段不做具体限定,可根据实际需求进行设置。举例地,上述预设时间周期可为与当前时间相邻的上一个星期。上述指定时间段为粗略的指定虚拟机的工作空闲时间段,例如可为0:00-8:00。然后对上述预设时间周期、上述指定时间段与上述资源消耗数据进行统计分析,生成相应的资源消耗统计表。其中,可以将指定时间段按照每小时作为单位进行划分,并按照从小到大的顺序填充至预设的表模板内的行表头处;将预设时间周期按照每天作为单位进行划分,并按照从小到大的顺序填充至上述表模板内的列表头处;再将与行表头、列表头分别对应的资源消耗数据一一对应地填充至上述表模板的单元格内,以生成上述资源消耗统计表。另外,对于上述表模板不作具体限定,例如可为不含数据的excel表格。之后基于上述资源消耗统计表,分别获取上述指定虚拟机在上述预设时间周期中每一天的资源消耗数据为0的第一时间段。其中,如果指定虚拟机的资源消耗数据为0,则表明指定虚拟机在资源消耗数据为0的时候处于空闲状态。在得到了上述第一时间段后,再计算所有上述第一时间段的交集,得到对应的第二时间段。其中,通过对所有上述第一时间段进行取交集的处理,使得得到的上述第二时间段为指定虚拟机在上述预设时间周期中每一天的资源消耗数据为0的相同时间段,即指定虚拟机在上述预设时间周期内的任意一天中的第二时间段均处于空闲状态。最后将上述第二时间段作为上述备份时间段。本实施例通过对于指定虚拟机的历史资源消耗数据进行分析处理,能够智能准确地确定出该指定虚拟机的空闲时间段,进而将该空闲时间段用作指定虚拟机的备份时间段,以便后续在该备份时间段内对指定虚拟机进行数据备份处理,大大提高了指定虚拟机的数据备份过程的数据备份的一致性与准确性,提高数据备份的成功率。
进一步地,本申请一实施例中,上述步骤S1,包括:
S120:获取预先输入的备份信息,所述备份信息携带备份开始时间与需要进行备份的指定虚拟机;
S121:判断所述备份开始时间是否处于所述备份时间段内;
S122:若所述备份开始时间处于所述备份时间段内,则在当前时间到达所述备份开始时间时,与所述指定虚拟机内预设的备份代理客户端建立通讯连接。
如上述步骤S120至S122所述,上述在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接的步骤,具体可包括:首先获取预先输入的备份信息,其中上述备份信息携带备份开始时间与需要进行备份的指定虚拟机。具体的,上述备份信息可为用户根据实际需求预先输入的与数据备份任务对应的相关信息,具体可包括备份任务的任务开始时间,以及数据备份任务的执行对象。然后判断上述备份开始时间是否处于上述备份时间段内。其中,上述备份时间段是通过对指定虚拟机的历史资源消耗数据进行分析处理后确定生成的指定虚拟机的空闲时间段,且在该空闲时间段中指定虚拟机内的应用不会触发任何的数据写操作。如果上述备份开始时间处于上述备份时间段内,则在当前时间到达上述备份开始时间时,与上述指定虚拟机内预设的备份代理客户端建立通讯连接。其中,如果判定出上述备份开始时间处于上述备份时间段内,则会响应用户在备份信息中体现的备份需求,在该备份开始时间对应的时间点来对指定虚拟机执行数据备份处理,既保证指定虚拟机的数据备份过程的数据备份的一致性与准确性,提高数据备份的成功率,也保证了用户的使用体验。进一步地,如果上述备份开始时间不处于上述备份时间段,则返回相应的时间修改信息,以提醒用户将备份开始时间修改为处于备份时间段内的时间数据,避免由于在非备份时间段内执行对于指定虚拟机的数据备份处理而导致备份数据的一致性无法得到保障,有效地规避了无效的数据备份流程的产生,提高了对于指定虚拟机的数据备份处理的智能性。
进一步地,本申请一实施例中,所述备份时间段包括备份起始端时间与备份末尾端时间,上述步骤S122之前,包括:
S1220:获取所述备份时间段中包含的所述备份末尾端时间;
S1221:计算所述备份末尾端时间与所述备份开始时间的差值;
S1222:获取预设的正常备份时间阈值;
S1223:判断所述差值是否大于所述正常备份时间阈值;
S1224:若所述差值大于所述正常备份时间阈值,则生成在当前时间到达所述备份开始时间时,与所述指定虚拟机内预设的备份代理客户端建立通讯连接的第一连接指令。
如上述步骤S1220至S1224所述,上述备份时间段包括备份起始端时间与备份末尾端时间,上述在当前时间到达上述备份开始时间时,与上指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前,还可包括:获取上述备份时间段中包含的上述备份末尾端时间。其中,上述备份时间段是指分别以上述备份起始端时间与上述备份末尾端时间这两个时间点作为两个端点所形成的时间范围,且通常在该备份时间段中,指定虚拟机内的应用不会触发任何的数据写操作。举例地,上述备份时间段为02:00-06:00,则相应的备份起始端时间为02:00,备份末尾端时间为06:00。然后计算上述备份末尾端时间与上述备份开始时间的差值。其中,上述备份开始时间是输入的上述备份信息内所规定的执行与上述指定虚拟机对应的数据备份任务的开始时间。之后获取预设的正常备份时间阈值。其中,对于上述正常备份时间阈值不作具体限定,可基于对处于正常工作状态下的指定虚拟机执行数据备份任务所需的经验时间数值进行对应设置,例如可设为20分钟。在得到了上述正常备份时间阈值后,再判断上述差值是否大于上述正常备份时间阈值。如果上述差值大于上述正常备份时间阈值,则生成在当前时间到达上述备份开始时间时,与上述指定虚拟机内预设的备份代理客户端建立通讯连接的第一连接指令。其中,如果上述差值大于上述正常备份时间阈值,则表明会在备份时间段内便可以完成关于指定虚拟机的数据备份任务,从而能够保证本次数据备份任务的备份数据的一致性。另外,如果上述差值不大于上述正常备份时间阈值,则表明在超过了上述备份时间段后才会完成本次的数据备份任务,但由于上述备份时间段之外的时间段会存在指定虚拟机内的应用出现触发数据写操作的风险,进而使得指定虚拟机内的备份数据的一致性无法得到保障,这样会大大降低本次数据备份任务的数据准确性。且此时会返回相应的时间修改信息,以提醒用户将备份开始时间进行修改,以使得上述备份末尾端时间与修改后的备份开始时间之间的差值上述大于正常备份时间阈值,避免由于在上述备份时间段之外的时间段内执行了对于指定虚拟机的数据备份处理而导致备份数据的一致性无法得到保障,有效地规避了无效的数据备份流程的产生,提高了对于指定虚拟机的数据备份处理的智能性。本实施例在获取到了与指定虚拟机对应的备份开始时间后,先会智能地计算备份时间段中的备份末尾端时间与上述备份开始时间的差值,再将该差值与预设的正常备份时间阈值进行比较,只有在差值大于上述正常备份时间阈值时,才会执行后续的数据备份流程,有效地保证了本次数据备份任务中的备份数据的一致性。
进一步地,本申请一实施例中,上述步骤S1之前,包括:
S130:向所述指定虚拟机发送状态检测包;
S131:判断是否在预设时间段内接收到所述指定虚拟机返回的与所述状态检测包对应的反馈信息;
S132:若在预设时间段内接收到所述指定虚拟机返回的所述反馈信息,判定所述指定虚拟机当前处于正常状态,并生成在当前时间到达所述备份开始时间时,与所述指定虚拟机内预设的备份代理客户端建立通讯连接的第二连接指令。
如上述步骤S130至S132所述,在进行在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接的连接过程之前,还可以进一步检测上述指定虚拟机当前是否处于故障状态。具体地,上述在当前时间到达上述备份开始时间时,与上述指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前,还可包括:向上述指定虚拟机发送状态检测包。其中,上述状态检测包可为由工作人员基于检测虚拟机当前是否处于故障状态的目的编写生成的相应的数据包,对该数据包的具体内容不作限定,例如该状态检测包可为心跳连接包。然后判断是否在预设时间段内接收到上述指定虚拟机返回的与上述状态检测包对应的反馈信息。其中,对于上述预设时间段的具体取值不作限定,可基于虚拟机在正常工作状态下对接收到的状态检测包进行反馈的经验数值进行设置,例如可设为1分钟。且当虚拟机在1分钟内成功对接收到的状态检测包进行了反馈,则表示虚拟机当前为正常状态。而当虚拟机在1分钟内没有对接收到的状态检测包进行反馈,则可判定虚拟机当前处于故障状态。如果在预设时间段内接收到上述指定虚拟机返回的上述反馈信息,判定上述指定虚拟机当前处于正常状态,并生成在当前时间到达上述备份开始时间时,与上述指定虚拟机内预设的备份代理客户端建立通讯连接的第二连接指令。本实施例在执行与指定虚拟机相应的数据备份任务之前,会智能地先提前通过状态检测包的形式检测该指定虚拟机当前是否处于故障状态,只有在指定虚拟机当前处于正常状态时,后续才会继续执行数据备份步骤,提高了数据备份处理过程的智能性,避免在指定虚拟机当前处于故障状态时仍继续执行后续的数据备份流程,有效地较少了无效功耗的产生。
进一步地,本申请一实施例中,上述步骤S131之后,包括:
S133:若在预设时间段内未接收到所述指定虚拟机返回的所述反馈信息,判定所述指定虚拟机当前处于故障状态,并获取与所述故障状态对应的状态标识码;
S134:基于所述状态标识码生成相应的警报信息;
S135:获取预设的邮件登录信息,以及获取与指定用户对应的指定邮件地址;
S136:根据所述邮件登录信息登录邮件服务器;
S137:通过所述邮件服务器将所述警报信息发送至所述指定邮件地址。
如上述步骤S133至S137所述,在向上述指定虚拟机发送上述状态检测包,还可能会出现指定虚拟机当前处于故障状态而无法返回与该状态检测包对应的反馈信息的情况,则此时会智能地发出与指定虚拟机的故障状态相应的警报提醒。具体地,上述判断是否在预设时间段内接收到上述指定虚拟机返回的与上述状态检测包对应的反馈信息的步骤之后,还可包括:若在预设时间段内未接收到上述指定虚拟机返回的上述反馈信息,判定上述指定虚拟机当前处于故障状态,并获取与上述故障状态对应的状态标识码。其中,对于虚拟机的不同状态会预先设置有相对应的状态标识码,例如故障状态对应的状态标识码为004,正常状态对应的状态标识码为006。然后基于上述状态标识码生成相应的警报信息。其中,上述警报信息至少包含上述状态标识码的内容,可将该状态标识码输入至预设的信息模板中以生成该警报信息。之后获取预设的邮件登录信息,以及获取与指定用户对应的指定邮件地址。在得到了上述邮件登录信息后,再根据上述邮件登录信息登录邮件服务器。最后通过上述邮件服务器将上述警报信息发送至上述指定邮件地址,以使得指定用户能够及时收到与指定虚拟机对应的警报信息,进而后续能够基于该警报信息及时采取相关的处理措施以对该指定虚拟机进行修复处理。
进一步地,本申请一实施例中,上述步骤S5之后,包括:
S500:判断所述将所述复制数据备份至所述备份存储系统的备份过程是否已成功完成;
S501:若所述将所述复制数据备份至所述备份存储系统的备份过程已成功完成,生成备份完成的提示信息;
S502:向所述备份代理客户端发送数据删除指令,以使所述备份代理客户端基于所述数据删除指令对所述快照数据进行删除处理。
如上述步骤S500至S502所述,在完成了对于上述复制数据的备份处理后,后续还需对指定虚拟机上的快照数据进行删除处理。具体地,上述将上述复制数据备份至预设的备份存储系统的步骤之后,还可包括:判断上述将上述复制数据备份至上述备份存储系统的备份过程是否已成功完成。如果上述将上述复制数据备份至上述备份存储系统的备份过程已成功完成,生成备份完成的提示信息。其中,还可以将该提示信息发送至与上述指定用户对应的指定邮件地址,使得指定用户能够基于接收到的该提示信息来快速方便地了解到关于指定虚拟机的备份任务已成功执行完毕的实际情况。之后向上述备份代理客户端发送数据删除指令,以使上述备份代理客户端基于上述数据删除指令对上述快照数据进行删除处理。其中,指定虚拟机在删除了快照数据后会将底层存储系统包含的存储空间进行释放,使得可以重用底层存储系统中释放出的空间来存储新数据。本实施例在成功完成了将上述复制数据备份至上述备份存储系统的备份过程后,还会智能地将指定虚拟机内生成的快照数据进行删除,有效地增加了指定虚拟机内的可用存储空间,也避免了指定虚拟机内快照数据出现泄漏的情况,提高了指定虚拟机内的数据安全性。
本申请实施例中的基于虚拟机的数据备份方法还可以应用于区块链领域,如将上述快照数据等数据存储于区块链上。通过使用区块链来对上述快照数据进行存储和管理,能够有效地保证上述快照数据的安全性与不可篡改性。
上述区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
参照图2,本申请一实施例中还提供了一种基于虚拟机的数据备份装置,包括:
连接模块1,用于在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接,其中,所述备份时间段为所述指定虚拟机不会触发数据写操作的时间段;
第一发送模块2,用于在与所述备份代理客户端成功建立通讯连接后,向所述备份代理客户端发送备份指令,以使所述备份代理客户端基于所述备份指令,将所述指定虚拟机的系统缓存数据发送至底层存储系统;
第一获取模块3,用于获取所述底层存储系统对用于存储所述系统缓存数据的目标卷进行打快照操作后生成的对应的快照数据;
复制模块4,用于基于所述快照数据,对所述快照数据进行数据复制处理,得到对应的复制数据;
备份模块5,用于将所述复制数据备份至预设的备份存储系统。
本实施例中,上述基于虚拟机的数据备份装置中的连接模块、第一发送模块、第一获取模块、复制模块与备份模块的功能和作用的实现过程具体详见上述基于虚拟机的数据备份方法中对应步骤S1至S7的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述基于虚拟机的数据备份装置,包括:
第二获取模块,用于获取预设的备份代理程序;
第二发送模块,用于将所述备份代理程序发送至所述指定虚拟机,以及将与所述备份代理程序对应的执行启动指令发送至所述指定虚拟机,以使得所述指定虚拟机在成功执行启动所述备份代理程序后生成所述备份代理客户端。
本实施例中,上述基于虚拟机的数据备份装置中的第二获取模块与第二发送模块的功能和作用的实现过程具体详见上述基于虚拟机的数据备份方法中对应步骤S100至S101的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述基于虚拟机的数据备份装置,包括:
第三获取模块,用于获取所述指定虚拟机在预设时间周期的指定时间段内的资源消耗数据;
统计模块,用于对所述预设时间周期、所述指定时间段与所述资源消耗数据进行统计分析,生成相应的资源消耗统计表;
第四获取模块,用于基于所述资源消耗统计表,分别获取所述指定虚拟机在所述预设时间周期中每一天的资源消耗数据为0的第一时间段;
计算模块,用于计算所有所述第一时间段的交集,得到对应的第二时间段;
确定模块,用于将所述第二时间段作为所述备份时间段。
本实施例中,上述基于虚拟机的数据备份装置中的第三获取模块、统计模块、第四获取模块、计算模块与确定模块的功能和作用的实现过程具体详见上述基于虚拟机的数据备份方法中对应步骤S110至S114的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述连接模块,包括:
第一获取单元,用于获取预先输入的备份信息,所述备份信息携带备份开始时间与需要进行备份的指定虚拟机;
第一判断单元,用于判断所述备份开始时间是否处于所述备份时间段内;
连接单元,用于若所述备份开始时间处于所述备份时间段内,则在当前时间到达所述备份开始时间时,与所述指定虚拟机内预设的备份代理客户端建立通讯连接。
本实施例中,上述基于虚拟机的数据备份装置中的第一获取单元、第一判断单元与连接单元的功能和作用的实现过程具体详见上述基于虚拟机的数据备份方法中对应步骤S120至S122的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述连接模块,包括:
第二获取单元,用于获取所述备份时间段中包含的所述备份末尾端时间;
计算单元,用于计算所述备份末尾端时间与所述备份开始时间的差值;
第三获取单元,用于获取预设的正常备份时间阈值;
第二判断单元,用于判断所述差值是否大于所述正常备份时间阈值;
生成单元,用于若所述差值大于所述正常备份时间阈值,则生成在当前时间到达所述备份开始时间时,与所述指定虚拟机内预设的备份代理客户端建立通讯连接的第一连接指令。
本实施例中,上述基于虚拟机的数据备份装置中的第二获取单元、计算单元、第三获取单元、第二判断单元与生成单元的功能和作用的实现过程具体详见上述基于虚拟机的数据备份方法中对应步骤S1220至S1224的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述基于虚拟机的数据备份装置,包括:
第三发送模块,用于向所述指定虚拟机发送状态检测包;
第一判断模块,用于判断是否在预设时间段内接收到所述指定虚拟机返回的与所述状态检测包对应的反馈信息;
第一生成模块,用于若在预设时间段内接收到所述指定虚拟机返回的所述反馈信息,判定所述指定虚拟机当前处于正常状态,并生成在当前时间到达所述备份开始时间时,与所述指定虚拟机内预设的备份代理客户端建立通讯连接的第二连接指令。
本实施例中,上述基于虚拟机的数据备份装置中的第三发送模块、第一判断模块与第一生成模块的功能和作用的实现过程具体详见上述基于虚拟机的数据备份方法中对应步骤S130至S132的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述基于虚拟机的数据备份装置,包括:
第五获取模块,用于若在预设时间段内未接收到所述指定虚拟机返回的所述反馈信息,判定所述指定虚拟机当前处于故障状态,并获取与所述故障状态对应的状态标识码;
第二生成模块,用于基于所述状态标识码生成相应的警报信息;
第六获取模块,用于获取预设的邮件登录信息,以及获取与指定用户对应的指定邮件地址;
登录模块,用于根据所述邮件登录信息登录邮件服务器;
第四发送模块,用于通过所述邮件服务器将所述警报信息发送至所述指定邮件地址。
本实施例中,上述基于虚拟机的数据备份装置中的第五获取模块、第二生成模块、第六获取模块、登录模块与第四发送模块的功能和作用的实现过程具体详见上述基于虚拟机的数据备份方法中对应步骤S133至S137的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述基于虚拟机的数据备份装置,包括:
第二判断模块,用于判断所述将所述复制数据备份至所述备份存储系统的备份过程是否已成功完成;
第三生成模块,用于若所述将所述复制数据备份至所述备份存储系统的备份过程已成功完成,生成备份完成的提示信息;
删除模块,用于向所述备份代理客户端发送数据删除指令,以使所述备份代理客户端基于所述数据删除指令对所述快照数据进行删除处理。
本实施例中,上述基于虚拟机的数据备份装置中的第二判断模块、第三生成模块与删除模块的功能和作用的实现过程具体详见上述基于虚拟机的数据备份方法中对应步骤S500至S502的实现过程,在此不再赘述。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏、输入装置和数据库。其中,该计算机设备设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括存储介质、内存储器。该存储介质存储有操作系统、计算机程序和数据库。该内存储器为存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储备份时间段、系统缓存数据、快照数据以及复制数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机设备的显示屏是计算机中必不可少的一种图文输出设备,用于将数字信号转换为光信号,使文字与图形在显示屏的屏幕上显示出来。该计算机设备的输入装置是计算机与用户或其他设备之间进行信息交换的主要装置,用于把数据、指令及某些标志信息等输送到计算机中去。该计算机程序被处理器执行时以实现一种基于虚拟机的数据备份方法。
上述处理器执行上述基于虚拟机的数据备份方法的步骤:
在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接,其中,所述备份时间段为所述指定虚拟机不会触发数据写操作的时间段;
在与所述备份代理客户端成功建立通讯连接后,向所述备份代理客户端发送备份指令,以使所述备份代理客户端基于所述备份指令,将所述指定虚拟机的系统缓存数据发送至底层存储系统;
获取所述底层存储系统对用于存储所述系统缓存数据的目标卷进行打快照操作后生成的对应的快照数据;
基于所述快照数据,对所述快照数据进行数据复制处理,得到对应的复制数据;
将所述复制数据备份至预设的备份存储系统。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的装置、计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种基于虚拟机的数据备份方法,具体为:
在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接,其中,所述备份时间段为所述指定虚拟机不会触发数据写操作的时间段;
在与所述备份代理客户端成功建立通讯连接后,向所述备份代理客户端发送备份指令,以使所述备份代理客户端基于所述备份指令,将所述指定虚拟机的系统缓存数据发送至底层存储系统;
获取所述底层存储系统对用于存储所述系统缓存数据的目标卷进行打快照操作后生成的对应的快照数据;
基于所述快照数据,对所述快照数据进行数据复制处理,得到对应的复制数据;
将所述复制数据备份至预设的备份存储系统。
综上所述,本申请实施例中提供的基于虚拟机的数据备份方法、装置、计算机设备和存储介质,通过在备份时间段内进行指定虚拟机的数据备份处理,跳过了寄宿主机层的交互,而采用直接与指定虚拟机内的备份代理客户端进行通讯的方式,通过与该备份代理客户端进行交互来快速地实现对于指定虚拟机内的系统缓存数据的数据备份处理,有效地减少了数据备份过程中备份工具与寄宿主机层的频繁交互,简化了指定虚拟机的数据备份流程,进而提高了指定虚拟机的数据备份效率。且数据备份过程由于不再依赖LIBVIRT模块与QEMU模块,能够有效避免LIBVIRT模块与QEMU模块在进行交互的过程中出现故障的风险,从而提升数据备份的成功率。另外,通过在备份时间段内进行对于指定虚拟机的数据备份处理,从而取消了指定虚拟机在进行数据备份前的冻结操作和数据备份后解冻操作,有效避免由于执行冻结或解冻操作的过程中因故障而导致指定虚拟机卡死,保障指定虚拟机内的应用业务不会因备份出错而受影响。同时也取消了在数据备份过程对于Hook script机制的调用,用户不需要根据应用自定义Hook script,降低用户实现指定虚拟机的数据备份的复杂度和难度,提升用户的备份体验。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (10)

1.一种基于虚拟机的数据备份方法,其特征在于,包括:
在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接,其中,所述备份时间段为所述指定虚拟机不会触发数据写操作的时间段;
在与所述备份代理客户端成功建立通讯连接后,向所述备份代理客户端发送备份指令,以使所述备份代理客户端基于所述备份指令,将所述指定虚拟机的系统缓存数据发送至底层存储系统;
获取所述底层存储系统对用于存储所述系统缓存数据的目标卷进行打快照操作后生成的对应的快照数据;
基于所述快照数据,对所述快照数据进行数据复制处理,得到对应的复制数据;
将所述复制数据备份至预设的备份存储系统。
2.根据权利要求1所述的基于虚拟机的数据备份方法,其特征在于,所述与所述指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前,包括:
获取预设的备份代理程序;
将所述备份代理程序发送至所述指定虚拟机,以及将与所述备份代理程序对应的执行启动指令发送至所述指定虚拟机,以使得所述指定虚拟机在成功执行启动所述备份代理程序后生成所述备份代理客户端。
3.根据权利要求1所述的基于虚拟机的数据备份方法,其特征在于,所述在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前,包括:
获取所述指定虚拟机在预设时间周期的指定时间段内的资源消耗数据;
对所述预设时间周期、所述指定时间段与所述资源消耗数据进行统计分析,生成相应的资源消耗统计表;
基于所述资源消耗统计表,分别获取所述指定虚拟机在所述预设时间周期中每一天的资源消耗数据为0的第一时间段;
计算所有所述第一时间段的交集,得到对应的第二时间段;
将所述第二时间段作为所述备份时间段。
4.根据权利要求1所述的基于虚拟机的数据备份方法,其特征在于,所述在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接的步骤,包括:
获取预先输入的备份信息,其中所述备份信息携带备份开始时间与需要进行备份的指定虚拟机;
判断所述备份开始时间是否处于所述备份时间段内;
若所述备份开始时间处于所述备份时间段内,则在当前时间到达所述备份开始时间时,与所述指定虚拟机内预设的备份代理客户端建立通讯连接。
5.根据权利要求4所述的基于虚拟机的数据备份方法,其特征在于,所述备份时间段包括备份起始端时间与备份末尾端时间,所述在当前时间到达所述备份开始时间时,与所述指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前,包括:
获取所述备份时间段中包含的所述备份末尾端时间;
计算所述备份末尾端时间与所述备份开始时间的差值;
获取预设的正常备份时间阈值;
判断所述差值是否大于所述正常备份时间阈值;
若所述差值大于所述正常备份时间阈值,则生成在当前时间到达所述备份开始时间时,与所述指定虚拟机内预设的备份代理客户端建立通讯连接的第一连接指令。
6.根据权利要求1所述的基于虚拟机的数据备份方法,其特征在于,所述在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接的步骤之前,包括:
向所述指定虚拟机发送状态检测包;
判断是否在预设时间段内接收到所述指定虚拟机返回的与所述状态检测包对应的反馈信息;
若在预设时间段内接收到所述指定虚拟机返回的所述反馈信息,判定所述指定虚拟机当前处于正常状态,并生成在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接的第二连接指令。
7.根据权利要求1所述的基于虚拟机的数据备份方法,其特征在于,所述将所述复制数据备份至预设的备份存储系统的步骤之后,包括:
判断所述将所述复制数据备份至所述备份存储系统的备份过程是否已成功完成;
若所述将所述复制数据备份至所述备份存储系统的备份过程已成功完成,生成备份完成的提示信息;
向所述备份代理客户端发送数据删除指令,以使所述备份代理客户端基于所述数据删除指令对所述快照数据进行删除处理。
8.一种基于虚拟机的数据备份装置,其特征在于,包括:
连接模块,用于在当前时间处于预设的备份时间段内时,与指定虚拟机内预设的备份代理客户端建立通讯连接,其中,所述备份时间段为所述指定虚拟机不会触发数据写操作的时间段;
第一发送模块,用于在与所述备份代理客户端成功建立通讯连接后,向所述备份代理客户端发送备份指令,以使所述备份代理客户端基于所述备份指令,将所述指定虚拟机的系统缓存数据发送至底层存储系统;
第一获取模块,用于获取所述底层存储系统对用于存储所述系统缓存数据的目标卷进行打快照操作后生成的对应的快照数据;
复制模块,用于基于所述快照数据,对所述快照数据进行数据复制处理,得到对应的复制数据;
备份模块,用于将所述复制数据备份至预设的备份存储系统。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202011287787.6A 2020-11-17 2020-11-17 基于虚拟机的数据备份方法、装置和计算机设备 Pending CN112395133A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011287787.6A CN112395133A (zh) 2020-11-17 2020-11-17 基于虚拟机的数据备份方法、装置和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011287787.6A CN112395133A (zh) 2020-11-17 2020-11-17 基于虚拟机的数据备份方法、装置和计算机设备

Publications (1)

Publication Number Publication Date
CN112395133A true CN112395133A (zh) 2021-02-23

Family

ID=74606188

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011287787.6A Pending CN112395133A (zh) 2020-11-17 2020-11-17 基于虚拟机的数据备份方法、装置和计算机设备

Country Status (1)

Country Link
CN (1) CN112395133A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112965783A (zh) * 2021-02-24 2021-06-15 上海英方软件股份有限公司 一种使用存储快照备份虚拟机的系统及方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150370639A1 (en) * 2014-06-24 2015-12-24 International Business Machines Corporation Back up and recovery in virtual machine environments
CN105556478A (zh) * 2013-09-10 2016-05-04 赛门铁克公司 用于保护虚拟机数据的系统和方法
CN106445733A (zh) * 2016-08-30 2017-02-22 广州鼎甲计算机科技有限公司 一种基于kvm虚拟化的无代理模式备份方法和系统
CN106909475A (zh) * 2015-12-23 2017-06-30 中国移动通信集团重庆有限公司 基于对象存储进行数据备份、恢复的方法和装置
CN107688512A (zh) * 2017-09-01 2018-02-13 郑州云海信息技术有限公司 一种优化虚拟机数据备份方法和系统
US20180113623A1 (en) * 2016-10-25 2018-04-26 Commvault Systems, Inc. Selective snapshot and backup copy operations for individual virtual machines in a shared storage
CN108182128A (zh) * 2017-12-29 2018-06-19 广州鼎甲计算机科技有限公司 基于xen的无代理虚拟化备份恢复方法
CN111143133A (zh) * 2019-12-31 2020-05-12 广州鼎甲计算机科技有限公司 虚拟机备份方法和备份虚拟机恢复方法
CN111158959A (zh) * 2019-12-31 2020-05-15 广州鼎甲计算机科技有限公司 虚拟机备份方法和装置以及虚拟机恢复方法和装置
CN111367722A (zh) * 2020-03-06 2020-07-03 苏州浪潮智能科技有限公司 一种虚拟机备份方法、装置、设备及可读存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105556478A (zh) * 2013-09-10 2016-05-04 赛门铁克公司 用于保护虚拟机数据的系统和方法
US20150370639A1 (en) * 2014-06-24 2015-12-24 International Business Machines Corporation Back up and recovery in virtual machine environments
CN106909475A (zh) * 2015-12-23 2017-06-30 中国移动通信集团重庆有限公司 基于对象存储进行数据备份、恢复的方法和装置
CN106445733A (zh) * 2016-08-30 2017-02-22 广州鼎甲计算机科技有限公司 一种基于kvm虚拟化的无代理模式备份方法和系统
US20180113623A1 (en) * 2016-10-25 2018-04-26 Commvault Systems, Inc. Selective snapshot and backup copy operations for individual virtual machines in a shared storage
CN107688512A (zh) * 2017-09-01 2018-02-13 郑州云海信息技术有限公司 一种优化虚拟机数据备份方法和系统
CN108182128A (zh) * 2017-12-29 2018-06-19 广州鼎甲计算机科技有限公司 基于xen的无代理虚拟化备份恢复方法
CN111143133A (zh) * 2019-12-31 2020-05-12 广州鼎甲计算机科技有限公司 虚拟机备份方法和备份虚拟机恢复方法
CN111158959A (zh) * 2019-12-31 2020-05-15 广州鼎甲计算机科技有限公司 虚拟机备份方法和装置以及虚拟机恢复方法和装置
CN111367722A (zh) * 2020-03-06 2020-07-03 苏州浪潮智能科技有限公司 一种虚拟机备份方法、装置、设备及可读存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112965783A (zh) * 2021-02-24 2021-06-15 上海英方软件股份有限公司 一种使用存储快照备份虚拟机的系统及方法

Similar Documents

Publication Publication Date Title
CN109067823A (zh) 一种数据迁移方法、装置、计算机设备及存储介质
CN113326081A (zh) 静态资源的处理方法、装置、计算机设备和存储介质
CN111144083A (zh) 一种报表的生成方法、装置、设备及计算机可读存储介质
CN112527630A (zh) 测试用例生成方法、装置、计算机设备和存储介质
CN111880921A (zh) 基于规则引擎的作业处理方法、装置和计算机设备
CN112668041A (zh) 单证文件的生成方法、装置、计算机设备和存储介质
CN112395133A (zh) 基于虚拟机的数据备份方法、装置和计算机设备
CN114090408A (zh) 数据监控分析方法、装置、计算机设备和存储介质
CN114817055A (zh) 基于接口的回归测试方法、装置、计算机设备和存储介质
CN111274597A (zh) 一种数据处理方法以及设备
CN111523817B (zh) 基于大数据的订单业务处理方法、装置、设备和介质
CN113282514A (zh) 问题数据的处理方法、装置、计算机设备和存储介质
CN112395125A (zh) 页面报错的通知方法、装置、计算机设备及存储介质
CN114707146B (zh) 工作流识别方法、系统、计算机设备和可读存储介质
CN112650659B (zh) 埋点设置方法、装置、计算机设备和存储介质
CN111865927A (zh) 基于系统的漏洞处理方法、装置、计算机设备和存储介质
CN115225636A (zh) 请求处理方法、装置、计算机设备和存储介质
CN113191146B (zh) 诉求数据的分配方法、装置、计算机设备和存储介质
CN113177396B (zh) 报表生成方法、装置、计算机设备和存储介质
CN114511200A (zh) 作业数据的生成方法、装置、计算机设备和存储介质
CN114944942A (zh) 一种基于有效埋点的数据上报方法、装置、计算机设备及介质
CN111666132A (zh) 分布式事务实现方法、装置、计算机系统及可读存储介质
CN107231367B (zh) 签名消息的自动通知方法、装置以及服务器
CN114692221A (zh) 提案投票方法
KR102136936B1 (ko) 크론 테이블 작업 통합 관리 장치 및 시스템

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