一种镜像备份方法、装置及电子设备和存储介质与流程

文档序号:26003760发布日期:2021-07-23 21:21阅读:102来源:国知局
一种镜像备份方法、装置及电子设备和存储介质与流程

本申请涉及计算机技术领域,更具体地说,涉及一种镜像备份方法、装置及一种电子设备和一种计算机可读存储介质。



背景技术:

在相关技术中,云管理平台对运行的虚拟机进行灾备后,仅仅会对备份镜像与当前运行虚拟机镜像进行一致性校验。但是,若在备份点的虚拟机系统异常,导致依据备份镜像恢复异常的虚拟机系统,例如出现虚拟机开机蓝屏等,无法承载客户业务运行。

因此,如何提高备份镜像的可用性是本领域技术人员需要解决的技术问题。



技术实现要素:

本申请的目的在于提供一种镜像备份方法、装置及一种电子设备和一种计算机可读存储介质,提高了备份镜像的可用性。

为实现上述目的,本申请提供了一种镜像备份方法,包括:

对第一虚拟机的镜像进行备份,基于备份镜像生成第二虚拟机;

对所述第二虚拟机的系统进行有效性验证;

基于验证结果生成所述备份镜像的可用性标签。

其中,对所述第二虚拟机的系统进行有效性验证,包括:

向所述第二虚拟机的磁盘注入探测服务程序;

向所述第二虚拟机发送第一控制消息,所述第一控制消息用于控制所述第二虚拟机开机;其中,在所述第二虚拟机开机后,运行所述探测服务程序;

基于所述探测服务程序的运行结果对所述第二虚拟机的系统进行有效性验证。

其中,向所述第二虚拟机的磁盘注入探测服务程序,包括:

以winpe系统为引导、所述第二虚拟机的磁盘作为辅导盘生成第三虚拟机,以利用所述第三虚拟机向所述第二虚拟机的磁盘注入探测服务程序。

其中,所述利用所述第三虚拟机向所述第二虚拟机的磁盘注入探测服务程序,包括:

向所述第三虚拟机发送第二控制消息,所述第二控制消息用于控制所述第三虚拟机开机;

所述第三虚拟机开机后,利用所述第三虚拟机向所述第二虚拟机的磁盘注入探测服务程序;

所述探测服务程序注入完成后,向所述第三虚拟机发送第三控制消息,所述第三控制消息用于控制所述第三虚拟机关机。

其中,所述探测服务程序的运行过程包括:

卸载所述探测服务程序,并返回通知消息,所述通知消息用于标识所述第二虚拟机正常启动;

相应的,基于所述探测服务程序的运行结果对所述第二虚拟机的系统进行有效性验证,包括:

若在预设时间段内接收到所述通知消息,则判定所述第二虚拟机的系统通过有效性验证;

若在预设时间段内未接收到所述通知消息,则判定所述第二虚拟机的系统未通过有效性验证。

其中,所述返回通知消息,包括:

通过中断指令返回通知消息。

其中,还包括:

接收到所述通知消息后,向所述第二虚拟机发送第四控制消息,所述第四控制消息用于控制所述第二虚拟机关机;

若在预设时间段内未接收到所述通知消息,则向所述第二虚拟机发送所述第四控制消息。

为实现上述目的,本申请提供了一种镜像备份装置,包括:

备份模块,用于对第一虚拟机的镜像进行备份,基于备份镜像生成第二虚拟机;

验证模块,用于对所述第二虚拟机的系统进行有效性验证;

生成模块,用于基于验证结果生成所述备份镜像的可用性标签。

为实现上述目的,本申请提供了一种电子设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述镜像备份方法的步骤。

为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述镜像备份方法的步骤。

通过以上方案可知,本申请提供的一种镜像备份方法,包括:对第一虚拟机的镜像进行备份,基于备份镜像生成第二虚拟机;对所述第二虚拟机的系统进行有效性验证;基于验证结果生成所述备份镜像的可用性标签。

本申请提供的镜像备份方法,对当前运行的虚拟机即第一虚拟机进行镜像备份后,基于备份镜像生成第二虚拟机,以第二虚拟机的系统的有效性验证结果作为备份镜像的可用性标签。也就是说,若第二虚拟机的系统可以正常启动,即第二虚拟机的系统通过有效性验证,则说明备份镜像可用,若第二虚拟机的系统无法正常启动,则说明备份镜像不可用。由此可见,本申请提供的镜像备份方法,通过对备份点虚拟机的系统是否正常启用进行有效性验证,提前备份镜像的可用性和有效性。本申请还公开了一种镜像备份装置及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1为根据一示例性实施例示出的一种镜像备份方法的流程图;

图2为根据一示例性实施例示出的另一种镜像备份方法的流程图;

图3为根据一示例性实施例示出的一种镜像备份装置的结构图;

图4为根据一示例性实施例示出的一种电子设备的结构图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。另外,在本申请实施例中,“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

本申请实施例公开了一种镜像备份方法,提高了备份镜像的可用性。

参见图1,根据一示例性实施例示出的一种镜像备份方法的流程图,如图1所示,包括:

s101:对第一虚拟机的镜像进行备份,基于备份镜像生成第二虚拟机;

本实施例可以应用于超融合基础架构(hyper-convergedinfrastructure,hci),指在同一套单元设备中不仅仅具备计算、网络、存储和服务器虚拟化等资源和技术,而且还包括备份软件、快照技术、重复数据删除、在线数据压缩等元素,而多套单元设备可以通过网络聚合起来,实现模块化的无缝横向扩展,形成统一的资源池。本实施例的执行主体可以为acloud平台,一种hci平台产品。

在具体实施中,在各指定时间点对超融合基础架构中的虚拟机进行备份,生成备份镜像,预防下次出现灾难故障时能快速通过恢复备份镜像达到快速恢复客户业务的目的。

本实施例的目的在于对备份镜像进行可用性验证,即验证基于备份镜像恢复的虚拟机系统是否能够正常系统。在本步骤中,对第一虚拟机进行备份生成备份镜像后,基于备份镜像恢复生成新的临时虚拟机即第二虚拟机,生成第二虚拟机的目的是防止可用性验证时影响正在运行业务的第一虚拟机。

s102:对所述第二虚拟机的系统进行有效性验证;

s103:基于验证结果生成所述备份镜像的可用性标签。

在具体实施中,通过验证第二虚拟机的系统的有效性进而验证备份镜像的可用性,本实施例不对具体的有效性验证方式进行限定,本领域技术人员可以根据实际情况灵活选择。本步骤中备份镜像的可用性标签可以包括可用和不可用,若第二虚拟机的系统可以正常启动,即第二虚拟机的系统通过有效性验证,则说明备份镜像可用,若第二虚拟机的系统无法正常启动,则说明备份镜像不可用。备份镜像不可用时,可以生成告警标志,以提示用户关注。

本申请实施例提供的镜像备份方法,对当前运行的虚拟机即第一虚拟机进行镜像备份后,基于备份镜像生成第二虚拟机,以第二虚拟机的系统的有效性验证结果作为备份镜像的可用性标签。也就是说,若第二虚拟机的系统可以正常启动,即第二虚拟机的系统通过有效性验证,则说明备份镜像可用,若第二虚拟机的系统无法正常启动,则说明备份镜像不可用。由此可见,本申请实施例提供的镜像备份方法,通过对备份点虚拟机的系统是否正常启用进行有效性验证,提前备份镜像的可用性和有效性。

本申请实施例公开了一种镜像备份方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:

参见图2,根据一示例性实施例示出的另一种镜像备份方法的流程图,如图2所示,包括:

s201:对第一虚拟机的镜像进行备份,基于备份镜像生成第二虚拟机;

s202:向所述第二虚拟机的磁盘注入探测服务程序;

在本实施例中,通过探测服务程序对第二虚拟机的有效性进行验证。可以理解的是,基于备份镜像生成第二虚拟机后,第二虚拟机处于关机状态,此时向第二虚拟机的磁盘注入探测服务程序,第二虚拟机开机后自动运行该探测服务程序。

作为一种可行的实施方式,本步骤包括:以winpe系统为引导、所述第二虚拟机的磁盘作为辅导盘生成第三虚拟机,以利用所述第三虚拟机向所述第二虚拟机的磁盘注入探测服务程序。在具体实施中,利用winpe系统作为引导、第二虚拟机的磁盘作为辅导盘组成第三虚拟机,第三虚拟机启动后通过智能算法向第二虚拟机的磁盘中注入探测服务程序,注入探测服务流程结束后第三虚拟机关机,即利用所述第三虚拟机向所述第二虚拟机的磁盘注入探测服务程序的步骤包括:向所述第三虚拟机发送第二控制消息,所述第二控制消息用于控制所述第三虚拟机开机;所述第三虚拟机开机后,利用所述第三虚拟机向所述第二虚拟机的磁盘注入探测服务程序;所述探测服务程序注入完成后,向所述第三虚拟机发送第三控制消息,所述第三控制消息用于控制所述第三虚拟机关机。

s203:向所述第二虚拟机发送第一控制消息,所述第一控制消息用于控制所述第二虚拟机开机;其中,在所述第二虚拟机开机后,运行所述探测服务程序;

在本步骤中,探测服务程序注入完成后,控制第二虚拟机开机,第二虚拟机开机后,自动运行探测服务程序。作为一种优选实施方式,所述探测服务程序的运行过程包括:卸载所述探测服务程序,并返回通知消息,所述通知消息用于标识所述第二虚拟机正常启动。在具体实施中,探测服务程序的运行逻辑包括:首先卸载本身服务程序注册的信息及文件,其目的是下次系统启用后不再运行自身服务,其次向acloud平台发送标识虚拟机正常启动的通知消息,最后关闭虚拟机。优选的,可以通过例如cpuid的中断指令返回通知消息。

s204:基于所述探测服务程序的运行结果对所述第二虚拟机的系统进行有效性验证。

在具体实施中,通过探测服务程序的运行结果对第二虚拟机的系统进行有效性验证。在上述探测服务程序的运行逻辑下,本步骤可以包括:若在预设时间段内接收到所述通知消息,则判定所述第二虚拟机的系统通过有效性验证;若在预设时间段内未接收到所述通知消息,则判定所述第二虚拟机的系统未通过有效性验证。可以理解的是,若acloud平台在预设时间段内接收到通知消息,说明第二虚拟机的系统可以正常启动,判定第二虚拟机的系统通过有效性验证;若acloud平台在预设时间段内未接收到通知消息,则说明第二虚拟机的系统无法正常启动,存在异常,判定第二虚拟机的系统未通过有效性验证。可以理解的是,可以在acloud平台设置第二虚拟机对应的预设时间段,在此不进行具体限定。

进一步的,本实施例还包括:接收到所述通知消息后,向所述第二虚拟机发送第四控制消息,所述第四控制消息用于控制所述第二虚拟机关机;若在预设时间段内未接收到所述通知消息,则向所述第二虚拟机发送所述第四控制消息。在具体实施中,acloud平台接收到通知消息或在预设时间段内未接收到通知消息,说明第二虚拟机的系统的有效性验证结束,控制第二虚拟机关机。

s205:基于验证结果生成所述备份镜像的可用性标签。

由此可见,在本实施例中,向第二虚拟机的磁盘注入探测服务程序,第二虚拟机开机后自动运行该探测服务程序,基于探测服务程序的运行结果对第二虚拟机的系统进行有效性验证,以第二虚拟机的系统的有效性验证结果作为备份镜像的可用性标签。通过对备份点虚拟机的系统是否正常启用进行有效性验证,提前备份镜像的可用性和有效性。

下面对本申请实施例提供的一种镜像备份装置进行介绍,下文描述的一种镜像备份装置与上文描述的一种镜像备份方法可以相互参照。

参见图3,根据一示例性实施例示出的一种镜像备份装置的结构图,如图3所示,包括:

备份模块301,用于对第一虚拟机的镜像进行备份,基于备份镜像生成第二虚拟机;

验证模块302,用于对所述第二虚拟机的系统进行有效性验证;

生成模块303,用于基于验证结果生成所述备份镜像的可用性标签。

本申请实施例提供的镜像备份装置,对当前运行的虚拟机即第一虚拟机进行镜像备份后,基于备份镜像生成第二虚拟机,以第二虚拟机的系统的有效性验证结果作为备份镜像的可用性标签。也就是说,若第二虚拟机的系统可以正常启动,即第二虚拟机的系统通过有效性验证,则说明备份镜像可用,若第二虚拟机的系统无法正常启动,则说明备份镜像不可用。由此可见,本申请实施例提供的镜像备份装置,通过对备份点虚拟机的系统是否正常启用进行有效性验证,提前备份镜像的可用性和有效性。

在上述实施例的基础上,作为一种优选实施方式,所述验证模块302包括:

注入子模块,用于向所述第二虚拟机的磁盘注入探测服务程序;

第一发送子模块,用于向所述第二虚拟机发送第一控制消息,所述第一控制消息用于控制所述第二虚拟机开机;其中,在所述第二虚拟机开机后,运行所述探测服务程序;

验证子模块,用于基于所述探测服务程序的运行结果对所述第二虚拟机的系统进行有效性验证。

在上述实施例的基础上,作为一种优选实施方式,所述注入子模块包括:

生成单元,用于以winpe系统为引导、所述第二虚拟机的磁盘作为辅导盘生成第三虚拟机;

注入单元,用于利用所述第三虚拟机向所述第二虚拟机的磁盘注入探测服务程序。

在上述实施例的基础上,作为一种优选实施方式,所述注入单元包括:

第一发送子单元,用于向所述第三虚拟机发送第二控制消息,所述第二控制消息用于控制所述第三虚拟机开机;

注入子单元,用于所述第三虚拟机开机后,利用所述第三虚拟机向所述第二虚拟机的磁盘注入探测服务程序;

第二发送子单元,用于所述探测服务程序注入完成后,向所述第三虚拟机发送第三控制消息,所述第三控制消息用于控制所述第三虚拟机关机。

在上述实施例的基础上,作为一种优选实施方式,所述探测服务程序的运行过程包括:卸载所述探测服务程序,并返回通知消息,所述通知消息用于标识所述第二虚拟机正常启动;

相应的,所述验证子模块具体为若在预设时间段内接收到所述通知消息,则判定所述第二虚拟机的系统通过有效性验证;若在预设时间段内未接收到所述通知消息,则判定所述第二虚拟机的系统未通过有效性验证的模块。

在上述实施例的基础上,作为一种优选实施方式,所述探测服务程序的运行过程包括:卸载所述探测服务程序,并通过中断指令返回通知消息,所述通知消息用于标识所述第二虚拟机正常启动。

在上述实施例的基础上,作为一种优选实施方式,所述验证模块302还包括:

第二发送子模块,用于接收到所述通知消息后,向所述第二虚拟机发送第四控制消息,所述第四控制消息用于控制所述第二虚拟机关机;

第三发送子模块,用于在预设时间段内未接收到所述通知消息时,向所述第二虚拟机发送所述第四控制消息。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

基于上述程序模块的硬件实现,且为了实现本申请实施例的方法,本申请实施例还提供了一种电子设备,图4为根据一示例性实施例示出的一种电子设备的结构图,如图4所示,电子设备包括:

通信接口1,能够与其它设备比如网络设备等进行信息交互;

处理器2,与通信接口1连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的镜像备份方法。而所述计算机程序存储在存储器3上。

当然,实际应用时,电子设备中的各个组件通过总线系统4耦合在一起。可理解,总线系统4用于实现这些组件之间的连接通信。总线系统4除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图4中将各种总线都标为总线系统4。

本申请实施例中的存储器3用于存储各种类型的数据以支持电子设备的操作。这些数据的示例包括:用于在电子设备上操作的任何计算机程序。

可以理解,存储器3可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,readonlymemory)、可编程只读存储器(prom,programmableread-onlymemory)、可擦除可编程只读存储器(eprom,erasableprogrammableread-onlymemory)、电可擦除可编程只读存储器(eeprom,electricallyerasableprogrammableread-onlymemory)、磁性随机存取存储器(fram,ferromagneticrandomaccessmemory)、快闪存储器(flashmemory)、磁表面存储器、光盘、或只读光盘(cd-rom,compactdiscread-onlymemory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,randomaccessmemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,staticrandomaccessmemory)、同步静态随机存取存储器(ssram,synchronousstaticrandomaccessmemory)、动态随机存取存储器(dram,dynamicrandomaccessmemory)、同步动态随机存取存储器(sdram,synchronousdynamicrandomaccessmemory)、双倍数据速率同步动态随机存取存储器(ddrsdram,doubledataratesynchronousdynamicrandomaccessmemory)、增强型同步动态随机存取存储器(esdram,enhancedsynchronousdynamicrandomaccessmemory)、同步连接动态随机存取存储器(sldram,synclinkdynamicrandomaccessmemory)、直接内存总线随机存取存储器(drram,directrambusrandomaccessmemory)。本申请实施例描述的存储器2旨在包括但不限于这些和任意其它适合类型的存储器。

上述本申请实施例揭示的方法可以应用于处理器2中,或者由处理器2实现。处理器2可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器2中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器2可以是通用处理器、dsp,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器2可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器3,处理器2读取存储器3中的程序,结合其硬件完成前述方法的步骤。

处理器2执行所述程序时实现本申请实施例的各个方法中的相应流程,为了简洁,在此不再赘述。

在示例性实施例中,本申请实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器3,上述计算机程序可由处理器2执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flashmemory、磁表面存储器、光盘、或cd-rom等存储器。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1