CN114661420A - 基于Kubernetes容器平台的应用保护方法、装置及系统 - Google Patents
基于Kubernetes容器平台的应用保护方法、装置及系统 Download PDFInfo
- Publication number
- CN114661420A CN114661420A CN202210311262.4A CN202210311262A CN114661420A CN 114661420 A CN114661420 A CN 114661420A CN 202210311262 A CN202210311262 A CN 202210311262A CN 114661420 A CN114661420 A CN 114661420A
- Authority
- CN
- China
- Prior art keywords
- backup
- application
- user application
- user
- crd
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000011084 recovery Methods 0.000 claims description 78
- 238000003860 storage Methods 0.000 claims description 52
- 230000009471 action Effects 0.000 claims description 47
- 238000004590 computer program Methods 0.000 claims description 10
- 230000003993 interaction Effects 0.000 claims description 6
- 238000005096 rolling process Methods 0.000 claims description 5
- 230000002159 abnormal effect Effects 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000002085 persistent effect Effects 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 230000005012 migration Effects 0.000 description 3
- 238000013508 migration Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003442 weekly effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000011031 large-scale manufacturing process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了基于Kubernetes容器平台的应用保护方法,包括:创建CRD对象;将CRD对象部署到Kubernetes集群中,CRD对象能够描述Kubernetes集群中的一个或多个用户应用;使用CRD对象创建用户应用的备份。本申请以集群中的用户应用为单位,符合实际业务使用场景;能够为Kubernetes集群的应用提供保护,且备份策略更灵活,提高了业务数据在异常情况下的安全性。此外,本申请还提供基于Kubernetes容器平台的应用保护系统。
Description
技术领域
本申请涉及云计算领域,尤其是涉及基于Kubernetes容器平台的应用保护方法、装置、系统、电子设备及计算机可读存储介质。
背景技术
Kubernetes(简称k8s)是Google开源的一个容器编排引擎,用于容器集群的自动化部署、扩容以及运维。通过该开源平台可以快速、有效地响应用户需求,快速而有预期地部署用户应用,极速地扩展用户应用,无缝对接新应用功能。而且,节省资源,优化硬件资源的使用,同时能够为容器编排管理提供完整的开源方案。基于以上优点,Kubernetes已成为容器编排的事实标准,越来愈多的系统都基于Kubernetes平台扩展或者运行自己的应用,提高资源利用效率和生产力。
尽管可以在Kubernetes集群中使用高可用方式部署应用,但在数据中心发生地震、火灾或者人为误操作等突发情况时,还是会导致应用不可用甚至应用数据的丢失。因此对于运行在Kubernetes集群中应用,为了保证业务数据的可靠性,对应用数据及其运行所依赖的资源进行保护是非常重要的。
Kubernetes本身目前没有自带应用数据的备份与恢复等保护功能,一些厂商在Kubernetes数据备份领域做了探索:对集群级别的数据进行备份恢复。然而,这种方式粒度太大,不仅备份量大,恢复时候影响面也非常大,常常因为某个应用数据的异常就需要恢复整个Kubernetes集群,这种备份恢复策略在实际使用中并不友好。另有厂商实现Kubernetes集群中单个资源的备份,比如:对Kubernetes集群中特定的pod或者secret进行备份。然而,这种备份方式粒度太小,当备份资源数量大时,对各资源的版本管理上有非常大的难度,因此也不适合大规模生产场景使用。
基于此,有必要针对现有Kubernetes的应用保护方案进行改进。
发明内容
本申请的目的在于实现kubernetes容器平台中的应用保护。
本申请的目的采用以下技术方案实现:
第一方面,提供基于Kubernetes容器平台的应用保护方法,包括:创建自定义资源(Custom Resource Definition,CRD)对象;将CRD对象部署到Kubernetes集群中,CRD对象能够描述Kubernetes集群中的一个或多个用户应用;使用CRD对象创建用户应用的备份。
在一些可选的实施例中,方法还包括:根据用户应用的备份,恢复至少部分的用户应用的数据。
在一些可选的实施例中,方法还包括:根据用户应用的备份,恢复至少部分的用户应用的数据;以及,根据恢复的至少部分的用户应用的数据,进行用户应用的回滚。
在一些可选的实施例中,CRD对象包括用户应用、location、policy、backupRecord、recoverRecord中的至少一种。
在一些可选的实施例中,使用CRD对象创建用户应用的备份包括:通过命令行工具创建应用备份action,应用备份action包含备份的application名称、备份数据集存放后端location名称、以及是否备份应用的镜像参数;响应于action-controller监听到action对象的创建,执行用户应用的备份任务;或者,
创建policy,在policy中描述保护的用户应用的相关参数;通过policy-controller解析并执行policy,以执行用户应用的备份任务。
在一些可选的实施例中,方法还包括:生成第一记录,第一记录包括用户应用的备份的状态参数。
在一些可选的实施例中,根据用户应用的备份,恢复至少部分的用户应用的数据包括:从用户应用的备份获取location名称;根据location名称获取location名称连接信息;根据location名称连接信息下载对应备份集ID的备份数据;根据备份集ID的备份数据,恢复至少部分的用户应用的数据。
在一些可选的实施例中,恢复至少部分的用户应用的数据包括:pv恢复、Kubernetes api类型资源恢复、image镜像相关资源恢复中的至少一种。
在一些可选的实施例中,所述方法还包括:在恢复至少部分的用户应用的数据成功后,更新action状态。
在一些可选的实施例中,Kubernetes集群包括第一Kubernetes集群和第二Kubernetes集群,用户应用的备份在第一Kubernetes集群,恢复至少部分的用户应用的数据在第二Kubernetes集群。
第二方面,提供基于Kubernetes容器平台的应用保护装置,包括:Kubernetes集群模块,用于创建CRD对象,将CRD对象部署到Kubernetes集群中,CRD对象能够描述Kubernetes集群中的一个或多个用户应用;备份模块,用于创建用户应用的备份;恢复模块,用于根据用户应用的备份,恢复至少部分的用户应用的数据;回滚模块,用于根据恢复的至少部分的用户应用的数据,进行用户应用的回滚。
第三方面,提供基于Kubernetes容器平台的应用保护系统,包括:客户端命令行工具,用于实现外部与应用保护系统的交互;数据保护系统控制面,以容器形式部署在Kubernetes集群中,以实现业务逻辑管理;应用备份恢复的执行组件,部署在Kubernetes集群节点上,且用于创建CRD对象,将CRD对象部署到Kubernetes集群中,CRD对象能够描述Kubernetes集群中的一个或多个用户应用;用于使用CRD对象创建用户应用的备份;用于根据用户应用的备份,恢复至少部分的用户应用的数据;用于根据恢复的至少部分的用户应用的数据,进行用户应用的回滚。
在一些可选的实施例中,外部与应用保护系统的交互包括如下中的至少一者:用户应用备份的创建、用户应用备份的删除、用户应用备份的查询、用户应用恢复的创建、用户应用恢复的查询。
在一些可选的实施例中,业务逻辑管理包括如下中的至少一者:策略管理、备份管理、恢复管理或后端存储状态管理。
第四方面,本申请提供了一种电子设备,所述电子设备包括存储器、处理器以及用于执行任务的硬件模组,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现:创建CRD对象;将CRD对象部署到Kubernetes集群中,CRD对象能够描述Kubernetes集群中的一个或多个用户应用;使用CRD对象创建用户应用的备份;根据用户应用的备份,恢复至少部分的用户应用的数据;根据恢复的至少部分的用户应用的数据,进行用户应用的回滚。
第五方面,本申请提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述任一方法的步骤。
本申请实施例通过部署应用保护系统各组件到Kubernetes集群中,在Kubernetes集群创建CRD对象,进而使用application CRD对象描述Kubernetes集群中的用户应用,以集群中的用户应用为单位,符合实际业务使用场景;将用户应用涉及的资源统一起来作为有机整体进行保护;能够同时实现Kubernetes容器平台应用的备份、容灾、回滚等问题,提高业务以及业务数据在各种异常情况下的安全性。
附图说明
下面结合附图和实施例对本申请进一步说明。
图1是本申请一实施例提供的基于Kubernetes容器平台的应用保护系统;
图2是本申请一实施例提供的基于Kubernetes容器平台的应用保护方法的流程示意图;
图3是本申请一实施例提供的基于Kubernetes容器平台的应用保护系统进行用户应用的备份示意图;
图4是本申请一实施例提供的用户应用的备份方法的流程示意图;
图5是本申请另一实施例提供的基于Kubernetes容器平台的应用保护方法的流程示意图;
图6是本申请另一实施例提供的基于Kubernetes容器平台的应用保护系统进行用户应用的恢复示意图;
图7是本申请一实施例提供的用户应用的恢复方法的流程示意图;
图8是本申请再一实施例提供的基于Kubernetes容器平台的应用保护方法的流程示意图;
图9是本申请再一实施例提供的用户应用的回滚示意图;
图10是本申请一实施例提供的基于Kubernetes容器平台的应用保护装置;
图11是本申请实施例提供的一种电子设备的结构示意图;
图12是本申请实施例提供的一种用于实现流水线构建的程序产品的结构示意图。
如下将参考如附图中所示的本教导的示例性实施例更详细地描述本教导。虽然结合各种实施例和示例描述了本教导,但本教导并不旨在限于这些实施例。
具体实施方式
如本领域技术人员将认识到的,本教导包含各种替代、修改和等同物。能够访问本文中的教导的本领域普通技术人员将认识到在本文所述的本公开的范围内的附加实施方式、修改和实施例以及其它使用领域。说明书中对“一个实施例”或“实施例”的引用是指结合实施例描述的特定特征、结构或特点包括在教导的至少一个实施例中。说明书中各处出现的短语“在一个实施例中”不一定都指同一个实施例。应当理解的是,本教导的方法的各个步骤可以以任何次序和/或同时执行,只要教导保持可操作即可。此外,应当理解的是,本教导的装置和方法可以包括任何数量或所有所描述的实施例,只要教导保持可操作即可。
本申请所涉及的技术方案能够实现用户与设备的交互,所指设备包括但不限于用户设备、网络设备、或用户设备与网络设备通过网络相集成所构成的设备。用户设备包括但不限于任何一种可与用户进行人机交互,如通过触摸板进行人机交互的移动电子产品,例如:智能手机、平板电脑等,所述移动电子产品可以采用任意操作系统,如Android操作系统、iOS操作系统等。其中,网络设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑器件(ProgrammableLogic Device,PLD)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、数字信号处理器(Digital Signal Processor,DSP)、嵌入式设备等。网络设备包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云;在此,云由基于云计算(Cloud Computing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟超级计算机。所述网络包括但不限于互联网、广域网、城域网、局域网、VPN网络、无线自组织网络(Ad Hoc Network)等。优选地,设备还可以是运行于所述用户设备、网络设备、或用户设备与网络设备、网络设备、触摸终端或网络设备与触摸终端通过网络相集成所构成的设备上的程序。
下面,结合附图以及具体实施方式,对本申请做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。
针对现有技术中Kubernetes的应用保护能力缺失,本申请实施例提出了一种以用户应用为单位的保护方法及系统,具体以Kubernetes集群中的应用为单位,符合实际业务使用场景,将应用涉及的资源统一起来作为有机整体进行保护。而且针对应用保护,实现了应用备份、应用恢复、自定义备份规则、应用部分数据回滚的功能,并支持应用回滚、应用迁移、灾难恢复以应对各种异常场景。使用场景广,备份恢复策略灵活。
本申请实施例提出一种基于Kubernetes容器平台的应用保护系统,如图1所示,应用保护系统包括客户端命令行工具(client tool)110、数据保护系统控制面(controller-plane)120以及应用备份恢复的执行组件(backup/restore executor)130,图中箭头表示信息传输或交换的方向,上述组件部署在Kubernetes集群(cluster)中。
在一些实施例中,客户端命令行工具110,能够提供/实现用户和数据保护系统的交互功能,交互的功能例如可以是用户应用备份的创建、用户应用备份的删除、用户应用备份的查询、用户应用恢复的创建、用户应用恢复的查询、用户应用备份策略的创建、用户应用备份策略的删除以及用户应用备份策略的查询功能中的一种或多种的组合。在一些实施例中,数据保护系统控制面120以容器形式部署在Kubernetes集群中,以实现业务逻辑管理。可选的,业务逻辑管理包括策略管理、备份管理、恢复管理或后端存储状态管理等中的一种或多种的组合。应用备份恢复的执行组件130能够以二进制形式部署在集群节点上,执行具体的用户应用的数据的备份和/或恢复以及回滚操作。应用备份恢复的执行组件130能够创建CRD对象,将CRD对象部署到Kubernetes集群中,该CRD对象能够描述Kubernetes集群中的一个或多个用户应用。应用备份恢复的执行组件130能够使用CRD对象创建用户应用的备份。应用备份恢复的执行组件130能够根据用户应用的备份,恢复部分或全部的用户应用的数据。应用备份恢复的执行组件130能够根据恢复的所述用户应用的数据,进行用户应用的回滚。
请继续参考附图1,数据保护系统控制面120包括action-controller、policy-controller、location-controller,其中:action-controller作为执行控制器;policy-controller作为备份策略控制器;location-controller作为后端存储位置控制器。后端存储位置控制器的storage provider可以是本地块设备、云盘等。
可选的,location-controller能够定时检查各location存储后端状态,如果不可访问则标记该location不可达,在使用该location执行应用备份或者恢复时,在检查阶段会返回报错信息。
可选的,action-controller能够解析并执行用户应用的恢复任务、备份任务、监听action对CRD对象的创建等。在一些实施例中,action-controller能够用于创建应用备份:首先,用户通过命令行工具创建应用备份action,参数中包含应用application名称与后端存储location名称;然后,action-controller监听到action对象的创建会执行相应的备份任务。
在一些实施例中,action-controller能够用于创建用户应用数据的恢复:首先,用户通过命令行工具创建应用恢复action,参数中包含应用application名称、后端存储location名称以及备份版本ID;然后,action-controller监听到action对象创建事件会执行相应的恢复任务。
可选的,policy-controller能够解析并执行由用户创建的policy。在一些实施例中,用户创建policy,在policy中描述保护的application、备份周期、备份位置、备份保留数量等。policy-controller能够解析并执行policy,并在达到触发时间点时policy-controller会创建备份action对象。
在一些实施例中,用户创建policy,在policy中描述保护的用户应用application、恢复周期、后端存储location名称以及备份版本ID等。policy-controller能够解析并执行policy,在达到触发时间点时policy-controller会创建恢复action对象。
可选的,应用备份成功后生成备份记录,通过客户端命令行工具110可以查看。或者,应用恢复成功后会生成恢复记录,通过客户端命令行工具110可以查看。
应用备份恢复的执行组件130同时与数据保护系统控制面120、后端存储设备、Kubernetes集群中api服务器以及多个CRD对象连接。示例性的,用户自定义资源CRD,通常为了扩展Kubernete的功能,通过新增自定义资源及其对应的控制器实现用户自己业务逻辑。CRD对象包括用户应用、location、policy、backupRecord、recoverRecord中的一种或多种的组合。在此实施例中,location作为应用保护系统的自定义资源对象,用于表示某个存储后端的类型及其连接信息,如地址、用户名密码、密钥证书等。application同样作为应用保护系统中自定义资源对象,用于表示用户的用应用涉及的资源集合,给备份恢复执行组件提供具体的资源信息。容器存储接口(container storage interface,CSI)提供了应用容器和存储设备之间的连接。持久卷(persistent volume,PV),通过CSI从后端存储池中划分出来,供容器存储持久化数据。
kube-apiserver作为Kubernetes集群中api服务器,用于验证配置api对象,并为其他组件提供集群数据增删改查的交互接口。
在此实施例中,kube-apiserve提供云平台中api服务,对外提供云平台中资源的分布以及虚拟机以及容器对应的资源规格。kube-apiserve同时连接客户端命令行工具110、数据保护系统控制面120以及应用备份恢复的执行组件130。其中,客户端命令行工具110通过crud CRD对象连接至kube-apiserver;数据保护系统控制面120通过list&watchCRD对象连接至kube-apiserver。kube-apiserver将信息发送至etcd,该etcd作为一种开源的分布式统一键值存储数据库,用于分布式系统或计算机集群的共享配置、服务发现和调度协调。list&watch机制提供了对期望资源的查询及其变更事件的监听。
在此实施例中,应用备份恢复的执行组件130,部署在Kubernetes集群节点上,且用于创建CRD对象,将CRD对象部署到Kubernetes集群中,CRD对象能够描述Kubernetes集群中的一个或多个用户应用。应用备份恢复的执行组件130用于使用CRD对象创建用户应用的备份。应用备份恢复的执行组件130还可用于根据用户应用的备份,恢复至少部分的用户应用的数据;以及,用于根据恢复的至少部分的用户应用的数据,进行所述用户应用的回滚。
上述基于Kubernetes容器平台的应用保护系统能够执行或运行如图2所示的应用保护方法,该方法包括步骤S201~S203,以实现用户应用的数据的备份。本申请实施例的基于Kubernetes容器平台的应用保护可以在包括虚拟机、服务器、台式机、膝上型计算机和手持设备等任何计算平台上运行,该计算平台可以是专用的或共享的。
步骤S201,创建自定义资源(Custom Resource Definition,CRD)对象。可选的,为了扩展kubernete的功能,本申请实施例通过新增自定义资源及其对应的控制器实现用户自定义业务逻辑。示例性的,CRD对象包括用户应用、location、policy、backupRecord、recoverRecord中的一种或多种的组合。
步骤S202,将CRD对象部署到Kubernetes集群中,CRD对象能够描述Kubernetes集群中的一个或多个用户应用。示例性的,基于Kubernetes容器平台中存在/保存有Kubernetes集群,用户使用application CRD描述Kubernetes集群中的用户应用,使用location CRD具体描述一个备份文件存放的后端存储位置及其连接信息。考虑到在实际应用场景中,一个应用对外可呈现为一个产品,对内是由各个配置文件、工作负载构成以及应用数据组成。示例性的,location为用户应用保护系统中自定义资源对象,用于表示某个存储后端的类型及其连接信息,如地址、用户名密码、密钥证书等。application为用户应用保护系统中自定义资源对象,用于表示用户的应用涉及的资源集合,给备份恢复执行组件提供具体的资源信息。
在一个实施例中,用户应用为WordPress,在Kubernetes集群中部署一个WordPress应用后,对外呈现为一个内容管理网站,对后端而言涉及ingress、service、statefulset、configmap、serviceaccount、secret等资源。示例性的,WordPress通过如下crd进行描述:
apiVersion:protect.huayun.com/v1alpha1
kind:Application
metadata:
name:wordpress-app
labels:
app.huayun.com/name:"wordpress"
spec:
selector:
matchLabels:
app.huayun.com/name:"wordpress"
componentKinds:
-group:""
kind:Ingress
-group:""
kind:Service
-group:apps
kind:StatefulSet
-group:apps
kind:configmap
其中,关键部分是联合使用selector机制与资源类型选择两种方式对应用包含资源进行选择过滤,得到初步的资源列表;接着,对资源列表中的statefulset、deployment、daemonset等工作负载类型资源,根据其资源定义yaml递归查询其附属或者依赖的其他资源,如StatefulSet类型资源会查询其依赖的configmap、secret、pv、镜像等资源。本申请实施例实现了应用资源的整体选择,为后续的应用备份与恢复创造了前提。
步骤S203,使用CRD对象创建用户应用的备份。可选的,用户应用的备份可通过如下方式:通过命令行工具创建应用备份action,应用备份action包含备份的application名称、备份数据集存放后端location名称、以及是否备份应用的镜像参数;响应于action-controller监听到action对象的创建,执行用户应用的备份任务。又或者,用户应用的备份可通过如下方式:创建policy,在policy中描述保护的用户应用的相关参数;通过policy-controller解析并执行policy,以执行用户应用的备份任务。
在一个实施例中,用户应用的备份如下:
apiVersion:protect.huayun.com/v1alpha1
kind:Policy
metadata:
name:wordpress-backup-policy
namespace:huayun-com
spec:
frequency:"daily"
actions:
-action:backup
backupParameters:
image-backup:true
retention:
daily:7
weekly:4
monthly:12
yearly:2
selector:
matchExpressions:
-key:app.huayun.com/name
operator:In
values:
-wordpress
location:
name:huayun-arstor
其中,CRD对象主要包含的元素frequency为备份周期,支持每天、每周、每月以及linux定时任务时间表达式;action为定义执行的动作,并可配置该动作的参数,如image-backup设置为true;retention:定义远端存储副本保留策略;selector:定义需要备份的应用;location:定义备份集存放的位置。
本申请实施例中,通过部署应用保护系统各组件到Kubernetes集群中,在Kubernetes集群创建CRD对象,进而使用application CRD对象描述Kubernetes集群中的用户应用,以集群中的用户应用为单位,符合实际业务使用场景;将用户应用涉及的资源统一起来作为有机整体进行保护;针对用户应用保护,实现用户应用备份。本申请实施例的技术方案解决了Kubernetes集群的应用保护能力缺失,相对于现有集群资源备份恢复策略更灵活,并提高了业务以及业务数据在各种异常情况下的安全性。
在一些实施例中,使用CRD对象创建用户应用的备份包括:
通过命令行工具创建应用备份action,应用备份action包含备份的application名称、备份数据集存放后端location名称、以及是否备份应用的镜像参数;
响应于action-controller监听到action对象的创建,执行用户应用的备份任务。
在一些实施例中,使用CRD对象创建用户应用的备份包括:
创建policy,在policy中描述保护的用户应用的相关参数;
通过policy-controller解析并执行policy,以执行用户应用的备份任务。
在一实施例中,上述方法能够运行在基于Kubernetes容器平台的应用保护系统,以进行用户应用的备份。如图3所示,基于Kubernetes容器平台的应用保护系统的输出端连接一数据库(DataSet),该数据库的输出连着存储设备storageprovider。如图4所示,与图3对应的用户应用的备份可包括步骤S401-S405。
步骤S401,用户通过客户端命令行工具110产生应用备份action。可选的,如图3中的①,action中包含备份的application名称、备份数据集存放后端location名称,以及是否备份应用的镜像参数。需要说明的是,上述步骤也可在策略控制器上运行。
步骤S402,数据保护系统控制面120监听备份action的创建,解析action备份配置参数,调用备份流程。在此实施例中,如图3中的②,数据保护系统控制面120的action-controller监听到备份action的创建,解析action备份配置参数,调用应用备份恢复的执行组件130执行备份流程。可选的,数据保护系统控制面120还可记录整个备份过程状态。
步骤S403,应用备份恢复的执行组件130获取用户应用的内容。具体的,如图3中的③,应用备份恢复的执行组件130根据application名称获取application内容,即用户应用内容。
步骤S404,应用备份恢复的执行组件130筛选属于用户应用的资源。示例性的,如图3中的④,应用备份恢复的执行组件130根据application定义在数据库中筛选出属于应用的资源。在此实施例中,数据库中的资源包括:deployment\statefulset、configmap\secret、serviceaccount、pvs、snaphot、ingress\service、image/registy以及依赖资源等。在一些实施例中,如果包含deployment、statefulset等应用负载类型资源则会查找其依赖的其他资源,比如secret、serviceaccount等。示例性的,在pv的备份时,会调用pv对应csi的接口,先对该pv进行快照,然后将该快照内容进行拷贝。如果action参数中有对镜像备份的参数,则会将应用中涉及的所有image镜像进行导出备份。应用备份恢复的执行组件130接着将获取到所有的资源文件以及卷文件进行压缩打包,根据压缩包内容计算出hash值,作为压缩包名称一部分。
步骤S405,应用备份恢复的执行组件130将备份集传到后端存储设备,并更新aciton的状态。示例性的,如图3中的⑤,应用备份恢复的执行组件130根据action参数的location名称获取备份集后端存储位置信息,将备份集上传到后端存储设备,并更新aciton的状态为success,即更新成功状态。
在一些实施例中,根据用户应用的备份,恢复部分或全部的用户应用的数据包括:
从用户应用的备份获取location名称;
根据location名称获取location名称连接信息;
根据location名称连接信息下载对应备份集ID的备份数据;
根据备份集ID的备份数据,恢复部分或全部的用户应用的数据。
上述基于Kubernetes容器平台的应用保护系统能够执行或运行如图5所示的应用保护方法,该方法包括步骤S501~S504,以实现用户应用的数据的部分恢复。
步骤S501,创建CRD对象。
步骤S502,将CRD对象部署到Kubernetes集群中,CRD对象能够描述Kubernetes集群中的一个或多个用户应用。
步骤S503,使用CRD对象创建用户应用的备份。
步骤S504,根据用户应用的备份,恢复部分的用户应用的数据。可选的,用户应用的数据的恢复可通过:用户通过命令行工具创建应用恢复action,参数中包含应用application名称、后端存储location名称以及备份版本ID,action-controller监听到action对象创建事件会执行相应的恢复任务。又或者,用户创建policy,在policy中描述保护的application、恢复周期、后端存储location名称以及备份版本ID,由policy-controller解析并执行policy,在达到触发时间点时policy-controller会创建恢复action对象,action-controller解析并执行对应的恢复任务。
可选的,恢复至少部分的用户应用的数据包括:pv恢复、Kubernetes api类型资源恢复、image镜像相关资源恢复中的一种或多种的组合。示例性的,pv(Persistent Volume)即持久卷,通过csi从后端存储池中划分出来,供容器存储持久化数据;kube-apiserver,作为Kubernetes集群中api服务器,用于验证配置api对象,并为其他组件提供集群数据增删改查的交互接口。
本申请实施例中,通过部署应用保护系统各组件到Kubernetes集群中,在Kubernetes集群创建CRD对象,进而使用application CRD对象描述Kubernetes集群中的用户应用,以集群中的用户应用为单位,符合实际业务使用场景;将用户应用涉及的资源统一起来作为有机整体进行保护;针对用户应用保护,实现用户应用备份和应用恢复。本申请实施例的技术方案解决了现有Kubernetes集群的应用保护能力缺失,相对于现有集群资源备份恢复策略更灵活,并提高了业务以及业务数据在各种异常情况下的安全性。进一步的,在数据恢复时候可以在action参数中添加想要恢复的某个资源资源类型或者资源名称,可对pv数据或者configmap数据单独配置恢复,提高了灵活性。
在一实施例中,上述方法能够运行在基于Kubernetes容器平台的应用保护系统,以进行用户应用的备份。基于Kubernetes容器平台的应用保护系统如图6所示。如图7所示,在此实施例用户应用的恢复可主要包括步骤S701-S705(对应图6的①-⑤)。
步骤S701,产生用户应用恢复action。具体的,用户通过命令行工具产生应用恢复action。如图6中的①action中包含用户恢复的应用名称、备份集ID、备份数据集存放后端location名称。需要说明的是,上述步骤也可在策略控制器上运行。
步骤S702,监听备份action的创建,解析action获取应用恢复的配置参数,并调用恢复流程。具体的,数据保护系统控制面120监听到备份action的创建,解析action获取应用恢复的配置参数,并调用恢复流程。如图6中的②,数据保护系统控制面120的action-controller监听到备份action的创建,解析action获取应用恢复的配置参数,调用应用备份恢复的执行组件130执行恢复流程。可选的,数据保护系统控制面120还可记录整个恢复过程状态。
步骤S703,获取location连接信息。具体的,应用备份恢复的执行组件130获取location连接信息。如图6中的③,应用备份恢复的执行组件130(restoreexecutor)根据location名称获取该location连接信息。
步骤S704,根据location内容访问并下载对应备份集ID的备份数据,且校验恢复数据的一致性。具体的,应用备份恢复的执行组件130根据location内容访问并下载对应备份集ID的备份数据,并校验恢复数据的一致性。如图6中的④,restore executor根据location内容访问存储后端并下载对应备份集ID的备份数据,然后进行hash值校验恢复数据的一致性。
步骤S705,执行用户应用的部分数据的恢复。如图6中的⑤,用户应用恢复涉及三种资源:(1)pv恢复:executor会调用csi的接口创建相同大小的空pv,然后将备份集中的pv数据解压拷贝到新pv中作为恢复的pv。(2)k8s api类型资源恢复:executor通过kube-apiserver接口将对象创建到etcd集群中,由k8s根据资源定义创建出应用资源。(3)image镜像相关资源:executor将镜像文件导入到集群节点中。
在一些实施例中,应用备份恢复的执行组件130还可执行更新action状态为success。
在一些实施例中,Kubernetes集群包括第一Kubernetes集群和第二Kubernetes集群,用户应用的备份在第一Kubernetes集群,恢复部分的用户应用的数据在第二Kubernetes集群。也就是说,本系统支持应用迁移到其他集群,在有应用数据备份集的情况下,安装有本系统的其他集群可以将应用集恢复到该集群。在灾难恢复恢复、应用拷贝场景具有较好的应用前景。
在一些实施例中,本发明提出的集群应用保护的方法,同时能够解决Kubernetes容器平台应用的备份、容灾、回滚问题。如图8所示,方法包括步骤S801~S805。
步骤S801,创建CRD对象。
步骤S802,将CRD对象部署到Kubernetes集群中,CRD对象能够描述Kubernetes集群中的一个或多个用户应用。
步骤S803,使用CRD对象创建用户应用的备份。
步骤S804,根据用户应用的备份,恢复部分的用户应用的数据。
步骤S805,根据恢复的至少部分的用户应用的数据,进行用户应用的回滚。
在此实施例中,如图9所示,为本申请中storage provider存在的用户应用示意图。其包括WordPress、locallvm、rawfileapp等多个用户应用,每个应用都会有唯一的ID。其中,WordPress从WordPress1到WordPress3(与其他WordPress时间点不同,ID也不同)实现了回滚操作。本申请实施例中,每次对应用生成备份的时候会生成一个唯一ID,在应用恢复的时候可以从多个历史版本中选择某个版本来恢复应用,实现了应用的回滚。
本申请实施例中,通过部署应用保护系统各组件到Kubernetes集群中,在Kubernetes集群创建CRD对象,进而使用application CRD对象描述Kubernetes集群中的用户应用,以集群中的用户应用为单位,符合实际业务使用场景;将用户应用涉及的资源统一起来作为有机整体进行保护;针对用户应用保护,实现用户应用备份、应用恢复、自定义备份规则、应用部分数据回滚的功能,并支持应用回滚、应用迁移、灾难恢复以应对各种异常场景。本申请实施例的技术方案解决了现有Kubernetes集群的应用保护能力缺失,相对于现有集群资源备份恢复策略更灵活,并提高了业务以及业务数据在各种异常情况下的安全性。
参见图10,本申请实施例还提供了基于Kubernetes容器平台的应用保护装置100,其具体实现方式与上述方法的实施例中记载的实施方式、所达到的技术效果一致,部分内容不再赘述。
所述装置100包括:Kubernetes集群模块1010,用于创建CRD对象,将CRD对象部署到Kubernetes集群中,CRD对象能够描述Kubernetes集群中的一个或多个用户应用;备份模块1020,用于创建用户应用的备份。本申请实施例中的不同模块之间存在数据传输,且箭头表示数据传输的方向,
在一些实施例中,所述装置还包括恢复模块1030,用于根据用户应用的备份,恢复至少部分的用户应用的数据。
在一些实施例中,所述装置还包括回滚模块1040,用于根据恢复的至少部分的用户应用的数据,进行用户应用的回滚。
本申请实施例中,通过部署应用保护系统各组件到Kubernetes集群中,在Kubernetes集群创建CRD对象,进而使用application CRD对象描述Kubernetes集群中的用户应用,以集群中的用户应用为单位,符合实际业务使用场景;将用户应用涉及的资源统一起来作为有机整体进行保护。本申请实施例的技术方案实现了Kubernetes容器平台应用的备份、容灾、回滚问题,提高了业务以及业务数据在各种异常情况下的安全性。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
参见图11,本申请实施例还提供了一种电子设备200,电子设备200包括至少一个存储器210、至少一个处理器220以及连接不同平台系统的总线230。
存储器210可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)211和/或高速缓存存储器212,还可以进一步包括只读存储器(ROM)213。
其中,存储器210还存储有计算机程序,计算机程序可以被处理器220执行,使得处理器220执行:创建CRD对象;将CRD对象部署到Kubernetes集群中,CRD对象能够描述Kubernetes集群中的一个或多个用户应用;使用CRD对象创建用户应用的备份;根据用户应用的备份,恢复至少部分的用户应用的数据;根据恢复的至少部分的用户应用的数据,进行用户应用的回滚。
在一些实施例中,外部与所述应用保护系统的交互包括如下中的至少一者:
用户应用备份的创建、用户应用备份的删除、用户应用备份的查询、用户应用恢复的创建、用户应用恢复的查询。
在一些实施例中,业务逻辑管理包括如下中的至少一者:策略管理、备份管理、恢复管理或后端存储状态管理。
存储器210还可以包括具有一组(至少一个)程序模块215的程序/实用工具214,这样的程序模块215包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
相应的,处理器220可以执行上述计算机程序,以及可以执行程序/实用工具214。
总线230可以为表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。
电子设备200也可以与一个或多个外部设备240例如键盘、指向设备、蓝牙设备等通信,还可与一个或者多个能够与该电子设备200交互的设备通信,和/或与使得该电子设备200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口250进行。并且,电子设备200还可以通过网络适配器260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器260可以通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储平台等。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,所述计算机程序被执行时实现如下方法的步骤:创建CRD对象;将CRD对象部署到Kubernetes集群中,CRD对象能够描述Kubernetes集群中的一个或多个用户应用;使用CRD对象创建用户应用的备份;根据用户应用的备份,恢复至少部分的用户应用的数据;根据恢复的至少部分的用户应用的数据,进行用户应用的回滚。
图12示出了本实施例提供的用于实现上述方法的程序产品300,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本申请的程序产品300不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。程序产品300可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,程序设计语言包括面向对象的程序设计语言诸如Java、C++等,还包括常规的过程式程序设计语言诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本申请从使用目的上、效能上、进步及新颖性等观点进行阐述,其设置有的实用进步性,已符合专利法所强调的功能增进及使用要件,本申请以上的说明及附图,仅为本申请的较佳实施例而已,并非以此局限本申请,因此,凡一切与本申请构造,装置,特征等近似、雷同的,即凡依本申请专利申请范围所作的等同替换或修饰等,皆应属本申请的专利申请保护的范围之内。
Claims (14)
1.一种基于Kubernetes容器平台的应用保护方法,其特征在于,包括:
创建自定义资源(Custom Resource Definition,CRD)对象;
将所述CRD对象部署到Kubernetes集群中,所述CRD对象能够描述所述Kubernetes集群中的一个或多个用户应用;
使用所述CRD对象创建所述用户应用的备份。
2.根据权利要求1所述的基于Kubernetes容器平台的应用保护方法,其特征在于,所述方法还包括:
根据所述用户应用的备份,恢复至少部分的所述用户应用的数据。
3.根据权利要求1所述的基于Kubernetes容器平台的应用保护方法,其特征在于,所述方法还包括:
根据所述用户应用的备份,恢复至少部分的所述用户应用的数据;以及,
根据恢复的至少部分的所述用户应用的数据,进行所述用户应用的回滚。
4.根据权利要求1至3任一项所述的基于Kubernetes容器平台的应用保护方法,其特征在于,所述CRD对象包括用户应用、location、policy、backupRec ord、recoverRecord中的至少一种,使用所述CRD对象创建所述用户应用的备份包括:
通过命令行工具创建应用备份action,所述应用备份action包含备份的appl ication名称、备份数据集存放后端location名称、以及是否备份应用的镜像参数;
响应于action-controller监听到action对象的创建,执行所述用户应用的备份任务;或者,
创建policy,在policy中描述保护的所述用户应用的相关参数;
通过policy-controller解析并执行policy,以执行所述用户应用的备份任务。
5.根据权利要求4所述的基于Kubernetes容器平台的应用保护方法,其特征在于,还包括:
生成第一记录,所述第一记录包括所述用户应用的备份的状态参数。
6.根据权利要求2或3所述的基于Kubernetes容器平台的应用保护方法,其特征在于,根据所述用户应用的备份,恢复至少部分的所述用户应用的数据包括:
从所述用户应用的备份获取所述location名称;
根据所述location名称获取所述location名称连接信息;
根据所述location名称连接信息下载对应备份集ID的备份数据;
根据所述备份集ID的备份数据,恢复至少部分的所述用户应用的数据。
7.根据权利要求2或3所述的基于Kubernetes容器平台的应用保护方法,其特征在于,所述方法还包括:
在恢复至少部分的所述用户应用的数据成功后,更新action状态。
8.根据权利要求7所述的基于Kubernetes容器平台的应用保护方法,其特征在于,所述Kubernetes集群包括第一Kubernetes集群和第二Kubernetes集群,所述用户应用的备份在所述第一Kubernetes集群,所述恢复至少部分的所述用户应用的数据在所述第二Kubernetes集群。
9.一种基于Kubernetes容器平台的应用保护装置,其特征在于,包括:
Kubernetes集群模块,用于创建CRD对象,将所述CRD对象部署到Kuber netes集群中,所述CRD对象能够描述所述Kubernetes集群中的一个或多个用户应用;
备份模块,用于使用所述CRD对象创建所述用户应用的备份;
恢复模块,用于根据所述用户应用的备份,恢复至少部分的所述用户应用的数据;
回滚模块,用于根据恢复的至少部分的所述用户应用的数据,进行所述用户应用的回滚。
10.一种基于Kubernetes容器平台的应用保护系统,其特征在于,包括:
客户端命令行工具,用于实现外部与所述应用保护系统的交互;
数据保护系统控制面,以容器形式部署在Kubernetes集群中,以实现业务逻辑管理;
应用备份恢复的执行组件,部署在Kubernetes集群节点上,且用于创建CR D对象,将所述CRD对象部署到Kubernetes集群中,所述CRD对象能够描述所述Kubernetes集群中的一个或多个用户应用;用于使用所述CRD对象创建所述用户应用的备份;
用于根据所述用户应用的备份,恢复至少部分的所述用户应用的数据;
用于根据恢复的至少部分的所述用户应用的数据,进行所述用户应用的回滚。
11.根据权利要求10所述的基于Kubernetes容器平台的应用保护系统,其特征在于,外部与所述应用保护系统的交互包括如下中的至少一者:
用户应用备份的创建、用户应用备份的删除、用户应用备份的查询、用户应用恢复的创建、用户应用恢复的查询。
12.根据权利要求10所述的基于Kubernetes容器平台的应用保护系统,其特征在于,所述业务逻辑管理包括如下中的至少一者:
策略管理、备份管理、恢复管理或后端存储状态管理。
13.一种电子设备,所述电子设备包括存储器、处理器以及用于执行任务的硬件模组,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-8任一项方法的步骤。
14.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-8任一项方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210311262.4A CN114661420B (zh) | 2022-03-28 | 2022-03-28 | 基于Kubernetes容器平台的应用保护方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210311262.4A CN114661420B (zh) | 2022-03-28 | 2022-03-28 | 基于Kubernetes容器平台的应用保护方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114661420A true CN114661420A (zh) | 2022-06-24 |
CN114661420B CN114661420B (zh) | 2023-08-11 |
Family
ID=82032606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210311262.4A Active CN114661420B (zh) | 2022-03-28 | 2022-03-28 | 基于Kubernetes容器平台的应用保护方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114661420B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114968672A (zh) * | 2022-08-03 | 2022-08-30 | 江苏安超云软件有限公司 | 一种数据备份方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112003728A (zh) * | 2020-07-24 | 2020-11-27 | 苏州浪潮智能科技有限公司 | 一种基于Kubernetes集群的应用主备实现方法及装置 |
CN112099989A (zh) * | 2020-08-28 | 2020-12-18 | 中国—东盟信息港股份有限公司 | 一种Kubernetes云原生应用灾备、迁移与恢复的方法 |
CN112181720A (zh) * | 2020-09-11 | 2021-01-05 | 济南浪潮数据技术有限公司 | 一种基于云管理平台的虚拟数据中心备份方法及装置 |
US20210103499A1 (en) * | 2019-10-04 | 2021-04-08 | Robin Systems, Inc. | Rolling Back Kubernetes Applications |
US20210149769A1 (en) * | 2019-11-17 | 2021-05-20 | Trilio Data, Inc. | Container-Based Application Data Protection Method and System |
US20210303368A1 (en) * | 2020-03-24 | 2021-09-30 | Hitachi, Ltd. | Operator management apparatus, operator management method, and operator management computer program |
CN114079615A (zh) * | 2021-11-17 | 2022-02-22 | 上海道客网络科技有限公司 | 一种多集群环境下的应用同步方法、系统、介质和电子设备 |
CN114090344A (zh) * | 2022-01-19 | 2022-02-25 | 苏州浪潮智能科技有限公司 | 用于容器集群的删除备份资源的方法、装置、设备及介质 |
CN114138754A (zh) * | 2021-12-09 | 2022-03-04 | 安超云软件有限公司 | 基于Kubernetes平台的软件部署方法及装置 |
-
2022
- 2022-03-28 CN CN202210311262.4A patent/CN114661420B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210103499A1 (en) * | 2019-10-04 | 2021-04-08 | Robin Systems, Inc. | Rolling Back Kubernetes Applications |
US20210149769A1 (en) * | 2019-11-17 | 2021-05-20 | Trilio Data, Inc. | Container-Based Application Data Protection Method and System |
US20210208974A1 (en) * | 2019-11-17 | 2021-07-08 | Trilio Data, Inc. | Container-Based Application Data Protection Method and System |
US20210303368A1 (en) * | 2020-03-24 | 2021-09-30 | Hitachi, Ltd. | Operator management apparatus, operator management method, and operator management computer program |
CN112003728A (zh) * | 2020-07-24 | 2020-11-27 | 苏州浪潮智能科技有限公司 | 一种基于Kubernetes集群的应用主备实现方法及装置 |
CN112099989A (zh) * | 2020-08-28 | 2020-12-18 | 中国—东盟信息港股份有限公司 | 一种Kubernetes云原生应用灾备、迁移与恢复的方法 |
CN112181720A (zh) * | 2020-09-11 | 2021-01-05 | 济南浪潮数据技术有限公司 | 一种基于云管理平台的虚拟数据中心备份方法及装置 |
CN114079615A (zh) * | 2021-11-17 | 2022-02-22 | 上海道客网络科技有限公司 | 一种多集群环境下的应用同步方法、系统、介质和电子设备 |
CN114138754A (zh) * | 2021-12-09 | 2022-03-04 | 安超云软件有限公司 | 基于Kubernetes平台的软件部署方法及装置 |
CN114090344A (zh) * | 2022-01-19 | 2022-02-25 | 苏州浪潮智能科技有限公司 | 用于容器集群的删除备份资源的方法、装置、设备及介质 |
Non-Patent Citations (2)
Title |
---|
EDDY TRUYEN等: "Managing Feature Compatibility in Kubernetes: Vendor Comparison and Analysis", 《IEEE ACCESS》 * |
姚增增: "大规模环境下容器技术的研究与优化", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114968672A (zh) * | 2022-08-03 | 2022-08-30 | 江苏安超云软件有限公司 | 一种数据备份方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114661420B (zh) | 2023-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11429499B2 (en) | Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including operations by a master monitor node | |
CN112099918B (zh) | 容器化环境中的集群的实时迁移 | |
US11061605B1 (en) | Dynamically performing managed file transfer based on policies | |
US10324799B2 (en) | Enhanced application write performance | |
US8473692B2 (en) | Operating system image management | |
US8627310B2 (en) | Capturing multi-disk virtual machine images automatically | |
US7430616B2 (en) | System and method for reducing user-application interactions to archivable form | |
US20150095597A1 (en) | High performance intelligent virtual desktop infrastructure using volatile memory arrays | |
US9792150B1 (en) | Detecting site change for migrated virtual machines | |
US9354907B1 (en) | Optimized restore of virtual machine and virtual disk data | |
US20130091376A1 (en) | Self-repairing database system | |
US10061665B2 (en) | Preserving management services with self-contained metadata through the disaster recovery life cycle | |
CN109168328B (zh) | 虚拟机迁移的方法、装置和虚拟化系统 | |
US11604705B2 (en) | System and method for cloning as SQL server AG databases in a hyperconverged system | |
JP6663995B2 (ja) | 大規模分散スケールアウトデータシステムをバックアップするためのシステム及び方法 | |
CN111984465A (zh) | 数据库远程备份方法、装置、介质和电子设备 | |
US20220317912A1 (en) | Non-Disruptively Moving A Storage Fleet Control Plane | |
CN112035062B (zh) | 云计算的本地存储的迁移方法、计算机设备及存储介质 | |
CN114661420B (zh) | 基于Kubernetes容器平台的应用保护方法、装置及系统 | |
US11734130B1 (en) | Automatic selection of data movers for protecting virtual machines | |
JP2021513137A (ja) | 階層型ストレージ管理システムにおけるデータ・マイグレーション | |
CN114281600A (zh) | 一种容灾备份和容灾恢复方法、装置、设备及存储介质 | |
CN110806952B (zh) | 虚拟存储保护方法及系统 | |
JP2024506131A (ja) | 仮想マシンのメモリ共有方法および装置 | |
WO2016046951A1 (ja) | 計算機システム及びそのファイル管理方法 |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230712 Address after: Room 1602, No. 6, Financial Third Street, Wuxi Economic Development Zone, Jiangsu Province, 214,000 Applicant after: Anchao cloud Software Co.,Ltd. Address before: Room 1601, no.6, financial Third Street, Wuxi Economic Development Zone, Jiangsu Province, 214000 Applicant before: Jiangsu Anchao cloud Software Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |