CN113672350B - 一种应用处理方法、装置及相关设备 - Google Patents

一种应用处理方法、装置及相关设备 Download PDF

Info

Publication number
CN113672350B
CN113672350B CN202110961257.3A CN202110961257A CN113672350B CN 113672350 B CN113672350 B CN 113672350B CN 202110961257 A CN202110961257 A CN 202110961257A CN 113672350 B CN113672350 B CN 113672350B
Authority
CN
China
Prior art keywords
target application
disaster recovery
service
application
backup
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
CN202110961257.3A
Other languages
English (en)
Other versions
CN113672350A (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.)
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 CN202110961257.3A priority Critical patent/CN113672350B/zh
Publication of CN113672350A publication Critical patent/CN113672350A/zh
Application granted granted Critical
Publication of CN113672350B publication Critical patent/CN113672350B/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
    • 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
    • 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/45562Creating, deleting, cloning virtual machine instances
    • 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/45575Starting, stopping, suspending or resuming virtual machine instances
    • 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/45595Network integration; Enabling network access in virtual machine instances

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

本申请公开了一种应用处理方法,包括:确定业务区域K8S环境下待进行灾备处理的目标应用;将业务区域的业务数据库中目标应用的当前配置信息备份到灾备区域的灾备数据库中;调用容器存储接口中的快照接口,对业务区域业务存储中目标应用的当前业务数据执行快照操作,并将目标应用的当前业务数据备份到灾备区域的灾备存储中;生成当前备份点,并基于当前备份点更新目标应用的备份链。应用本申请所提供的技术方案,可以提高备份效率,避免消耗过多资源,而且,基于目标应用的当前配置信息和当前业务数据,可以对目标应用进行有效恢复。本申请还公开了一种应用处理装置、设备及存储介质,具有相应技术效果。

Description

一种应用处理方法、装置及相关设备
技术领域
本申请涉及计算机应用技术领域,特别是涉及一种应用处理方法、装置及相关设备。
背景技术
K8S为Kubernetes的简称,是一个开源的容器编排引擎,用于管理云平台中多个主机上的容器化的应用。Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),其提供了应用部署、规划、更新、维护的一种机制。
在K8S环境下,为了对应用进行保护,总是会有对应用进行灾备的需求。目前,多是通过对整个K8S环境下的ETCD数据库进行备份,实现应用灾备需求。ETCD为K8S环境中使用的分布式数据库,为一款非关系型数据库,通过key-value(关键字-值)的方式保存K8S环境的资源和配置信息。
这种方式相当于对整个K8S环境中的所有应用的配置信息进行备份,即只要有针对一个或多个应用的灾备需求,就要对整个K8S环境中的所有应用的配置信息都进行备份,备份效率较低,且将消耗较多资源,而且,基于配置信息恢复的应用将作为新的运行实例运行,无法接续执行之前的业务,无法对有状态应用进行有效恢复。
发明内容
本申请的目的是提供一种应用处理方法、装置及相关设备,以提高K8S环境中有状态应用的备份效率,避免资源浪费,实现对有状态应用的有效恢复。
为解决上述技术问题,本申请提供如下技术方案:
一种应用处理方法,包括:
确定业务区域K8S环境下待进行灾备处理的目标应用,所述目标应用为有状态应用;
将所述业务区域的业务数据库中所述目标应用的当前配置信息备份到灾备区域的灾备数据库中;
调用容器存储接口中的快照接口,对所述业务区域业务存储中所述目标应用的当前业务数据执行快照操作,并将所述目标应用的当前业务数据备份到所述灾备区域的灾备存储中;
基于所述灾备区域的所述目标应用的当前配置信息和所述目标应用的当前业务数据,生成当前备份点,并基于所述当前备份点更新所述目标应用的备份链。
在本申请的一种具体实施方式中,所述将所述业务区域的业务数据库中所述目标应用的当前配置信息备份到灾备区域的灾备数据库中,包括:
通过查询所述业务区域的业务数据库,获取所述目标应用的当前配置信息;
将所述目标应用的当前配置信息写入到灾备区域的灾备数据库中。
在本申请的一种具体实施方式中,所述目标应用的当前配置信息包括所述目标应用的当前容器镜像版本信息、持久化卷、持久化卷声明、配置参数信息和配置脚本信息。
在本申请的一种具体实施方式中,所述调用容器存储接口中的快照接口,对所述业务区域业务存储中所述目标应用的当前业务数据执行快照操作,并将所述目标应用的当前业务数据备份到所述灾备区域的灾备存储中,包括:
调用容器存储接口中的快照接口,在所述业务区域的业务存储中对所述目标应用的持久化卷对应的业务盘执行快照操作,生成所述目标应用的存储快照;
将所述存储快照发送给所述灾备区域的灾备网关,以使所述灾备网关将所述存储快照写入在所述灾备区域的灾备存储中创建的灾备盘中,实现对所述目标应用的当前业务数据的灾备。
在本申请的一种具体实施方式中,还包括:
对所述业务区域的业务存储中所述目标应用的多个存储快照进行合并处理,以使所述业务存储中只保存所述目标应用的一个快照点。
在本申请的一种具体实施方式中,所述确定业务区域K8S环境下待进行灾备处理的目标应用,所述目标应用为有状态应用,包括:
通过业务区域K8S环境下应用程序接口服务接收灾备请求;
基于所述灾备请求,确定所述业务区域K8S环境下待进行灾备处理的目标应用。
在本申请的一种具体实施方式中,还包括:
接收对所述业务区域K8S环境下所述目标应用的恢复请求;
根据所述恢复请求,确定所述灾备区域所述目标应用的备份链中的目标备份点;
将所述目标备份点及所述目标备份点之前的所有备份点对应的业务数据导出到所述业务存储的新盘中;
针对所述新盘,创建新的持久化卷和新的持久化卷声明;
基于所述目标备份点对应的配置信息,恢复所述目标应用,并关联所述新的持久化卷声明。
一种应用处理装置,包括:
目标应用确定模块,用于确定业务区域K8S环境下待进行灾备处理的目标应用,所述目标应用为有状态应用;
配置信息备份模块,用于将所述业务区域的业务数据库中所述目标应用的当前配置信息备份到灾备区域的灾备数据库中;
业务数据备份模块,用于调用容器存储接口中的快照接口,通过对所述业务区域业务存储中所述目标应用的当前业务数据执行快照操作,将所述目标应用的当前业务数据备份到所述灾备区域的灾备存储中;
备份链更新模块,用于基于所述灾备区域的所述目标应用的当前配置信息和所述目标应用的当前业务数据,生成当前备份点,并基于所述当前备份点更新所述目标应用的备份链。
一种应用处理设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任一项所述的应用处理方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的应用处理方法的步骤。
应用本申请实施例所提供的技术方案,在确定业务区域K8S环境下待进行灾备处理的目标应用后,将业务区域的业务数据库中目标应用的当前配置信息备份到灾备区域的灾备数据库中,并调用容器存储接口中的快照接口,通过对业务区域业务存储中目标应用的当前业务数据执行快照操作,将目标应用的当前业务数据备份到灾备区域的灾备存储中,基于灾备区域的目标应用的当前配置信息和目标应用的当前业务数据,生成当前备份点,并基于当前备份点更新目标应用的备份链。在有对业务区域K8S环境下的目标应用的灾备需求时,可以单独将目标应用的当前配置信息和当前业务数据备份到灾备区域,不需要对整个K8S环境中的所有应用的配置信息都进行备份,可以提高备份效率,避免消耗过多资源,而且,基于灾备区域的目标应用的当前配置信息和当前业务数据,可以对目标应用进行有效恢复。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中一种应用处理方法的实施流程图;
图2为本申请实施例中应用处理系统架构示意图;
图3为本申请实施例中一种应用处理装置的结构示意图;
图4为本申请实施例中一种应用处理设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图1所示,为本申请实施例所提供的一种应用处理方法的实施流程图,该方法可以包括以下步骤:
S110:确定业务区域K8S环境下待进行灾备处理的目标应用。
目标应用为有状态应用。
K8S环境下可以部署主节点和多个工作节点,在工作节点上可以运行各种应用。如有状态应用、无状态应用等。有状态(stateful)是指有数据存储功能。无状态(stateless)是指一次操作,不能保存数据。对于无状态应用在其出现问题时,可以直接重启一个应用,不需要对其进行备份,而对于有状态应用,在其出现问题时,则需要依赖于之前的配置信息和业务数据等进行恢复,才能使其接续执行之前的业务,所以,需要对有状态应用进行灾备处理。
在有对有状态应用的灾备需求时,用户可以发出相应的备份请求,在备份请求中可以携带要进行灾备处理的应用信息。可以通过业务区域K8S环境下应用程序接口服务(API Server)接收灾备请求,基于备份请求,确定业务区域K8S环境下待进行灾备处理的目标应用。
确定业务区域K8S环境下待进行灾备处理的目标应用后,可以继续执行后续步骤的操作。
S120:将业务区域的业务数据库中目标应用的当前配置信息备份到灾备区域的灾备数据库中。
在本申请实施例中,在确定业务区域K8S环境下待进行灾备处理的目标应用后,可以将业务区域的业务数据库中目标应用的当前配置信息备份到灾备区域的灾备数据库中。灾备区域与业务区域不在同一区域。业务数据库可以为ETCD,在业务数据库中可以记录目标应用的配置信息。
目标应用的当前配置信息可以包括目标应用的当前容器镜像版本信息、持久化卷、持久化卷声明、配置参数信息和配置脚本信息。配置脚本信息为如用于记录规格、运行环境等的yaml文件等信息。持久化卷(Persistent Volume,PV),是对底层的共享存储的一种抽象,其与具体的底层的共享存储技术的实现方式有关,比如Ceph(一种分布式文件系统)、GlusterFS(一种开源的分布式文件系统)、NFS(Network File System,网络文件系统)等。持久化卷声明(Persistent Volume Claim,PVC)是用户存储的一种声明,PVC消耗的是PV资源,对于真正使用存储的用户不需要关心底层的存储实现细节,只需要直接使用PVC即可。
在本申请的一种具体实施方式中,可以通过查询业务区域的业务数据库,获取目标应用的当前配置信息,然后将目标应用的当前配置信息写入到灾备区域的灾备数据库中。
在将目标应用的当前配置信息写入到灾备区域的灾备数据库中后,可以生成目标应用的当前配置信息的链接和引用关系。通过目标应用的当前配置信息的链接可以在灾备数据库中查找相应的配置信息,通过目标应用的当前配置信息的引用关系可以确定当前配置信息与目标应用的其他配置信息之间的关联关系。
S130:调用容器存储接口中的快照接口,对业务区域业务存储中目标应用的当前业务数据执行快照操作,并将目标应用的当前业务数据备份到灾备区域的灾备存储中。
在本申请实施例中,可以在容器存储接口中增加快照接口。容器存储接口(Container Storage Interface,CSI)是由来自Kubernetes、Mesos、Docker等社区的成员(member)联合制定的一个行业标准接口规范,旨在将任意存储系统暴露给容器化应用程序。CSI规范定义了存储提供商(SP)实现CSI兼容插件的最小操作集和部署建议。CSI规范的主要焦点是声明插件必须实现的接口。
调用容器存储接口中的快照接口,可以对业务区域业务存储中目标应用的当前业务数据执行快照操作。快照,是关于指定数据集合的一个完全可用拷贝,该拷贝包括相应数据在某个时间点(拷贝开始的时间点)的映像。快照可以是其所表示的数据的一个副本,也可以是数据的一个复制品。
对业务区域业务存储中目标应用的当前业务数据执行快照操作后,可以将目标应用的当前业务数据备份到灾备区域的灾备存储中。
具体的,可以调用容器存储接口中的快照接口,在业务区域的业务存储中对目标应用的持久化卷对应的业务盘执行快照操作,生成目标应用的存储快照,然后将存储快照发送给灾备区域的灾备网关,以使灾备网关将存储快照写入在灾备区域的灾备存储中创建的灾备盘中,实现对目标应用的当前业务数据的灾备。
在对目标应用的当前业务数据进行灾备之前,可以先启动灾备状态机,实时记录对目标应用的当前业务数据执行灾备操作所处状态,以便在灾备过程中出现问题时可以在出现问题的地方继续执行灾备操作。
通过调用容器存储接口中的快照接口,可以在业务区域的业务存储中对目标应用的持久化卷对应的业务盘执行快照操作,从而可以生成目标应用的存储快照。每个盘对应一个LUN(Logical Unit Number,逻辑单元号)。
在灾备区域可以预先部署灾备网关,并预先在灾备区域的灾备存储中创建一个灾备盘,将在业务存储中对目标应用的持久化卷对应的业务盘执行快照操作生成的目标应用的存储快照发送给灾备区域的灾备网关,灾备网关接收到存储快照后,可以将存储快照写入到灾备盘中,实现对目标应用的当前业务数据的灾备。
在本申请的一个实施例中,可以对业务区域的业务存储中目标应用的多个存储快照进行合并处理,以使业务存储中只保存目标应用的一个快照点。具体的,可以在达到设定时间间隔时对业务存储中目标应用的多个存储快照进行合并处理,还可以是在业务区域的业务存储中对目标应用的持久化卷对应的业务盘执行快照操作,生成目标应用的存储快照,并将存储快照发送给灾备区域的灾备网关后,对业务存储中目标应用的多个存储快照进行合并处理。这样可以减少存储快照在业务存储中的占用空间。
S140:基于灾备区域的目标应用的当前配置信息和目标应用的当前业务数据,生成当前备份点,并基于当前备份点更新目标应用的备份链。
在本申请实施例中,将业务区域的业务数据库中目标应用的当前配置信息备份到灾备区域的灾备数据库中,并调用容器存储接口中的快照接口,对业务区域业务存储中目标应用的当前业务数据执行快照操作,并将目标应用的当前业务数据备份到灾备区域的灾备存储中后,可以基于灾备区域的目标应用的当前配置信息和目标应用的当前业务数据,生成当前备份点,当前备份点可以记录目标应用的当前配置信息的链接、引用关系等,还可以记录目标应用的当前业务数据的快照信息。在不同时刻对目标应用的备份处理,可以生成相应的备份点,多个备份点可以形成备份链。在生成当前备份点后,可以基于当前备份点更新目标应用的备份链。在业务区域可以输出显示该备份链。
为便于理解,以图2所示系统架构对本申请实施例所提供的备份处理过程进行说明。
业务区域K8S环境下可以包括主节点1和多个工作节点,如工作节点1、工作节点2,在工作节点1上运行有目标应用,目标应用为有状态应用,由前端pod(K8S中的最小资源组织单位)和数据库pod构成,工作节点2上运行了无状态应用。目标应用和无状态应用均可通过各自节点上部署的kubeproxy(Kubernetes的核心组件)进行对外的业务访问。用户可以通过业务区域容器云管理平台对该K8S环境进行管理。工作节点1和工作节点2中还运行有节点代理kubelet,维持运行中的pods以及提供kubernetes运行时环境。
业务区域主节点中可以部署应用程序接口服务、备份服务端和容器存储接口。工作节点1中可以部署灾备客户端。业务区域对应有业务存储。
灾备区域与业务区域不在同一区域,灾备区域K8S环境下可以包括主节点2和多个工作节点,如工作节点3。工作节点3与业务区域的工作节点1相对应,可以运行相应的有状态应用,并部署有灾备客户端,主节点2中可以部署应用程序接口服务、灾备网关和容器存储接口。灾备区域对应有灾备存储。
业务区域的灾备服务端可以通过应用程序接口服务接收用户通过容器云管理平台发送的对目标应用的灾备请求,确定业务区域K8S环境下的目标应用为待进行灾备处理的应用。
业务区域的灾备服务端通过查询业务区域的业务数据库,可以获取目标应用的当前配置信息,并将目标应用的当前配置信息写入到灾备区域的灾备数据库中。具体的,可以通过业务区域的灾备客户端将目标应用的当前配置信息传送给灾备区域的灾备网关,由灾备网关将目标应用的当前配置信息发送给灾备区域的灾备客户端,写入到灾备区域的灾备数据库中。
业务区域的灾备服务端还可以启动灾备状态机,调用容器存储接口中的快照接口,在业务区域的业务存储中对目标应用的持久化卷对应的业务盘执行快照操作,生成目标应用的存储快照;
业务区域的灾备客户端可以将存储快照发送给灾备区域的灾备网关,灾备网关通过灾备区域的容器存储接口将存储快照写入灾备存储的灾备盘中,并在灾备区域的灾备存储中更新备份链。
本申请实施例在业务区域的容器存储接口中增加快照接口,在业务区域K8S环境中部署独立的灾备服务端,可以控制容器存储接口在应用无感知的情况下对业务存储中的相应盘进行快照,并通过灾备区域的灾备网关将快照备份到灾备区域的灾备存储上,实现有状态应用的业务数据的备份。同时,结合对有状态应用配置信息的备份,实现精准且完整的有状态应用的灾备。
应用本申请实施例所提供的方法,在确定业务区域K8S环境下待进行灾备处理的目标应用后,将业务区域的业务数据库中目标应用的当前配置信息备份到灾备区域的灾备数据库中,并调用容器存储接口中的快照接口,通过对业务区域业务存储中目标应用的当前业务数据执行快照操作,将目标应用的当前业务数据备份到灾备区域的灾备存储中,基于灾备区域的目标应用的当前配置信息和目标应用的当前业务数据,生成当前备份点,并基于当前备份点更新目标应用的备份链。在有对业务区域K8S环境下的目标应用的灾备需求时,可以单独将目标应用的当前配置信息和当前业务数据备份到灾备区域,不需要对整个K8S环境中的所有应用的配置信息都进行备份,可以提高备份效率,避免消耗过多资源,而且,基于灾备区域的目标应用的当前配置信息和当前业务数据,可以对目标应用进行有效恢复。
在本申请的一个实施例中,该方法还可以包括以下步骤:
步骤一:接收对业务区域K8S环境下目标应用的恢复请求;
步骤二:根据恢复请求,确定灾备区域目标应用的备份链中的目标备份点;
步骤三:将目标备份点及目标备份点之前的所有备份点对应的业务数据导出到业务存储的新盘中;
步骤四:针对新盘,创建新的持久化卷和新的持久化卷声明;
步骤五:基于目标备份点对应的配置信息,恢复目标应用,并关联新的持久化卷声明。
为便于描述,将上述几个步骤结合起来进行说明。
目标应用可能会因为出现错误、异常等无法正常运行,这种情况下,就需要对目标应用进行恢复处理。可以由用户发出相应的恢复请求。在接收到对业务区域K8S环境下目标应用的恢复请求后,可以根据该恢复请求,确定灾备区域目标应用的备份链中的目标备份点。在恢复请求中可以携带目标备份点的信息,通过对恢复请求进行解析,即可确定目标备份点。
确定目标备份点后,可以将目标备份点及备份链中目标备份点之前的所有备份点对应的业务数据导出到业务区域的业务存储的新盘中,对于导出到业务存储的新盘的业务数据可以进行合并处理。
针对新盘,可以创建新的持久化卷和新的持久化卷声明。
然后,获取目标备份点对应的配置信息,可以通过读取灾备区域的灾备数据库获取目标备份点对应的配置信息,基于目标备份点对应的配置信息,可以在业务区域恢复目标应用,进而可以关联新的持久化卷声明,使得目标应用可以正常运行,接续执行之前的业务。
本申请实施例基于目标应用的备份链,可以快速、有效地对目标应用进行恢复处理,避免影响目标应用的正常运行。
相应于上面的方法实施例,本申请实施例还提供了一种应用处理装置,下文描述的应用处理装置与上文描述的应用处理方法可相互对应参照。
参见图3所示,该装置可以包括以下模块:
目标应用确定模块310,用于确定业务区域K8S环境下待进行灾备处理的目标应用,目标应用为有状态应用;
配置信息备份模块320,用于将业务区域的业务数据库中目标应用的当前配置信息备份到灾备区域的灾备数据库中;
业务数据备份模块330,用于调用容器存储接口中的快照接口,对业务区域业务存储中目标应用的当前业务数据执行快照操作,并将目标应用的当前业务数据备份到灾备区域的灾备存储中;
备份链更新模块340,用于基于灾备区域的目标应用的当前配置信息和目标应用的当前业务数据,生成当前备份点,并基于当前备份点更新目标应用的备份链。
应用本申请实施例所提供的装置,在确定业务区域K8S环境下待进行灾备处理的目标应用后,将业务区域的业务数据库中目标应用的当前配置信息备份到灾备区域的灾备数据库中,并调用容器存储接口中的快照接口,通过对业务区域业务存储中目标应用的当前业务数据执行快照操作,将目标应用的当前业务数据备份到灾备区域的灾备存储中,基于灾备区域的目标应用的当前配置信息和目标应用的当前业务数据,生成当前备份点,并基于当前备份点更新目标应用的备份链。在有对业务区域K8S环境下的目标应用的灾备需求时,可以单独将目标应用的当前配置信息和当前业务数据备份到灾备区域,不需要对整个K8S环境中的所有应用的配置信息都进行备份,可以提高备份效率,避免消耗过多资源,而且,基于灾备区域的目标应用的当前配置信息和当前业务数据,可以对目标应用进行有效恢复。
在本申请的一种具体实施方式中,配置信息备份模块320,用于:
通过查询业务区域的业务数据库,获取目标应用的当前配置信息;
将目标应用的当前配置信息写入到灾备区域的灾备数据库中。
在本申请的一种具体实施方式中,目标应用的当前配置信息包括目标应用的当前容器镜像版本信息、持久化卷、持久化卷声明、配置参数信息和配置脚本信息。
在本申请的一种具体实施方式中,业务数据备份模块330,用于:
调用容器存储接口中的快照接口,在业务区域的业务存储中对目标应用的持久化卷对应的业务盘执行快照操作,生成目标应用的存储快照;
将存储快照发送给灾备区域的灾备网关,以使灾备网关将存储快照写入在灾备区域的灾备存储中创建的灾备盘中,实现对目标应用的当前业务数据的灾备。
在本申请的一种具体实施方式中,还包括快照合并处理模块,用于:
对业务区域的业务存储中目标应用的多个存储快照进行合并处理,以使业务存储中只保存目标应用的一个快照点。
在本申请的一种具体实施方式中,目标应用确定模块310,用于:
通过业务区域K8S环境下应用程序接口服务接收灾备请求;
基于灾备请求,确定业务区域K8S环境下待进行灾备处理的目标应用。
在本申请的一种具体实施方式中,还包括目标应用恢复模块,用于:
接收对业务区域K8S环境下目标应用的恢复请求;
根据恢复请求,确定灾备区域目标应用的备份链中的目标备份点;
将目标备份点及目标备份点之前的所有备份点对应的业务数据导出到业务存储的新盘中;
针对新盘,创建新的持久化卷和新的持久化卷声明;
基于目标备份点对应的配置信息,恢复目标应用,并关联新的持久化卷声明。
相应于上面的方法实施例,本申请实施例还提供了一种应用处理设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现上述应用处理方法的步骤。
如图4所示,为应用处理设备的组成结构示意图,应用处理设备可以包括:处理器10、存储器11、通信接口12和通信总线13。处理器10、存储器11、通信接口12均通过通信总线13完成相互间的通信。
在本申请实施例中,处理器10可以为中央处理器(Central Processing Unit,CPU)、特定应用集成电路、数字信号处理器、现场可编程门阵列或者其他可编程逻辑器件等。
处理器10可以调用存储器11中存储的程序,具体的,处理器10可以执行应用处理方法的实施例中的操作。
存储器11中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本申请实施例中,存储器11中至少存储有用于实现以下功能的程序:
确定业务区域K8S环境下待进行灾备处理的目标应用,目标应用为有状态应用;
将业务区域的业务数据库中目标应用的当前配置信息备份到灾备区域的灾备数据库中;
调用容器存储接口中的快照接口,对业务区域业务存储中目标应用的当前业务数据执行快照操作,并将目标应用的当前业务数据备份到灾备区域的灾备存储中;
基于灾备区域的目标应用的当前配置信息和目标应用的当前业务数据,生成当前备份点,并基于当前备份点更新目标应用的备份链。
在一种可能的实现方式中,存储器11可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及至少一个功能(比如接口调用功能、数据备份功能)所需的应用程序等;存储数据区可存储使用过程中所创建的数据,如配置数据、业务数据等。
此外,存储器11可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。
通信接口12可以为通信模块的接口,用于与其他设备或者系统连接。
当然,需要说明的是,图4所示的结构并不构成对本申请实施例中应用处理设备的限定,在实际应用中应用处理设备可以包括比图4所示的更多或更少的部件,或者组合某些部件。
相应于上面的方法实施例,本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述应用处理方法的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

Claims (9)

1.一种应用处理方法,其特征在于,包括:
确定业务区域K8S环境下待进行灾备处理的目标应用,所述目标应用为有状态应用;
将所述业务区域的业务数据库中所述目标应用的当前配置信息备份到灾备区域的灾备数据库中;
调用容器存储接口中的快照接口,在所述业务区域的业务存储中对所述目标应用的持久化卷对应的业务盘执行快照操作,生成所述目标应用的存储快照;
将所述存储快照发送给所述灾备区域的灾备网关,以使所述灾备网关将所述存储快照写入在所述灾备区域的灾备存储中创建的灾备盘中,实现对所述目标应用的当前业务数据的灾备;
基于所述灾备区域的所述目标应用的当前配置信息和所述目标应用的当前业务数据,生成当前备份点,并基于所述当前备份点更新所述目标应用的备份链。
2.根据权利要求1所述的应用处理方法,其特征在于,所述将所述业务区域的业务数据库中所述目标应用的当前配置信息备份到灾备区域的灾备数据库中,包括:
通过查询所述业务区域的业务数据库,获取所述目标应用的当前配置信息;
将所述目标应用的当前配置信息写入到灾备区域的灾备数据库中。
3.根据权利要求1所述的应用处理方法,其特征在于,所述目标应用的当前配置信息包括所述目标应用的当前容器镜像版本信息、持久化卷、持久化卷声明、配置参数信息和配置脚本信息。
4.根据权利要求1所述的应用处理方法,其特征在于,还包括:
对所述业务区域的业务存储中所述目标应用的多个存储快照进行合并处理,以使所述业务存储中只保存所述目标应用的一个快照点。
5.根据权利要求1所述的应用处理方法,其特征在于,所述确定业务区域K8S环境下待进行灾备处理的目标应用,所述目标应用为有状态应用,包括:
通过业务区域K8S环境下应用程序接口服务接收灾备请求;
基于所述灾备请求,确定所述业务区域K8S环境下待进行灾备处理的目标应用。
6.根据权利要求1至5之中任一项所述的应用处理方法,其特征在于,还包括:
接收对所述业务区域K8S环境下所述目标应用的恢复请求;
根据所述恢复请求,确定所述灾备区域所述目标应用的备份链中的目标备份点;
将所述目标备份点及所述目标备份点之前的所有备份点对应的业务数据导出到所述业务存储的新盘中;
针对所述新盘,创建新的持久化卷和新的持久化卷声明;
基于所述目标备份点对应的配置信息,恢复所述目标应用,并关联所述新的持久化卷声明。
7.一种应用处理装置,其特征在于,包括:
目标应用确定模块,用于确定业务区域K8S环境下待进行灾备处理的目标应用,所述目标应用为有状态应用;
配置信息备份模块,用于将所述业务区域的业务数据库中所述目标应用的当前配置信息备份到灾备区域的灾备数据库中;
业务数据备份模块,用于调用容器存储接口中的快照接口,在所述业务区域的业务存储中对所述目标应用的持久化卷对应的业务盘执行快照操作,生成所述目标应用的存储快照;将所述存储快照发送给所述灾备区域的灾备网关,以使所述灾备网关将所述存储快照写入在所述灾备区域的灾备存储中创建的灾备盘中,实现对所述目标应用的当前业务数据的灾备;
备份链更新模块,用于基于所述灾备区域的所述目标应用的当前配置信息和所述目标应用的当前业务数据,生成当前备份点,并基于所述当前备份点更新所述目标应用的备份链。
8.一种应用处理设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述的应用处理方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的应用处理方法的步骤。
CN202110961257.3A 2021-08-20 2021-08-20 一种应用处理方法、装置及相关设备 Active CN113672350B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110961257.3A CN113672350B (zh) 2021-08-20 2021-08-20 一种应用处理方法、装置及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110961257.3A CN113672350B (zh) 2021-08-20 2021-08-20 一种应用处理方法、装置及相关设备

Publications (2)

Publication Number Publication Date
CN113672350A CN113672350A (zh) 2021-11-19
CN113672350B true CN113672350B (zh) 2023-12-29

Family

ID=78544529

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110961257.3A Active CN113672350B (zh) 2021-08-20 2021-08-20 一种应用处理方法、装置及相关设备

Country Status (1)

Country Link
CN (1) CN113672350B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114237498B (zh) * 2021-12-02 2023-08-11 上海道客网络科技有限公司 一种云原生存储数据卷的快照生成方法与系统
WO2023185300A1 (zh) * 2022-04-01 2023-10-05 华为技术有限公司 容器存储管理方法及装置
CN115220961A (zh) * 2022-07-06 2022-10-21 中电信数智科技有限公司 一种基于k8s结合灾备演练故障预测及Pod调度的方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109117305A (zh) * 2018-07-24 2019-01-01 郑州市景安网络科技股份有限公司 一种数据备份方法、装置、设备及计算机可读存储介质
CN109218356A (zh) * 2017-06-30 2019-01-15 伊姆西Ip控股有限责任公司 管理服务器上有状态应用的方法和设备
CN109491832A (zh) * 2018-09-26 2019-03-19 华为技术有限公司 数据容灾方法与站点
US10469574B1 (en) * 2016-04-20 2019-11-05 EMC IP Holding Company LLC Incremental container state persistency and replication for containerized stateful applications
WO2020061597A2 (en) * 2018-09-13 2020-03-26 First Genesis, Inc. BLOCKCHAIN PLATFORM AS A SERVICE (BPaaS)
CN112099989A (zh) * 2020-08-28 2020-12-18 中国—东盟信息港股份有限公司 一种Kubernetes云原生应用灾备、迁移与恢复的方法
CN112181720A (zh) * 2020-09-11 2021-01-05 济南浪潮数据技术有限公司 一种基于云管理平台的虚拟数据中心备份方法及装置
CN112463457A (zh) * 2020-12-10 2021-03-09 上海爱数信息技术股份有限公司 一种保障应用一致性的数据保护方法、装置、介质及系统
CN112579008A (zh) * 2020-12-24 2021-03-30 深信服科技股份有限公司 容器编排引擎的存储部署方法、装置、设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10963349B2 (en) * 2017-08-25 2021-03-30 Vmware, Inc. Containerized application snapshots
WO2021011262A1 (en) * 2019-07-12 2021-01-21 Trilio Data, Inc. Scalable cloud-based backup method

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10469574B1 (en) * 2016-04-20 2019-11-05 EMC IP Holding Company LLC Incremental container state persistency and replication for containerized stateful applications
CN109218356A (zh) * 2017-06-30 2019-01-15 伊姆西Ip控股有限责任公司 管理服务器上有状态应用的方法和设备
CN109117305A (zh) * 2018-07-24 2019-01-01 郑州市景安网络科技股份有限公司 一种数据备份方法、装置、设备及计算机可读存储介质
WO2020061597A2 (en) * 2018-09-13 2020-03-26 First Genesis, Inc. BLOCKCHAIN PLATFORM AS A SERVICE (BPaaS)
CN109491832A (zh) * 2018-09-26 2019-03-19 华为技术有限公司 数据容灾方法与站点
CN112099989A (zh) * 2020-08-28 2020-12-18 中国—东盟信息港股份有限公司 一种Kubernetes云原生应用灾备、迁移与恢复的方法
CN112181720A (zh) * 2020-09-11 2021-01-05 济南浪潮数据技术有限公司 一种基于云管理平台的虚拟数据中心备份方法及装置
CN112463457A (zh) * 2020-12-10 2021-03-09 上海爱数信息技术股份有限公司 一种保障应用一致性的数据保护方法、装置、介质及系统
CN112579008A (zh) * 2020-12-24 2021-03-30 深信服科技股份有限公司 容器编排引擎的存储部署方法、装置、设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Microservice Based Architecture: Towards High-Availability for Stateful Applications with Kubernetes;Leila Abdollahi Vayghan等;《2019 IEEE 19th International Conference on Software Quality, Reliability and Security (QRS)》;第176-185页 *
业务系统灾备中心技术的运用;胡俊;《信息与电脑》(第23期);第188-189页 *

Also Published As

Publication number Publication date
CN113672350A (zh) 2021-11-19

Similar Documents

Publication Publication Date Title
CN113672350B (zh) 一种应用处理方法、装置及相关设备
US11132264B2 (en) Point-in-time copy restore
JP4570312B2 (ja) コンピュータシステムにおいてボリュームスナップショット依存関係を提供する方法および装置
US8886796B2 (en) Load balancing when replicating account data
US8132043B2 (en) Multistage system recovery framework
US9275060B1 (en) Method and system for using high availability attributes to define data protection plans
US7685227B2 (en) Message forwarding backup manager in a distributed server system
CN110633320A (zh) 分布式数据服务的处理方法、系统、设备及存储介质
US10324799B2 (en) Enhanced application write performance
CN113656149A (zh) 一种应用处理方法、装置及相关设备
US10817387B2 (en) Auto point in time data restore for instance copy
Ganga et al. A fault tolerent approach in scientific workflow systems based on cloud computing
CN114281263B (zh) 容器集群管理系统的存储资源处理方法、系统和设备
US20170075773A1 (en) Restoring a point-in-time copy
CN113051102B (zh) 文件备份方法、装置、系统、存储介质和计算机设备
US11151020B1 (en) Method and system for managing deployment of software application components in a continuous development pipeline
US10387262B1 (en) Federated restore of single instance databases and availability group database replicas
US9760450B2 (en) Restoring a clone point-in-time copy
CN112035062B (zh) 云计算的本地存储的迁移方法、计算机设备及存储介质
US11397645B1 (en) Storage volume snapshot object management
CN107463638A (zh) 离线虚拟机间文件共享方法和设备
US20200081790A1 (en) Method of tracking and analyzing data integrity issues by leveraging cloud services
CN114661420B (zh) 基于Kubernetes容器平台的应用保护方法、装置及系统
US11777810B2 (en) Status sharing in a resilience framework
US10880388B1 (en) Automatic redirection in scale-out cluster environments that perform distributed deduplication

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