CN115658390A - 容器容灾方法、系统、装置、设备及计算机可读存储介质 - Google Patents
容器容灾方法、系统、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN115658390A CN115658390A CN202211417472.8A CN202211417472A CN115658390A CN 115658390 A CN115658390 A CN 115658390A CN 202211417472 A CN202211417472 A CN 202211417472A CN 115658390 A CN115658390 A CN 115658390A
- Authority
- CN
- China
- Prior art keywords
- container
- disaster recovery
- data
- storage system
- cluster
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 92
- 238000011084 recovery Methods 0.000 claims abstract description 490
- 230000010076 replication Effects 0.000 claims description 50
- 238000004590 computer program Methods 0.000 claims description 12
- 230000003362 replicative effect Effects 0.000 claims description 2
- 238000007726 management method Methods 0.000 description 53
- 230000008569 process Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 11
- 229920000915 polyvinyl chloride Polymers 0.000 description 10
- 239000004800 polyvinyl chloride Substances 0.000 description 10
- 238000012545 processing Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000002688 persistence Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种容器容灾方法、系统、装置、设备及计算机可读存储介质,应用于容灾技术领域,方法应用于第一容器集群,包括接收容器管理平台下发的容灾备份命令;响应容灾备份命令,对容器应用元数据进行复制获得第一容灾数据,并将第一容灾数据存储至第一存储系统,以便第二容器集群利用第一存储系统中的第一容灾数据进行容器应用重建,获得重建容器应用;对容器业务数据进行复制获得第二容灾数据,并将第二容灾数据存储至第二存储系统,以便第二容器集群利用第二存储系统中的第二容灾数据在重建容器应用中进行容器业务恢复,获得恢复后的容器业务。本技术方案可以实现高效灵活的容器容灾,保障容器业务的快速恢复。
Description
技术领域
本申请涉及容灾技术领域,特别涉及一种容器容灾方法、系统、装置、设备及计算机可读存储介质。
背景技术
目前,基于容器的应用在企业中的采用度越来越高,从非核心业务到核心业务,从无状态应用到有状态应用,这一转变的核心在于容器应用更多的使用到了数据持久化,而在集群内的数据持久化很容易面临灾难问题,此时,则需要对容器应用进行容灾能力的建设。
传统的容灾方法一般依赖于应用本身自行处理,但如果应用厂商没有容灾能力则存在业务连续性不可保障的风险。另一种则是使用专门的容灾软件,但专门的容灾软件厂商一般是基于侵入式的代理来进行文件级复制,实时性和灵活性较差。
因此,如何实现高效灵活的容器容灾,保障容器业务的快速恢复是本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种容器容灾方法,该容器容灾方法可以实现高效灵活的容器容灾,保障容器业务的快速恢复;本申请的另一目的是提供一种容器容灾装置、系统、设备及计算机可读存储介质,均具有上述有益效果。
第一方面,本申请提供了一种容器容灾方法,应用于第一容器集群,包括:
接收容器管理平台下发的容灾备份命令;
响应所述容灾备份命令,对容器应用元数据进行复制获得第一容灾数据,并将所述第一容灾数据存储至第一存储系统,以便第二容器集群利用所述第一存储系统中的第一容灾数据进行容器应用重建,获得重建容器应用;
对容器业务数据进行复制获得第二容灾数据,并将所述第二容灾数据存储至第二存储系统,以便所述第二容器集群利用所述第二存储系统中的第二容灾数据在所述重建容器应用中进行容器业务恢复,获得恢复后的容器业务。
可选地,所述对容器应用元数据进行复制获得第一容灾数据,包括:
获取所述第一容器集群内的已复制次数;
当所述已复制次数为零时,对所述容器应用元数据进行全量复制,获得所述第一容灾数据;
当所述已复制次数不为零时,对所述容器应用元数据进行增量复制,获得所述第一容灾数据。
可选地,所述对容器应用元数据进行复制获得第一容灾数据,并将所述第一容灾数据存储至第一存储系统,包括:
根据所述容灾备份命令确定所述第一容器集群中的待保护容器应用;
将所述待保护容器的标识信息添加至预设保护单元;
对所述待保护容器的容器应用元数据进行复制,获得所述第一容灾数据,并将所述第一容灾数据添加至所述预设保护单元;在所述预设保护单元中,所述标识信息和所述第一容灾数据对应存储;
将所述预设保护单元存储至所述第一存储系统。
可选地,所述将所述第二容灾数据存储至第二存储系统,包括:
根据所述容灾备份命令确定复制方式;
当所述复制方式为集中式存储复制时,将所述第二容灾数据存储至所述第二容器集群的集中式存储系统;所述第一容器集群的集中式存储系统与所述第二容器集群的集中式存储系统建立有远程复制关系,所述第二容器集群的集中式存储系统为所述第二存储系统;
当所述复制方式为分布式存储复制时,将所述第二容灾数据存储至分布式存储系统;所述分布式存储系统为所述第二存储系统;
当所述复制方式为本地存储复制时,将所述第二容灾数据以文件块的形式存储至对象存储系统;所述对象存储系统为所述第二存储系统。
第二方面,本申请提供了另一种容器容灾方法,应用于第二容器集群,包括:
接收容器管理平台下发的容灾恢复命令;
响应所述容灾恢复命令,从第一存储系统中调取第一容灾数据,并利用所述第一容灾数据进行容器应用重建,获得重建容器应用;其中,所述第一容灾数据由第一容器集群对自身的容器应用元数据进行复制得到;
从第二存储系统中调取第二容灾数据,并利用所述第二容灾数据在所述重建容器应用中进行容器业务恢复,获得恢复后的容器业务;其中,所述第二容灾数据由所述第一容器集群对自身的容器业务数据进行复制得到。
可选地,所述从第一存储系统中调取第一容灾数据,并利用所述第一容灾数据进行容器应用重建,获得重建容器应用,包括:
从所述第一存储系统中调取待保护容器应用的标识信息;在所述第一存储系统中,所述标识信息和所述第一容灾数据对应存储;
从所述容器管理平台拉取各所述标识信息对应的容器应用镜像;
从所述第一存储系统中调取所述第一容灾数据;
利用所述第一容灾数据和各所述容器应用镜像进行容器应用重建,获得所述重建容器应用。
可选地,所述从第二存储系统中调取第二容灾数据,包括:
根据所述容灾恢复命令确定存储方式;
当所述存储方式为集中式存储时,从第二容器集群的集中式存储系统中调取所述第二容灾数据,所述第二容器集群的集中式存储系统与所述第一容器集群的集中式存储系统建立有远程复制关系,所述第二容器集群的集中式存储系统为所述第二存储系统;
当所述存储方式为分布式存储时,从分布式存储系统中调取所述第二容灾数据;所述分布式存储系统为所述第二存储系统;
当所述存储方式为本地存储时,从对象存储系统中调取文件块形式的所述第二容灾数据;所述对象存储系统为所述第二存储系统。
第三方面,本申请提供了又一种容器容灾方法,应用于容器管理平台,包括:
根据预设容灾配置信息对待保护容器集群进行配置,得到第一容器集群和第二容器集群;
下发容灾备份命令至所述第一容器集群,以使所述第一容器集群根据所述容灾备份命令进行容灾备份,得到备份数据;
下发容灾恢复命令至所述第二容器集群,以使所述第二容器集群响应所述容灾恢复命令,利用所述备份数据进行容灾恢复。
可选地,所述下发容灾恢复命令至所述第二容器集群之前,还包括:
下发停机指令至所述第一容器集群,以使所述第一容器集群中的各容器应用停止运行。
可选地,所述容器容灾方法还包括:
对平台容灾信息进行复制,获得备份容灾信息;
将所述备份容灾信息存储至平台存储系统。
第四方面,本申请还公开了一种容器容灾系统,包括:
容器管理平台,用于下发容灾备份命令至第一容器集群,以及下发容灾恢复命令至第二容器集群;
所述第一容器集群,用于根据所述容灾备份命令进行容灾备份,得到备份数据;
所述第二容器集群,用于响应所述容灾恢复命令,并利用所述备份数据进行容灾恢复。
第五方面,本申请还公开了一种容器容灾装置,应用于第一容器集群,包括:
备份命令接收模块,用于接收容器管理平台下发的容灾备份命令;
第一复制模块,用于响应所述容灾备份命令,对容器应用元数据进行复制获得第一容灾数据,并将所述第一容灾数据存储至第一存储系统,以便第二容器集群利用所述第一存储系统中的第一容灾数据进行容器应用重建,获得重建容器应用;
第二复制模块,用于对容器业务数据进行复制获得第二容灾数据,并将所述第二容灾数据存储至第二存储系统,以便所述第二容器集群利用所述第二存储系统中的第二容灾数据在所述重建容器应用中进行容器业务恢复,获得恢复后的容器业务。
第六方面,本申请还公开了另一种容器容灾装置,应用于第二容器集群,包括:
恢复命令接收模块,用于接收容器管理平台下发的容灾恢复命令;
容器应用重建模块,用于响应所述容灾恢复命令,从第一存储系统中调取第一容灾数据,并利用所述第一容灾数据进行容器应用重建,获得重建容器应用;其中,所述第一容灾数据由第一容器集群对自身的容器应用元数据进行复制得到;
容器业务恢复模块,用于从第二存储系统中调取第二容灾数据,并利用所述第二容灾数据在所述重建容器应用中进行容器业务恢复,获得恢复后的容器业务;其中,所述第二容灾数据由所述第一容器集群对自身的容器业务数据进行复制得到。
第七方面,本申请还公开了又一种容器容灾装置,应用于容器管理平台,包括:
容器集群配置模块,用于根据预设容灾配置信息对待保护容器集群进行配置,得到第一容器集群和第二容器集群;
第一命令下发模块,用于下发容灾备份命令至所述第一容器集群,以使所述第一容器集群根据所述容灾备份命令进行容灾备份,得到备份数据;
第二命令下发模块,用于下发容灾恢复命令至所述第二容器集群,以使所述第二容器集群响应所述容灾恢复命令,利用所述备份数据进行容灾恢复。
第八方面,本申请还公开了一种容器容灾设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述的任一种容器容灾方法的步骤。
第九方面,本申请还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的任一种容器容灾方法的步骤。
应用本申请所提供的技术方案,通过构建主备容器集群和容器管理平台实现了跨容器集群的容器容灾方案,一个容器集群用于进行正常的业务处理,并响应于容器管理平台的命令进行容灾备份,在容灾备份过程中,将自身产生的容器应用元数据和容器业务数据进行备份存储;另一个容器集群则响应容器管理平台的命令进行容灾恢复,在容灾恢复过程中,则可以直接调用前一容器集群的备份数据进行容器应用重建和容器业务恢复。由此,实现了高效灵活的容器容灾,可以有效保障容器业务的快速恢复。
附图说明
为了更清楚地说明现有技术和本申请实施例中的技术方案,下面将对现有技术和本申请实施例描述中需要使用的附图作简要的介绍。当然,下面有关本申请实施例的附图描述的仅仅是本申请中的一部分实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,所获得的其他附图也属于本申请的保护范围。
图1为本申请所提供的一种容器容灾系统的结构示意图;
图2为本申请所提供的一种容器容灾方法的流程示意图;
图3为本申请所提供的另一种容器容灾方法的流程示意图;
图4为本申请所提供的又一种容器容灾方法的流程示意图;
图5为本申请所提供的一种容灾保护单元状态机的工作原理图;
图6为本申请所提供的另一种容器容灾系统的结构示意图;
图7为本申请所提供的一种容器容灾装置的流程示意图;
图8为本申请所提供的另一种容器容灾装置的流程示意图;
图9为本申请所提供的又一种容器容灾装置的流程示意图;
图10为本申请所提供的一种容器容灾设备的结构示意图。
具体实施方式
本申请的核心是提供一种容器容灾方法,该容器容灾方法可以实现高效灵活的容器容灾,保障容器业务的快速恢复;本申请的另一核心是提供一种容器容灾装置、系统、设备及计算机可读存储介质,均具有上述有益效果。
为了对本申请实施例中的技术方案进行更加清楚、完整地描述,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行介绍。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请所提供的容器容灾方法应用于容器容灾系统,请参考图1,图1为本申请所提供的一种容器容灾系统的结构示意图,该容器容灾系统包括第一容器集群100、第二容器集群200以及容器管理平台300,第一容器集群100和第二容器集群200异地部署,异地距离可以根据业务需要的带宽和时延要求进行合理选择,容器管理平台300可以部署于第三方的地方,也可以与两个容器集群中的一个部署到一起。其中,第一容器集群100为主容器集群,用于实现容灾备份;第二容器集群200为备容器集群,用于实现容灾恢复(此处仅做举例,第一容器集群100和第二容器集群200可以互为主备容器集群);容器管理平台300则用于实现容器集群管理。基于该容器容灾系统,当一个容器集群故障后,将部署在其上的容器应用切换到另外一个容器集群上,继续提供服务,即可实现容灾的效果。
本申请实施例提供了一种容器容灾方法。
请参考图2,图2为本申请所提供的一种容器容灾方法的流程示意图,该容器容灾方法可应用于第一容器集群,包括如下S101至S103。
S101:接收容器管理平台下发的容灾备份命令;
本步骤旨在实现容灾备份命令的获取,该容灾备份命令由容器管理平台下发,用于指示第一容器集群执行容灾备份操作。可以理解的是,为保证容器容灾系统的高可靠性,避免由于第一容器集群突发故障导致其中的容器业务中断,可以在第一容器集群启动的同时,将容灾备份命令下发至第一容器集群,以便于第一容器集群在进入运行状态的同时执行容灾备份操作。
S102:响应容灾备份命令,对容器应用元数据进行复制获得第一容灾数据,并将第一容灾数据存储至第一存储系统,以便第二容器集群利用第一存储系统中的第一容灾数据进行容器应用重建,获得重建容器应用;
本步骤旨在实现容器应用元数据的复制与存储。对于第一容器集群而言,其在接收到容器管理平台下发的容灾备份命令之后,即可立即响应该容灾备份命令,对自身在运行过程中所产生的容器应用元数据进行复制,得到复制的容器应用元数据,也即上述第一容灾数据,并将其存储至第一存储系统。其中,容器应用元数据即为第一容器集群中各个容器应用(可能为所有的容器应用,也可能为指定的部分容器应用,具体可以根据容灾备份命令解析确定)的元数据信息。
进一步,对于第二容器集群而言,当需要进行容器容灾(如第一容器集群发生故障)时,即可直接从第一存储系统中调取得到第一容灾数据,由于容器应用元数据为第一容器集群中各个容器应用的元数据信息,而第一容灾数据由容器应用元数据复制得到,因此,第二容器集群则可以利用该第一容灾数据进行容器应用重建,获得上述重建容器应用。
在一种可能的实现方式中,第一存储系统可以采用对象存储系统。
S103:对容器业务数据进行复制获得第二容灾数据,并将第二容灾数据存储至第二存储系统,以便第二容器集群利用第二存储系统中的第二容灾数据在重建容器应用中进行容器业务恢复,获得恢复后的容器业务。
本步骤旨在实现容器业务数据的复制与存储。对于第一容器集群而言,其在接收到容器管理平台下发的容灾备份命令之后,即可立即响应该容灾备份命令,对自身在运行过程中所产生的容器业务数据进行复制,得到复制的容器业务数据,也即上述第二容灾数据,并将其存储至第二存储系统。其中,容器业务数据即为第一容器集群中各个容器应用(可能为所有的容器应用,也可能为指定的部分容器应用,具体可以根据容灾备份命令解析确定)正在进行的业务数据信息。
进一步,对于第二容器集群而言,当需要进行容器容灾(如第一容器集群发生故障)时,在完成容器应用重建之后,即可直接从第二存储系统中调取得到第二容灾数据,由于容器业务数据为第一容器集群中各个容器应用的容器业务数据,而第二容灾数据由容器业务数据复制得到,因此,第二容器集群则可以利用该第二容灾数据在重建容器应用中进行容器业务恢复,获得恢复后的容器业务。至此,完成第一容器集群与第二容器集群之间的业务切换。
在一种可能的实现方式中,第二存储系统可以采用对象存储系统或者分布式存储系统或者集中式存储系统。
需要说明的是,上述第一存储系统和第二存储系统可以为同一存储系统,也可以为不同的存储系统,本申请对此不做限定。此外,对于第一容器集群而言,S102中对容器应用元数据的复制存储和S103中对容器业务数据的复制存储的执行顺序并不唯一,为保证工作效率,二者可同时执行。二者的复制存储操作可以为定时执行,也可以为实时执行,本申请对此同样不做限定。
可见,本申请实施例所提供的容器容灾方法,通过构建主备容器集群和容器管理平台实现了跨容器集群的容器容灾方案,一个容器集群用于进行正常的业务处理,并响应于容器管理平台的命令进行容灾备份,在容灾备份过程中,将自身产生的容器应用元数据和容器业务数据进行备份存储;另一个容器集群则响应容器管理平台的命令进行容灾恢复,在容灾恢复过程中,则可以直接调用前一容器集群的备份数据进行容器应用重建和容器业务恢复。由此,实现了高效灵活的容器容灾,可以有效保障容器业务的快速恢复。
在本申请的一个实施例中,上述对容器应用元数据进行复制获得第一容灾数据,可以包括如下步骤:
获取第一容器集群内的已复制次数;
当已复制次数为零时,对容器应用元数据进行全量复制,获得第一容灾数据;
当已复制次数不为零时,对容器应用元数据进行增量复制,获得第一容灾数据。
可以理解的是,在第一容器集群的实际运行过程中,其中的容器应用元数据可能会发生变化,也可能不会发生变化,这是由其中所进行的容器业务所决定的,基于此,为有效减少复制的数据量,节省网络带宽等资源,提高备份效率,可以采用在初次备份时进行全量复制,在非初次备份时进行增量复制的方式。
在实际实现过程中,第一容器集群可以实时累计自身所进行的数据复制次数,并进行保存,当需要对容器应用元数据进行复制时,可以先判断自身记录的已复制次数是否为零,若为零,则可以说明此次复制为初次备份,则可以对自身的容器应用元数据进行全量复制;若不为零,则说明此次复制不是初次备份,则可以对自身的容器应用元数据进行增量复制。
在本申请的一个实施例中,上述对容器应用元数据进行复制获得第一容灾数据,并将第一容灾数据存储至第一存储系统,可以包括如下步骤:
根据容灾备份命令确定第一容器集群中的待保护容器应用;
将待保护容器的标识信息添加至预设保护单元;
对待保护容器的容器应用元数据进行复制,获得第一容灾数据,并将第一容灾数据添加至预设保护单元;在预设保护单元中,标识信息和第一容灾数据对应存储;
将预设保护单元存储至第一存储系统。
本申请实施例提供了一种对容器应用元数据进行复制存储的实现方法。可以理解的是,容灾保护的对象为容器应用,一个容器应用包括集群中的deployment(k8S中的一类资源,无状态应用)、statefulset(k8S中的一类资源,有状态应用)、PVC(k8S中的一类资源,容器持久卷)等各种类型的资源(此处与K8S容器集群为例),每种资源又都包括多个资源实例,因此,可以对应容器应用设计一个容灾保护单元,该保护单元可以一致性的进行数据的保护。
在实现过程中,可以先对容灾备份命令进行解析,以确定第一容器集群中需要进行容灾备份的容器应用,即上述待保护容器应用(可能为第一容器集群中的全部容器应用,也可能为部分执行的容器应用);其次,将各待保护容器应用的标识信息添加至预设保护单元,该过程可以采用逐个添加容器应用标识信息的方式,也可以根据集群中的namesapce命名空间进行标识信息添加,其中,后者可以将namesapce命名空间中所有容器应用的标识信息添加至预设保护单元,此外,应用容器的标识信息应当具有唯一性,可以为唯一编码、唯一命名或者ID号等;进一步,对各个待保护容器应用的容器应用元数据进行复制,得到第一容灾数据,并将其与预设保护单元中的各个标识信息相对应,存储至预设保护单元中,即预设保护单元中相互对应的标识信息和第一容灾数据对应于同一待保护容器应用;最后,将预设保护单元存储至第一存储系统,实现容器应用元数据的容灾备份。
在本申请的一个实施例中,上述将第二容灾数据存储至第二存储系统,可以包括如下步骤:
根据容灾备份命令确定复制方式;
当复制方式为集中式存储复制时,将第二容灾数据存储至第二容器集群的集中式存储系统;第一容器集群的集中式存储系统与第二容器集群的集中式存储系统建立有远程复制关系,第二容器集群的集中式存储系统为第二存储系统;
当复制方式为分布式存储复制时,将第二容灾数据存储至分布式存储系统;分布式存储系统为第二存储系统;
当复制方式为本地存储复制时,将第二容灾数据以文件块的形式存储至对象存储系统;对象存储系统为第二存储系统。
可以理解的是,用户在建设容器云平台时,根据数据中心规划和成本,可能会使用不同的存储系统,为解决该问题,可以设计第二容器集群可支持多种后端存储的容灾方式,包括集中式存储、分布式存储以及本地存储。相对应的,第一容器集群在对容器业务数据进行复制存储时,则可以支持集中式存储复制、分布式存储复制以及本地存储复制三种实现方式。其中,第二容器集群可支持多种后端存储的容灾方式可以采用不同的插件实现。
在此基础上,在对容器业务数据进行复制得到第二容灾数据之后,可以先根据容灾备份命令确定当前指定的复制方式,然后针对不同的复制方式,将第一容灾数据存储至不同的存储系统中。
当复制方式为集中式存储复制时,第二存储系统可以为第二容器集群的集中式存储系统。具体而言,针对集中式存储方式,可以分别为第一容器集群和第二容器集群构建对应的集中式存储系统,并建立二者之间的远程复制关系,以实现二者之间的远程同步复制。因此,在对容器业务数据进行复制得到第二容灾数据之后,即可通过两个集中式存储系统之间的远程复制关系将其存储至第二容器集群的集中式存储系统中,以便第二容器集群直接调用。
当复制方式为分布式存储复制时,第二存储系统可以为分布式存储系统。具体而言,针对分布式存储方式,可以预先创建分布式存储系统,第一容器集群和第二容器集群均可对其进行数据访问。因此,在对容器业务数据进行复制得到第二容灾数据之后,即可直接将其存储至分布式存储系统中,以便第二容器集群调用。需要说明的是,该过程的实现依赖于分布式存储系统的多副本机制。
当复制方式为本地存储复制时,第二存储系统可以为对象存储系统。具体而言,针对本地存储方式,可以预先创建对象存储系统,第一容器集群和第二容器集群均可对其进行数据访问。因此,在对容器业务数据进行复制得到第二容灾数据之后,即可将其以文件块的形式存储至对象存储系统中,以便第二容器集群调用。
本申请实施例提供了另一种容器容灾方法。
请参考图3,图3为本申请所提供的另一种容器容灾方法的流程示意图,该容器容灾方法可应用于第二容器集群,包括如下S201至S203。
S201:接收容器管理平台下发的容灾恢复命令;
本步骤旨在实现容灾恢复命令的获取,该容灾恢复命令由容器管理平台下发,用于指示第二容器集群执行容灾恢复操作。可以理解的是,该容灾恢复命令可以是计划内下发的命令,也可以是计划外下发的命令,计划内下发的容灾恢复命令用于实现正常容器集群之间的业务切换,计划外下发的容灾恢复命令用于实现容器集群故障时的业务切换。
S202:响应容灾恢复命令,从第一存储系统中调取第一容灾数据,并利用第一容灾数据进行容器应用重建,获得重建容器应用;其中,第一容灾数据由第一容器集群对自身的容器应用元数据进行复制得到;
本步骤旨在实现容器应用重建。对于第一容器集群而言,其在接收到容器管理平台下发的容灾恢复命令之后,即可立即响应该容灾恢复命令,从第一存储系统中调取得到第一容灾数据,该第一容灾数据是由第一容器集群对自身的容器应用元数据进行复制得到的,而容器应用元数据又是第一容器集群中容器应用的元数据信息,因此,第二容器集群可以直接利用该第一容灾数据进行容器应用重建,获得上述重建容器应用。
S203:从第二存储系统中调取第二容灾数据,并利用第二容灾数据在重建容器应用中进行容器业务恢复,获得恢复后的容器业务;其中,第二容灾数据由第一容器集群对自身的容器业务数据进行复制得到。
本步骤旨在实现容器业务恢复,在完成容器应用重建之后,即可恢复其中的容器业务,以有效避免容器业务中断。在实现过程中,可以直接从第二存储系统中调取获得第二容灾数据,该第二容灾数据是由第一容器集群对自身的容器业务数据进行复制得到的,而容器业务数据又是第一容器集群中容器应用正在进行的业务数据信息,因此,第二容器集群可以直接利用该第二容灾数据进行容器业务恢复,得到恢复后的容器业务。
可见,本申请实施例所提供的容器容灾方法,通过构建主备容器集群和容器管理平台实现了跨容器集群的容器容灾方案,一个容器集群用于进行正常的业务处理,并响应于容器管理平台的命令进行容灾备份,在容灾备份过程中,将自身产生的容器应用元数据和容器业务数据进行备份存储;另一个容器集群则响应容器管理平台的命令进行容灾恢复,在容灾恢复过程中,则可以直接调用前一容器集群的备份数据进行容器应用重建和容器业务恢复。由此,实现了高效灵活的容器容灾,可以有效保障容器业务的快速恢复。
在本申请的一个实施例中,上述从第一存储系统中调取第一容灾数据,并利用第一容灾数据进行容器应用重建,获得重建容器应用,可以包括:
从第一存储系统中调取待保护容器应用的标识信息;在第一存储系统中,标识信息和第一容灾数据对应存储;
从容器管理平台拉取各标识信息对应的容器应用镜像;
从第一存储系统中调取第一容灾数据;
利用第一容灾数据和各容器应用镜像进行容器应用重建,获得重建容器应用。
本申请实施例提供了一种重建容器应用的实现方法。如上所述,针对容器应用元数据的复制存储,可以采用以保护单元为整体的备份方式,并且,在保护单元中,容器应用的标识信息和第一容灾数据对应存储。基于此,可以先从第一存储系统中调取待保护容器应用的标识信息,具体可以是从一存储系统中的保护单元中调取,然后从容器管理平台拉取各标识信息对应的容器应用镜像,该容器应用镜像用于实现相应的容器应用重建,其中,容器管理平台预存有各主容器集群(此处主要是只第一容器集群)中各容器应用的镜像数据;进一步,继续从第一存储系统中调取第一容灾数据,同样可以是从一存储系统中的保护单元中调取,由此,结合容器应用镜像和容器应用元数据,即可实现容器应用重建,得到重建容器应用。其中,在结合容器应用镜像和容器应用元数据进行容器应用重建的过程中,可以是先将各个容器应用镜像以及对应的容器应用元数据分发到第一容器集群中的各个集群节点上,然后在集群节点上进行容器应用重建。
在本申请的一个实施例中,上述从第二存储系统中调取第二容灾数据,可以包括如下步骤:
根据容灾恢复命令确定存储方式;
当存储方式为集中式存储时,从第二容器集群的集中式存储系统中调取第二容灾数据,第二容器集群的集中式存储系统与第一容器集群的集中式存储系统建立有远程复制关系,第二容器集群的集中式存储系统为第二存储系统;
当存储方式为分布式存储时,从分布式存储系统中调取第二容灾数据;分布式存储系统为第二存储系统;
当存储方式为本地存储时,从对象存储系统中调取文件块形式的第二容灾数据;对象存储系统为第二存储系统。
可以理解的是,用户在建设容器云平台时,根据数据中心规划和成本,可能会使用不同的存储系统,为解决该问题,可以设计第二容器集群可支持多种后端存储的容灾方式,包括集中式存储、分布式存储以及本地存储。那么,针对不同类型的存储系统,在进行第二容灾数据调取时,则可以采用不同的实现方式。
一种存储方式为集中式存储,此时,第二存储系统可以为第二容器集群的集中式存储系统。具体而言,针对集中式存储方式,可以分别为第一容器集群和第二容器集群构建对应的集中式存储系统,并建立二者之间的远程复制关系,以实现二者之间的远程同步复制。因此,第一容器集群在对容器业务数据进行复制得到第二容灾数据之后,即可通过两个集中式存储系统之间的远程复制关系将其存储至第二容器集群的集中式存储系统中,而第二容器集群则可以直接调用自身集中式存储系统中的第二容灾数据进行容器业务恢复。
另一种存储方式为分布式存储,此时,第二存储系统可以为分布式存储系统。具体而言,针对分布式存储方式,可以预先创建分布式存储系统,第一容器集群和第二容器集群均可对其进行数据访问。因此,第一容器集群在对容器业务数据进行复制得到第二容灾数据之后,即可直接将其存储至分布式存储系统中,以便第二容器集群调用。需要说明的是,该过程的实现依赖于分布式存储系统的多副本机制。
又一种存储方式为本地存储,此时,第二存储系统可以为对象存储系统。具体而言,针对本地存储方式,可以预先创建对象存储系统,第一容器集群和第二容器集群均可对其进行数据访问。因此,第一容器集群在对容器业务数据进行复制得到第二容灾数据之后,即可将其以文件块的形式存储至对象存储系统中,以便第二容器集群调用。
本申请实施例提供了又一种容器容灾方法。
请参考图4,图4为本申请所提供的又一种容器容灾方法的流程示意图,该容器容灾方法可应用于容器管理平台,包括如下S301至S303。
S301:根据预设容灾配置信息对待保护容器集群进行配置,得到第一容器集群和第二容器集群;
本步骤旨在实现容灾配置,可以理解的是,在进行容器容灾之前,需要对需要进行容器容灾的目标对象进行配置,此处目标对象为待保护容器集群,通过容灾配置,即可得到互为主备的第一容器集群和第二容器集群。
其中,配置过程可以根据预设容灾配置信息实现,该预设容灾配置信息由技术人员根据实际需求进行设置,本申请对此不做限定。在一种可能的实现方式中,预设容灾配置信息主要包括容灾集群配置信息和容灾保护单元信息。其中,容灾集群配置信息主要包括进行容灾的两个集群的标识和每个集群使用的存储信息;容灾保护单元信息主要包括使用的容灾配置、保护的容器应用标识以及保护单元状态,其中,保护单元状态机设计如图5所示,图5为本申请所提供的一种容灾保护单元状态机的工作原理图。
S302:下发容灾备份命令至第一容器集群,以使第一容器集群根据容灾备份命令进行容灾备份,得到备份数据;
本步骤旨在实现容灾备份命令的下发,将容灾备份命令下发至第一容器集群,使得第一容器集群响应该容灾备份命令,并进行容灾备份。其中,第一容器集群进行容灾备份主要是指对自身在运行过程中的一些数据信息进行备份,主要包括容器应用元数据和容器业务数据,得到相应的备份数据。进一步,将得到的备份数据存储至相应的存储系统中,以便第二容器集群可以直接调用。
S303:下发容灾恢复命令至第二容器集群,以使第二容器集群响应容灾恢复命令,利用备份数据进行容灾恢复。
本步骤旨在实现容灾恢复命令的下发,将容灾恢复命令下发至第二容器集群,使得第二容器集群响应该容灾恢复命令,并进行容灾恢复。其中,第二容器集群进行容灾恢复主要是在集群内重建第一容器集群中的运行状态,主要包括容器应用重建和容器业务恢复。由于S302中第一容器集群已经进行了数据备份,因此,该步骤中第二容器集群即可直接在存储系统中调用备份数据并进行荣在恢复。
可见,本申请实施例所提供的容器容灾方法,通过构建主备容器集群和容器管理平台实现了跨容器集群的容器容灾方案,一个容器集群用于进行正常的业务处理,并响应于容器管理平台的命令进行容灾备份,在容灾备份过程中,备份自身产生的数据信息;另一个容器集群则响应容器管理平台的命令进行容灾恢复,在容灾恢复过程中,则可以直接调用前一容器集群的备份数据进行容灾恢复。由此,实现了高效灵活的容器容灾,可以有效保障容器业务的快速恢复。
在本申请的一个实施例中,上述下发容灾恢复命令至第二容器集群之前,还可以包括:下发停机指令至第一容器集群,以使第一容器集群中的各容器应用停止运行。
可以理解的是,容器管理平台下发的容灾恢复命令可以是计划内下发的命令,也可以是计划外下发的命令,计划内下发的容灾恢复命令用于实现正常容器集群之间的业务切换,计划外下发的容灾恢复命令用于实现容器集群故障时的业务切换。其中,当容灾恢复命令是在计划内下发时,在下发该容灾恢复命令之前,可以先关闭第一容器集群中的容器应用,以防止有新的请求进入造成访问错误的情况,同时也可以有效保证切换的一致性。因此,在下发容灾恢复命令至第二容器集群之前,可以先下发一个停机指令至第一容器集群,使得第一容器集群响应该容灾恢复命令,停止集群内各容器应用的运行。
在本申请的一个实施例中,该容器容灾方法还可以包括:对平台容灾信息进行复制,获得备份容灾信息;将备份容灾信息存储至平台存储系统。
可以想到的是,在容器管理平台运行过程中同样可能面临意外故障的情况,为解决该问题,还可以进一步对平台容灾信息进行备份,得到备份容灾信息,并存储至对应的平台存储系统。由此,当容器管理平台发生故障时,则可以利用平台存储系统中的备份容灾信息重建容器管理平台。其中,平台容灾信息可以包括两部分内容,一部分是容器管理平台本身的管理信息,另一部分则是上述预设容灾配置信息。
本申请实施例提供了一种容器容灾系统。
如图1所示,该容器容灾系统可以包括:
容器管理平台300,用于下发容灾备份命令至第一容器集群100,以及下发容灾恢复命令至第二容器集群200;
第一容器集群100,用于根据容灾备份命令进行容灾备份,得到备份数据;
第二容器集群200,用于响应容灾恢复命令,并利用备份数据进行容灾恢复。
可见,本申请实施例所提供的容器容灾系统,通过构建主备容器集群和容器管理平台实现了跨容器集群的容器容灾方案,一个容器集群用于进行正常的业务处理,并响应于容器管理平台的命令进行容灾备份,在容灾备份过程中,备份自身产生的数据信息;另一个容器集群则响应容器管理平台的命令进行容灾恢复,在容灾恢复过程中,则可以直接调用前一容器集群的备份数据进行容灾恢复。由此,实现了高效灵活的容器容灾,可以有效保障容器业务的快速恢复。
在此基础上,以K8S集群为例,请参考图6,图6为本申请所提供的另一种容器容灾系统的结构示意图。图6所示容器容灾系统,包括主K8S集群、备K8S集群、容器管理平台以及各种存储系统,其中,主K8S集群和备K8S集群用于实现集群容灾,容器管理平台用于实现主K8S集群和备K8S集群的管理,各种存储系统用于实现数据存储。其中,主K8S集群包括容器应用元数据复制模块和业务数据复制模块,备K8S集群包括镜像预热模块、容器应用重放模块以及业务数据恢复模块,容器管理平台包括容器镜像服务、容灾控制模块以及容灾元数据复制模块,存储系统包括对象存储系统、集中式存储系统、分布式存储系统以及平台存储系统(图6所示元数据备份)。基于各个功能模块实现容器容灾方法的流程如下:
1、容灾控制模块:
本模块负责整个容灾流程的运行,根据接收到的各类请求调用其他模块进行容灾。在进入容灾流程之前,需要先进行容灾配置设计,包括需要进行容灾的两个容器集群的标识,以及每个集群容灾时采用的存储池和存储类型等,该配置在创建容灾保护单元时使用。其中,将需要进行容灾的两个容器集群进行配对设置,具体的配对关系包括的数据库字段可以如表1所示:
表1 一种容灾配置信息表
源集群 | 目的集群 | 源集群存储池 | 目的集群存储池 | 存储类型 |
容器集群1 | 容器集群2 | Pool 1 | Pool 2 | 集中式存储/分布式存储/本地存储 |
那么,在进行容灾过程中,则可以根据选择的容灾配置执行具体的保护策略。
2、容灾元数据复制模块:
可以采用数据库的实时事务日志备份技术将生产数据库实例的数据实时备份到备份数据库实例。此处备份的数据即为上述平台容灾信息。
3、容器应用元数据复制模块:
主要是以保护单元为基本单位,将其内的所有容器应用元数据统一提取,并保存到对象存储系统中。在复制过程中,首次复制采用全量复制,后续复制采用增量复制,增量复制通过监听保护单元内所有容器应用元数据变化的事件实现,可以有效减少复制的数据量,节省网络带宽等资源。此外,正因为以事件机制监听元数据变化,所以可以对已经开启数据保护的容器应用进行实时配置修改,比如副本数、CPU和内存规格等。
4、业务数据复制模块:
主要是以插件的形式实现多种存储后端的业务数据的复制,具体则是根据容灾配置里的存储类型调用不同的插件去执行数据复制操作。主要包括:
4.1、基于集中式存储远程复制方式:容灾控制模块获取主K8S集群中需要容灾保护的容器应用元数据,并从中提取出与业务数据相关的所有容器卷(即PVC),然后在备K8S集群中通过容器应用重放模块构建PVC。在K8S集群中构建PVC,也就相当于在存储系统(集中式存储系统)中构建了实际的存储卷,与PVC一一对应。由此,业务数据复制模块即可利用远程复制方式的插件,将主备两个K8S集群中PVC对应的存储卷建立远程复制关系(相当于建立主备K8S集群的集中式存储系统的远程复制关系),并开启数据实时同步复制,保证数据无丢失的复制到备K8S集群对应的集中式存储系统中。此外,当两个集群距离较远时,时延和带宽受限时,可以选择周期异步复制的方式。
4.2、基于分布式存储多副本方式:业务数据复制模块中该类方式的插件无需做额外的处理,只需要检测分布式存储系统已经开启了多副本,然后依赖分布式存储系统的多副本机制,自动将容器业务数据在本地副本同步至异地副本上,可以做到实时同步,且无数据丢失。
4.3、基于远程文件级拷贝方式:在没有任何商业存储时,容器应用可以使用本地磁盘作为业务数据持久化的低成本方案。此方式下,容灾控制模块获取主K8S集群中需要容灾保护的容器应用元数据,并从中提取出与业务数据相关的所有容器卷。业务数据复制模块则将容器卷对应的主机目录下的数据以文件块的形式复制到对象存储系统中,其中,首次复制采用全量复制,后续复制采用增量复制,以减少网络带宽和对象存储空间。另外,基于文件的复制方式,同样也是周期性的备份。
5、容器应用重放模块:
主要是获取对象存储系统中备份的主K8S集群的容器应用元数据,并基于该容器应用元数据进行容器应用恢复。其中,可以根据不同的存储类型,使用不同的恢复策略。
6、业务数据恢复模块:
主要是根据不同的存储类型,选择不同的插件去实现业务数据的恢复。
7、镜像预热模块:
主要是定时读取备份到对象存储系统中的容器应用元数据,该模块会将保护单元中所有容器应用使用到的容器镜像名称(对应于上述标识信息)提取出来,并向容器镜像服务发起拉取镜像请求,然后将容器镜像分发到容器集群的各个节点。基于此,在进行集群业务切换时,容灾控制模块控制容器应用重放模块进行业务拉起,容器应用重放模块获取对象存储系统中备份的容器应用元数据并进行容器应用恢复:选择集中式存储远程复制方式时,在进行容器应用恢复时,需要过滤掉PVC,因为该方式下,PVC已经创建并且不能覆盖,否则数据丢失;选择分布式存储多副本方式时,可以将全部容器应用元数据进行恢复,备K8S会自动寻找PVC对应的分布式存储在本地的副本进行业务数据恢复;选择远程文件拷贝方式时,容器应用重放模块将全部容器应用元数据进行恢复,然后,业务数据恢复模块拉取对象存储系统中的文件块备份在本地进行恢复,并复制到容器卷对应的主机文件目录中。
可见,对于上述容器容灾系统,以K8S容器集群为整体的故障域,当两地的一个容器集群故障后,可以将容器应用在异地的容器集群进行快速恢复,也可以在两个集群都正常运行的情况,实现容器应用的切换。
本申请实施例提供了一种容器容灾装置。
请参考图7,图7为本申请所提供的一种容器容灾装置的结构示意图,该容器容灾装置可应用于第一容器集群,包括:
备份命令接收模块1,用于接收容器管理平台下发的容灾备份命令;
第一复制模块2,用于响应容灾备份命令,对容器应用元数据进行复制获得第一容灾数据,并将第一容灾数据存储至第一存储系统,以便第二容器集群利用第一存储系统中的第一容灾数据进行容器应用重建,获得重建容器应用;
第二复制模块3,用于对容器业务数据进行复制获得第二容灾数据,并将第二容灾数据存储至第二存储系统,以便第二容器集群利用第二存储系统中的第二容灾数据在重建容器应用中进行容器业务恢复,获得恢复后的容器业务。
在本申请的一个实施例中,上述第一复制模块2可具体用于获取第一容器集群内的已复制次数;当已复制次数为零时,对容器应用元数据进行全量复制,获得第一容灾数据;当已复制次数不为零时,对容器应用元数据进行增量复制,获得第一容灾数据。
在本申请的一个实施例中,上述第一复制模块2可具体用于根据容灾备份命令确定第一容器集群中的待保护容器应用;将待保护容器的标识信息添加至预设保护单元;对待保护容器的容器应用元数据进行复制,获得第一容灾数据,并将第一容灾数据添加至预设保护单元;在预设保护单元中,标识信息和第一容灾数据对应存储;将预设保护单元存储至第一存储系统。
在本申请的一个实施例中,上述第二复制模块3可具体用于根据容灾备份命令确定复制方式;当复制方式为集中式存储复制时,将第二容灾数据存储至第二容器集群的集中式存储系统;第一容器集群的集中式存储系统与第二容器集群的集中式存储系统建立有远程复制关系,第二一容器集群的集中式存储系统为第二存储系统;当复制方式为分布式存储复制时,将第二容灾数据存储至分布式存储系统;分布式存储系统为第二存储系统;当复制方式为本地存储复制时,将第二容灾数据以文件块的形式存储至对象存储系统;对象存储系统为第二存储系统。
对于本申请实施例提供的装置的介绍请参照上述方法实施例,本申请在此不做赘述。
本申请实施例提供了另一种容器容灾装置。
请参考图8,图8为本申请所提供的另一种容器容灾装置的结构示意图,该容器容灾装置可应用于第二容器集群,包括:
恢复命令接收模块4,用于接收容器管理平台下发的容灾恢复命令;
容器应用重建模块5,用于响应容灾恢复命令,从第一存储系统中调取第一容灾数据,并利用第一容灾数据进行容器应用重建,获得重建容器应用;其中,第一容灾数据由第一容器集群对自身的容器应用元数据进行复制得到;
容器业务恢复模块6,用于从第二存储系统中调取第二容灾数据,并利用第二容灾数据在重建容器应用中进行容器业务恢复,获得恢复后的容器业务;其中,第二容灾数据由第一容器集群对自身的容器业务数据进行复制得到。
在本申请的一个实施例中,上述容器应用重建模块5可具体用于从第一存储系统中调取待保护容器应用的标识信息;在第一存储系统中,标识信息和第一容灾数据对应存储;从容器管理平台拉取各标识信息对应的容器应用镜像;从第一存储系统中调取第一容灾数据;利用第一容灾数据和各容器应用镜像进行容器应用重建,获得重建容器应用。
在本申请的一个实施例中,上述容器业务恢复模块6可具体用于根据容灾恢复命令确定存储方式;当存储方式为集中式存储时,从第二容器集群的集中式存储系统中调取第二容灾数据,第二容器集群的集中式存储系统与第一容器集群的集中式存储系统建立有远程复制关系,第二容器集群的集中式存储系统为第二存储系统;当存储方式为分布式存储时,从分布式存储系统中调取第二容灾数据;分布式存储系统为第二存储系统;当存储方式为本地存储时,从对象存储系统中调取文件块形式的第二容灾数据;对象存储系统为第二存储系统。
对于本申请实施例提供的装置的介绍请参照上述方法实施例,本申请在此不做赘述。
本申请实施例提供了一种容器容灾装置。
请参考图9,图9为本申请所提供的一种容器容灾装置的结构示意图,该容器容灾装置可应用于容器管理平台,包括:
容器集群配置模块7,用于根据预设容灾配置信息对待保护容器集群进行配置,得到第一容器集群和第二容器集群;
第一命令下发模块8,用于下发容灾备份命令至第一容器集群,以使第一容器集群根据容灾备份命令进行容灾备份,得到备份数据;
第二命令下发模块9,用于下发容灾恢复命令至第二容器集群,以使第二容器集群响应容灾恢复命令,利用备份数据进行容灾恢复。
在本申请的一个实施例中,该容器容灾装置还可以包括停机模块,用于在上述下发容灾恢复命令至第二容器集群之前,下发停机指令至第一容器集群,以使第一容器集群中的各容器应用停止运行。
在本申请的一个实施例中,该容器容灾装置还可以包括备份模块,用于对平台容灾信息进行复制,获得备份容灾信息;将备份容灾信息存储至平台存储系统。
对于本申请实施例提供的装置的介绍请参照上述方法实施例,本申请在此不做赘述。
本申请实施例提供了一种容器容灾设备。
请参考图10,图10为本申请所提供的一种容器容灾设备的结构示意图,该容器容灾设备可包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时可实现如上述任意一种容器容灾方法的步骤。
如图10所示,为容器容灾设备的组成结构示意图,容器容灾设备可以包括:处理器10、存储器11、通信接口12和通信总线13。处理器10、存储器11、通信接口12均通过通信总线13完成相互间的通信。
在本申请实施例中,处理器10可以为中央处理器(Central Processing Unit,CPU)、特定应用集成电路、数字信号处理器、现场可编程门阵列或者其他可编程逻辑器件等。
处理器10可以调用存储器11中存储的程序,具体的,处理器10可以执行容器容灾方法的实施例中的操作。
存储器11中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本申请实施例中,存储器11中至少存储有用于实现以下功能的程序:
接收容器管理平台下发的容灾备份命令;
响应容灾备份命令,对容器应用元数据进行复制获得第一容灾数据,并将第一容灾数据存储至第一存储系统,以便第二容器集群利用第一存储系统中的第一容灾数据进行容器应用重建,获得重建容器应用;
对容器业务数据进行复制获得第二容灾数据,并将第二容灾数据存储至第二存储系统,以便第二容器集群利用第二存储系统中的第二容灾数据在重建容器应用中进行容器业务恢复,获得恢复后的容器业务。
在一种可能的实现方式中,存储器11可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及至少一个功能所需的应用程序等;存储数据区可存储使用过程中所创建的数据。
此外,存储器11可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。
通信接口12可以为通信模块的接口,用于与其他设备或者系统连接。
当然,需要说明的是,图10所示的结构并不构成对本申请实施例中容器容灾设备的限定,在实际应用中容器容灾设备可以包括比图10所示的更多或更少的部件,或者组合某些部件。
本申请实施例提供了一种计算机可读存储介质。
本申请实施例所提供的计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如上述任意一种容器容灾方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本申请实施例提供的计算机可读存储介质的介绍请参照上述方法实施例,本申请在此不做赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的技术方案进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请的保护范围内。
Claims (16)
1.一种容器容灾方法,其特征在于,应用于第一容器集群,包括:
接收容器管理平台下发的容灾备份命令;
响应所述容灾备份命令,对容器应用元数据进行复制获得第一容灾数据,并将所述第一容灾数据存储至第一存储系统,以便第二容器集群利用所述第一存储系统中的第一容灾数据进行容器应用重建,获得重建容器应用;
对容器业务数据进行复制获得第二容灾数据,并将所述第二容灾数据存储至第二存储系统,以便所述第二容器集群利用所述第二存储系统中的第二容灾数据在所述重建容器应用中进行容器业务恢复,获得恢复后的容器业务。
2.根据权利要求1所述的容器容灾方法,其特征在于,所述对容器应用元数据进行复制获得第一容灾数据,包括:
获取所述第一容器集群内的已复制次数;
当所述已复制次数为零时,对所述容器应用元数据进行全量复制,获得所述第一容灾数据;
当所述已复制次数不为零时,对所述容器应用元数据进行增量复制,获得所述第一容灾数据。
3.根据权利要求1所述的容器容灾方法,其特征在于,所述对容器应用元数据进行复制获得第一容灾数据,并将所述第一容灾数据存储至第一存储系统,包括:
根据所述容灾备份命令确定所述第一容器集群中的待保护容器应用;
将所述待保护容器的标识信息添加至预设保护单元;
对所述待保护容器的容器应用元数据进行复制,获得所述第一容灾数据,并将所述第一容灾数据添加至所述预设保护单元;在所述预设保护单元中,所述标识信息和所述第一容灾数据对应存储;
将所述预设保护单元存储至所述第一存储系统。
4.根据权利要求1所述的容器容灾方法,其特征在于,所述将所述第二容灾数据存储至第二存储系统,包括:
根据所述容灾备份命令确定复制方式;
当所述复制方式为集中式存储复制时,将所述第二容灾数据存储至所述第二容器集群的集中式存储系统;所述第一容器集群的集中式存储系统与所述第二容器集群的集中式存储系统建立有远程复制关系,所述第二容器集群的集中式存储系统为所述第二存储系统;
当所述复制方式为分布式存储复制时,将所述第二容灾数据存储至分布式存储系统;所述分布式存储系统为所述第二存储系统;
当所述复制方式为本地存储复制时,将所述第二容灾数据以文件块的形式存储至对象存储系统;所述对象存储系统为所述第二存储系统。
5.一种容器容灾方法,其特征在于,应用于第二容器集群,包括:
接收容器管理平台下发的容灾恢复命令;
响应所述容灾恢复命令,从第一存储系统中调取第一容灾数据,并利用所述第一容灾数据进行容器应用重建,获得重建容器应用;其中,所述第一容灾数据由第一容器集群对自身的容器应用元数据进行复制得到;
从第二存储系统中调取第二容灾数据,并利用所述第二容灾数据在所述重建容器应用中进行容器业务恢复,获得恢复后的容器业务;其中,所述第二容灾数据由所述第一容器集群对自身的容器业务数据进行复制得到。
6.根据权利要求5所述的容器容灾方法,其特征在于,所述从第一存储系统中调取第一容灾数据,并利用所述第一容灾数据进行容器应用重建,获得重建容器应用,包括:
从所述第一存储系统中调取待保护容器应用的标识信息;在所述第一存储系统中,所述标识信息和所述第一容灾数据对应存储;
从所述容器管理平台拉取各所述标识信息对应的容器应用镜像;
从所述第一存储系统中调取所述第一容灾数据;
利用所述第一容灾数据和各所述容器应用镜像进行容器应用重建,获得所述重建容器应用。
7.根据权利要求5所述的容器容灾方法,其特征在于,所述从第二存储系统中调取第二容灾数据,包括:
根据所述容灾恢复命令确定存储方式;
当所述存储方式为集中式存储时,从第二容器集群的集中式存储系统中调取所述第二容灾数据,所述第二容器集群的集中式存储系统与所述第一容器集群的集中式存储系统建立有远程复制关系,所述第二容器集群的集中式存储系统为所述第二存储系统;
当所述存储方式为分布式存储时,从分布式存储系统中调取所述第二容灾数据;所述分布式存储系统为所述第二存储系统;
当所述存储方式为本地存储时,从对象存储系统中调取文件块形式的所述第二容灾数据;所述对象存储系统为所述第二存储系统。
8.一种容器容灾方法,其特征在于,应用于容器管理平台,包括:
根据预设容灾配置信息对待保护容器集群进行配置,得到第一容器集群和第二容器集群;
下发容灾备份命令至所述第一容器集群,以使所述第一容器集群根据所述容灾备份命令进行容灾备份,得到备份数据;
下发容灾恢复命令至所述第二容器集群,以使所述第二容器集群响应所述容灾恢复命令,利用所述备份数据进行容灾恢复。
9.根据权利要求8所述的容器容灾方法,其特征在于,所述下发容灾恢复命令至所述第二容器集群之前,还包括:
下发停机指令至所述第一容器集群,以使所述第一容器集群中的各容器应用停止运行。
10.根据权利要求8所述的容器容灾方法,其特征在于,还包括:
对平台容灾信息进行复制,获得备份容灾信息;
将所述备份容灾信息存储至平台存储系统。
11.一种容器容灾系统,其特征在于,包括:
容器管理平台,用于下发容灾备份命令至第一容器集群,以及下发容灾恢复命令至第二容器集群;
所述第一容器集群,用于根据所述容灾备份命令进行容灾备份,得到备份数据;
所述第二容器集群,用于响应所述容灾恢复命令,并利用所述备份数据进行容灾恢复。
12.一种容器容灾装置,其特征在于,应用于第一容器集群,包括:
备份命令接收模块,用于接收容器管理平台下发的容灾备份命令;
第一复制模块,用于响应所述容灾备份命令,对容器应用元数据进行复制获得第一容灾数据,并将所述第一容灾数据存储至第一存储系统,以便第二容器集群利用所述第一存储系统中的第一容灾数据进行容器应用重建,获得重建容器应用;
第二复制模块,用于对容器业务数据进行复制获得第二容灾数据,并将所述第二容灾数据存储至第二存储系统,以便所述第二容器集群利用所述第二存储系统中的第二容灾数据在所述重建容器应用中进行容器业务恢复,获得恢复后的容器业务。
13.一种容器容灾装置,其特征在于,应用于第二容器集群,包括:
恢复命令接收模块,用于接收容器管理平台下发的容灾恢复命令;
容器应用重建模块,用于响应所述容灾恢复命令,从第一存储系统中调取第一容灾数据,并利用所述第一容灾数据进行容器应用重建,获得重建容器应用;其中,所述第一容灾数据由第一容器集群对自身的容器应用元数据进行复制得到;
容器业务恢复模块,用于从第二存储系统中调取第二容灾数据,并利用所述第二容灾数据在所述重建容器应用中进行容器业务恢复,获得恢复后的容器业务;其中,所述第二容灾数据由所述第一容器集群对自身的容器业务数据进行复制得到。
14.一种容器容灾装置,其特征在于,应用于容器管理平台,包括:
容器集群配置模块,用于根据预设容灾配置信息对待保护容器集群进行配置,得到第一容器集群和第二容器集群;
第一命令下发模块,用于下发容灾备份命令至所述第一容器集群,以使所述第一容器集群根据所述容灾备份命令进行容灾备份,得到备份数据;
第二命令下发模块,用于下发容灾恢复命令至所述第二容器集群,以使所述第二容器集群响应所述容灾恢复命令,利用所述备份数据进行容灾恢复。
15.一种容器容灾设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至10任一项所述的容器容灾方法的步骤。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至10任一项所述的容器容灾方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211417472.8A CN115658390A (zh) | 2022-11-14 | 2022-11-14 | 容器容灾方法、系统、装置、设备及计算机可读存储介质 |
PCT/CN2023/084590 WO2024103594A1 (zh) | 2022-11-14 | 2023-03-29 | 容器容灾方法、系统、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211417472.8A CN115658390A (zh) | 2022-11-14 | 2022-11-14 | 容器容灾方法、系统、装置、设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115658390A true CN115658390A (zh) | 2023-01-31 |
Family
ID=85021217
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211417472.8A Pending CN115658390A (zh) | 2022-11-14 | 2022-11-14 | 容器容灾方法、系统、装置、设备及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115658390A (zh) |
WO (1) | WO2024103594A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116627661A (zh) * | 2023-07-24 | 2023-08-22 | 杭州谐云科技有限公司 | 算力资源调度的方法和系统 |
WO2024103594A1 (zh) * | 2022-11-14 | 2024-05-23 | 济南浪潮数据技术有限公司 | 容器容灾方法、系统、装置、设备及计算机可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108958971A (zh) * | 2018-06-14 | 2018-12-07 | 北京小米移动软件有限公司 | 信息的备份方法、装置及设备 |
CN111338854A (zh) * | 2020-05-25 | 2020-06-26 | 南京云信达科技有限公司 | 基于Kubernetes集群快速恢复数据的方法及系统 |
CN111611109A (zh) * | 2020-05-22 | 2020-09-01 | 苏州浪潮智能科技有限公司 | 一种分布式集群的备份方法、系统、设备以及介质 |
US20220043719A1 (en) * | 2020-08-07 | 2022-02-10 | EMC IP Holding Company LLC | Systems and methods for multiple recovery types using single backup type |
CN114328007A (zh) * | 2021-11-19 | 2022-04-12 | 苏州浪潮智能科技有限公司 | 一种容器备份还原方法、装置及其介质 |
CN114466027A (zh) * | 2022-01-26 | 2022-05-10 | 苏州浪潮智能科技有限公司 | 一种云原生数据库服务提供方法、系统、设备及介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9836367B2 (en) * | 2015-08-28 | 2017-12-05 | Netapp, Inc. | Trust relationship migration for data mirroring |
CN110377459A (zh) * | 2019-06-28 | 2019-10-25 | 苏州浪潮智能科技有限公司 | 一种容灾系统、容灾处理方法、监控节点和备份集群 |
CN112422628A (zh) * | 2020-10-19 | 2021-02-26 | 天翼电子商务有限公司 | Redis-canal跨机房缓存同步系统 |
CN114741234A (zh) * | 2021-01-07 | 2022-07-12 | 华为技术有限公司 | 数据的备份存储方法、设备及系统 |
CN115174364A (zh) * | 2022-06-30 | 2022-10-11 | 济南浪潮数据技术有限公司 | 一种容灾场景下的数据还原方法、装置以及介质 |
CN115658390A (zh) * | 2022-11-14 | 2023-01-31 | 济南浪潮数据技术有限公司 | 容器容灾方法、系统、装置、设备及计算机可读存储介质 |
-
2022
- 2022-11-14 CN CN202211417472.8A patent/CN115658390A/zh active Pending
-
2023
- 2023-03-29 WO PCT/CN2023/084590 patent/WO2024103594A1/zh unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108958971A (zh) * | 2018-06-14 | 2018-12-07 | 北京小米移动软件有限公司 | 信息的备份方法、装置及设备 |
CN111611109A (zh) * | 2020-05-22 | 2020-09-01 | 苏州浪潮智能科技有限公司 | 一种分布式集群的备份方法、系统、设备以及介质 |
CN111338854A (zh) * | 2020-05-25 | 2020-06-26 | 南京云信达科技有限公司 | 基于Kubernetes集群快速恢复数据的方法及系统 |
US20220043719A1 (en) * | 2020-08-07 | 2022-02-10 | EMC IP Holding Company LLC | Systems and methods for multiple recovery types using single backup type |
CN114328007A (zh) * | 2021-11-19 | 2022-04-12 | 苏州浪潮智能科技有限公司 | 一种容器备份还原方法、装置及其介质 |
CN114466027A (zh) * | 2022-01-26 | 2022-05-10 | 苏州浪潮智能科技有限公司 | 一种云原生数据库服务提供方法、系统、设备及介质 |
Non-Patent Citations (3)
Title |
---|
YUXUAN MO: "A Cost-Efficient Metadata Scheme for High-Performance Deduplication Systems" * |
余咏;: "容灾备份系统在四川电网的应用分析" * |
凌云, 浙江人民出版社 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024103594A1 (zh) * | 2022-11-14 | 2024-05-23 | 济南浪潮数据技术有限公司 | 容器容灾方法、系统、装置、设备及计算机可读存储介质 |
CN116627661A (zh) * | 2023-07-24 | 2023-08-22 | 杭州谐云科技有限公司 | 算力资源调度的方法和系统 |
CN116627661B (zh) * | 2023-07-24 | 2023-11-03 | 杭州谐云科技有限公司 | 算力资源调度的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2024103594A1 (zh) | 2024-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103226502B (zh) | 一种数据灾备控制系统及数据恢复方法 | |
CN115658390A (zh) | 容器容灾方法、系统、装置、设备及计算机可读存储介质 | |
CN102521083A (zh) | 一种云计算系统中虚拟机备份方法和系统 | |
CN104486319A (zh) | 适用于高可用系统的配置文件实时同步方法及其系统 | |
CN105681420A (zh) | 一种基于Docker实现交换机操作系统备份的方法 | |
CN115576655B (zh) | 容器数据保护系统、方法、装置、设备及可读存储介质 | |
CN115562911B (zh) | 虚拟机数据备份方法及装置、系统、电子设备、存储介质 | |
US8612799B2 (en) | Method and apparatus of backing up subversion repository | |
JP2013543179A (ja) | アイテム単位でのリカバリー | |
CN105389231A (zh) | 一种数据库双机备份方法及系统 | |
CN115292408A (zh) | MySQL数据库的主从同步方法、装置、设备及介质 | |
EP4060514A1 (en) | Distributed database system and data disaster backup drilling method | |
CN112035062B (zh) | 云计算的本地存储的迁移方法、计算机设备及存储介质 | |
CN116389233B (zh) | 容器云管理平台主备切换系统、方法、装置和计算机设备 | |
CN108984346B (zh) | 一种生产数据容灾的方法、系统及存储介质 | |
CN111752892A (zh) | 分布式文件系统及其实现方法、管理系统、设备及介质 | |
CN116166470A (zh) | Redis集群克隆复制方法及装置、介质、设备 | |
CN112231150B (zh) | 数据库集群中故障数据库恢复方法和装置 | |
CN115129676A (zh) | 数据同步方法、装置、设备及介质 | |
CN115705269A (zh) | 数据同步方法、系统、服务器及存储介质 | |
CN114281600A (zh) | 一种容灾备份和容灾恢复方法、装置、设备及存储介质 | |
US10909002B2 (en) | Fault tolerance method and system for virtual machine group | |
CN116414915A (zh) | 分布式数据库集群的管控方法、装置和数据库管控平台 | |
CN111142921A (zh) | 软件升级方法及装置 | |
CN104809033A (zh) | 一种备份方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20230131 |
|
RJ01 | Rejection of invention patent application after publication |