CN115858246A - 一种容灾演练方法、装置、设备及存储介质 - Google Patents
一种容灾演练方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115858246A CN115858246A CN202211684213.1A CN202211684213A CN115858246A CN 115858246 A CN115858246 A CN 115858246A CN 202211684213 A CN202211684213 A CN 202211684213A CN 115858246 A CN115858246 A CN 115858246A
- Authority
- CN
- China
- Prior art keywords
- target virtual
- data backup
- data
- read
- write
- 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
- 238000005553 drilling Methods 0.000 title claims abstract description 77
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000011084 recovery Methods 0.000 claims abstract description 136
- 238000013500 data storage Methods 0.000 claims abstract description 40
- 238000013507 mapping Methods 0.000 claims abstract description 15
- 238000012360 testing method Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 abstract description 24
- 238000004590 computer program Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013506 data mapping Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010367 cloning Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请是关于一种容灾演练方法、装置、设备及存储介质,具体涉及数据存储技术领域。所述方法包括:在目标虚拟机创建目标虚拟卷;目标虚拟卷与第一数据备份以及第二数据备份存在映射关系;第二数据备份为容灾站点中,目标数据以镜像方式存储的数据备份;目标虚拟机向目标虚拟卷发送读/写请求,以下发所述读/写请求至所述第一数据备份与第二数据备份中的至少一者,获得读/写结果;目标虚拟卷将读/写结果,返回至目标虚拟机,以完成容灾演练。上述方案既保证了容灾节点的数据存储效率,也保证了容灾演练过程中的I/O性能,从而保证了容灾演练效率。
Description
技术领域
本发明涉及数据存储技术领域,具体涉及一种容灾演练方法、装置、设备及存储介质。
背景技术
数据级容灾是指在异地容灾中心只对数据做远程备份,在本地站点发生灾难之后要确保原有的数据不会丢失或者遭到破坏,通过异地容灾中心的数据备份来恢复系统。
在数据级容灾中,由于容灾站点只有数据,没有相同的应用系统,因此要通过容灾演练操作来检验容灾站点上已经备份的数据的有效性。通过模拟容灾演练,在容灾站点上来实现系统和业务恢复,采用模拟数据和模拟业务系统运行来验证演习预案,验证备份的数据是有效的。在数据级容灾中,为了保证数据的可靠性,数据存储需要采用不同的数据冗余方案:如镜像,纠删码。用镜像方式来存储数据,存储空间占用率高,数据读写性能都比较高。而用纠删码方式来存储数据,存储空间占用率低,全条带写和读性能都比较高,但小写更新的性能非常低。因此在本地主站点上,数据存储多采用镜像方式,而在异地容灾站点上,数据存储有些用镜像存储方式,也有些为了节约成本,则会采用纠删码方式。
上述方案中,采用镜像方式存储数据的效率低,但采用纠删码方式存储数据I/O性能较差,会导致容灾演练效率低。
发明内容
本申请提供了一种容灾演练方法、装置、设备及存储介质,既保证了容灾节点的数据存储效率,也保证了容灾演练过程中的I/O性能,从而保证了容灾演练效率,该技术方案如下。
一方面,提供了一种容灾演练方法,所述方法由数据存储系统中的容灾站点执行;所述数据存储系统中还包括主站点;所述容灾站点中存储有第一数据备份,所述第一数据备份为目标数据以纠删码方式存储的数据备份;
所述方法包括:
在目标虚拟机创建目标虚拟卷;目标虚拟卷与第一数据备份以及第二数据备份存在映射关系;所述第二数据备份为所述容灾站点中以镜像方式存储的数据备份;
所述目标虚拟机向所述目标虚拟卷发送读/写请求,以下发所述读/写请求至所述第一数据备份与第二数据备份中的至少一者;
所述目标虚拟卷将所述读/写结果返回至所述目标虚拟机,以完成所述容灾演练。
又一方面,提供了一种容灾演练装置,所述装置包括:
虚拟卷创建模块,用于在目标虚拟机创建目标虚拟卷;目标虚拟卷与第一数据备份以及第二数据备份存在映射关系;所述第二数据备份为所述容灾站点中,目标数据以镜像方式存储的数据备份;
测试模块,用于指示所述目标虚拟机向所述目标虚拟卷发送读/写请求,下发所述读/写请求至所述第一数据备份与第二数据备份中的至少一者,获得对应的读/写结果;
结果获取模块,用于指示所述目标虚拟卷将所述读/写结果返回至所述目标虚拟机,以完成所述容灾演练。
在一种可能的实现方式中,所述读/写请求包括写入请求;所述读/写结果包括写入结果;
所述测试模块,还用于指示所述目标虚拟机向所述目标虚拟卷发送写入请求;
所述目标虚拟卷对所述写入请求进行克隆操作,获得克隆写入请求;
所述目标虚拟卷根据所述克隆写入请求,对所述第二数据备份进行数据写入操作,获得写入结果。
在一种可能的实现方式中,所述读/写请求包括读取请求;所述读/写结果包括读取结果;
所述测试模块,还用于,所述目标虚拟机向所述目标虚拟卷发送读取请求;
所述目标虚拟卷对所述读取请求进行克隆操作,获得克隆读取请求;
所述目标虚拟卷根据所述克隆读取请求,分别对所述第一数据备份以及所述第二数据备份进行数据读取操作,获得第一候选结果以及第二候选结果;
当所述第二候选结果有效时,将所述第二候选结果作为所述读取结果。
在一种可能的实现方式中,所述测试模块,还用于当所述第二候选结果无效时,将所述第一候选结果作为所述读取结果。
在一种可能的实现方式中,所述主站点上运行有备份软件;所述备份软件用于将所述主站点中的应用数据周期性地复制到所述容灾站点的第一数据备份中。
在一种可能的实现方式中,所述装置还包括:
删除模块,用于当检测到完成所述容灾演练后,将所述目标虚拟机、目标虚拟卷以及第二数据备份删除。
又一方面,提供了一种数据存储系统,所述数据存储系统中包括主站点和容灾站点;所述主站点上运行有备份软件;所述备份软件用于将所述应用的数据周期性地复制到所述灾备站点中所述第一数据备份中。所述容灾站点中存储有第一数据备份;所述容灾站点中容灾演练中存储有第二数据备份;所述第一数据备份为目标数据以纠删码方式存储的数据备份;所述第二数据备份为目标数据以镜像方式存储的数据备份;
所述容灾站点用于创建所述容灾演练的目标虚拟机,并在目标虚拟机创建目标虚拟卷;目标虚拟卷与第一数据备份以及第二数据备份存在映射关系;
所述容灾站点还用于指示所述目标虚拟机向所述目标虚拟卷发送读/写请求,以下发所述读/写请求至所述第一数据备份与第二数据备份中的至少一者,获得读/写结果;
所述容灾站点还用于指示所述目标虚拟卷将读/写结果返回至所述目标虚拟机,以完成所述容灾演练。
又一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现上述的容灾演练方法。
又一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现上述的容灾演练方法。
再一方面,提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质中读取所述计算机指令,处理器执行所述计算机指令,使得所述计算机设备执行上述容灾演练方法。
本申请提供的技术方案可以包括以下有益效果:
在本申请涉及的数据存储系统中,主站点中以镜像方式存储应用数据,容灾站点中采用纠删码方式存储数据备份;当需要进行容灾演练时,容灾站点在目标虚拟机中创建目标虚拟卷;目标虚拟机再向目标虚拟卷发送读/写请求,以下发读/写请求至第一数据备份与第二数据备份中的至少一者,获得读/写结果,也就是在执行写入类型的读写操作时,可以对第二数据备份进行写操作,此时目标虚拟机再获取到读/写结果完成容灾演练过程。上述方案,在数据存储系统中,使用纠删码方式存储数据备份作为主站点故障的数据备份,在容灾演练中则直接在容灾站点中使用纠删码卷和镜像卷组合形式虚拟卷进行读写操作,既保证了容灾节点的数据存储效率,也保证了容灾演练过程中的I/O性能,从而保证了容灾演练效率。
附图说明
为了更清楚地说明本申请具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种数据存储系统的结构示意图。
图2示出了本申请实施例涉及的一种容灾演练过程中的数据映射示意图。
图3是根据一示例性实施例示出的一种容灾演练方法的方法流程图。
图4是根据一示例性实施例示出的一种容灾演练方法的方法流程图。
图5示出了本申请实施例涉及的一种数据写入请求处理流程示意图。
图6示出了本申请实施例涉及的一种数据读取请求的操作流程。
图7示出了本申请实施例涉及的一种容灾演练装置。
图8是根据本申请一示例性实施例提供的一种计算机设备示意图。
具体实施方式
下面将结合附图对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应理解,在本申请的实施例中提到的“指示”可以是直接指示,也可以是间接指示,还可以是表示具有关联关系。举例说明,A指示B,可以表示A直接指示B,例如B可以通过A获取;也可以表示A间接指示B,例如A指示C,B可以通过C获取;还可以表示A和B之间具有关联关系。
在本申请实施例的描述中,术语“对应”可表示两者之间具有直接对应或间接对应的关系,也可以表示两者之间具有关联关系,也可以是指示与被指示、配置与被配置等关系。
本申请实施例中,“预定义”可以通过在设备(例如,包括终端设备和网络设备)中预先保存相应的代码、表格或其他可用于指示相关信息的方式来实现,本申请对于其具体的实现方式不做限定。
在对本申请所示的各个实施例进行说明之前,首先对本申请涉及到的几个概念进行介绍。
1)容灾
容灾系统是指在相隔较远的异地,建立两套或多套功能相同的IT系统,互相之间可以进行健康状态监视和功能切换,当一处系统因意外(如火灾、地震等)停止工作时,整个应用系统可以切换到另一处,使得该系统功能可以继续正常工作。容灾技术是系统的高可用性技术的一个组成部分,容灾系统更加强调处理外界环境对系统的影响,特别是灾难性事件对整个IT节点的影响,提供节点级别的系统恢复功能。
从其对系统的保护程度来分,可以将容灾系统分为以下几种:
数据级容灾是指通过建立异地容灾中心,做数据的远程备份,在灾难发生之后要确保原有的数据不会丢失或者遭到破坏,但在数据级容灾这个级别,发生灾难时应用是会中断的。在数据级容灾方式下,所建立的异地容灾中心可以简单地把它理解成一个远程的数据备份中心。数据级容灾的恢复时间比较长,但是相比其他容灾级别来讲它的费用比较低,而且构建实施也相对简单。
应用级容灾是在数据级容灾的基础之上,在备份站点同样构建一套相同的应用系统,通过同步或异步复制技术,这样可以保证关键应用在允许的时间范围内恢复运行,尽可能减少灾难带来的损失,让用户基本感受不到灾难的发生,这样就使系统所提供的服务是完整的、可靠的和安全的。应用级容灾生产中心和异地灾备中心之间的数据传输是采用异类的广域网传输方式;同时应用级容灾系统需要通过更多的软件来实现,可以使多种应用在灾难发生时可以进行快速切换,确保业务的连续性。
业务级容灾是全业务的灾备,除了必要的IT相关技术,还要求具备全部的基础设施。其大部分内容是非IT系统(如电话、办公地点等),当大灾难发生后,原有的办公场所都会受到破坏,除了数据和应用的恢复,更需要一个备份的工作场所能够正常的开展业务。
2)纠删码
随着云存储所支持的节点规模不断增大,面向的服务不断丰富,云存储系统中大规模节点(包括服务器、链路与交换机)的失效成为常态,数据的可靠性得不到保障,严重阻碍了云存储的发展。如何保证节点在失效的情况下,仍能为用户提供高效、容错的服务,是推广云存储发展必须解决的问题。冗余存储是目前保障数据存储可靠性的主要手段,但是传统的副本备份方式存在占用存储空间大、存储效率低的问题。纠删码以及纠删码技术是一项用来解决通信中信息传输时可靠性问题的方法,在节省物理存储空间,提高容错能力和提高数据的可靠性方面有很大的优势。。
3)镜像卷
镜像卷是具有容错能力的虚拟卷。它通过使用卷的两个副本或镜像复制存储在卷上的数据从而提供数据冗余性。写入到镜像卷上的所有数据都写入到位于独立的物理磁盘上的两个镜像中。如果其中一个物理磁盘出现故障,则该故障磁盘上的数据将不可用,但是系统可以使用未受到影响的磁盘继续操作。
图1是根据一示例性实施例示出的一种数据存储系统的结构示意图。所述数据存储系统中包括主站点110和容灾站点120;所述容灾站点中存储有第一数据备份;所述主站点中存储有应用数据;所述第一数据备份为目标数据以纠删码方式存储的数据备份;所述应用数据为目标数据以镜像方式存储的数据;
所述主站点用于创建虚拟机,并在虚拟机创建虚拟卷;主站点中的虚拟卷数据与第一数据备份存在映射关系;
如图1所示,在该数据存储系统中主站点110部署有虚拟机VM1,该虚拟机VM1使用一个镜像方式的卷StorMirror1作为虚拟机的磁盘Disk1,虚拟机VM1中运行有用户的应用程序,该应用程序的数据被写入到镜像卷StorMirror1中。
如图1所示,在容灾站点中还创建了一个纠删码方式的卷StorEc1(也就是第一数据备份)。主站点的备份软件将虚拟机VM1使用的镜像卷StorMirror1周期性地复制到容灾站点的纠删码卷StorEc1。
请参考图2,其示出了本申请实施例涉及的一种容灾演练过程中的数据映射示意图。如图2所示,在容灾演练时,容灾站点还可以创建一个新的虚拟机VM2作为目标虚拟机,并在虚拟机VM2中创建一个StorEc1_Union1虚拟卷(作为目标虚拟卷),再创建新的镜像卷StorEc1-Mirror1(作为第二数据备份),建立StorEc1_Union1虚拟卷与StorEC1卷(第一数据备份)和StorEc1-Mirror1(第二数据备份)的映射关系。最后用StorEc1_Union1虚拟卷作为虚拟机VM2的磁盘,来启动虚拟机VM2,通过运行虚拟机VM2中的应用程序做容灾演练,验证备份的数据的有效性。
在容灾演练过程中,容灾站点用于创建目标虚拟机,并在目标虚拟机中创建目标虚拟卷;此时目标虚拟机中的目标虚拟卷的数据与第一数据备份以及第二数据备份存在映射关系。
容灾站点还用于指示目标虚拟机向所述目标虚拟卷发送读/写请求,以下发所述读/写请求至所述第一数据备份与第二数据备份中的至少一者,获得读/写结果;
容灾站点还用于指示目标虚拟机将读/写结果返回至目标虚拟机,以完成容灾演练。
此时容灾站点通过目标虚拟机模拟出容灾站点与主站点之间的数据读取或数据写入过程,从而实现对容灾站点中数据备份的验证。
进一步的,在本申请实施例中,直接将容灾演练过程置于容灾站点中执行,此时容灾站点可以基于容灾站点中创建的第二数据备份进行读写操作的测试。而由于此时容灾站点中虚拟机VM2存储的第二数据备份为以镜像方式存储的数据备份,因此在需要进行写入操作时,虚拟机VM2优先对第二数据备份进行写入操作,而后再对第二数据备份进行读取操作,充分利用了镜像卷I/O性能较高的特点,而在进行读取操作时,由于纠删码卷的读性能和镜像卷的读性能接近,因此此时可以同时对纠删码卷和镜像卷都执行读取操作。通过上述方案进行容灾演练时,可以使得容灾演练的效率提高。
可选的,在容灾演练完成后,此时容灾站点可以将虚拟机VM2、以及虚拟机VM2创建的第二数据备份删除,从而避免长时间占用计算和存储资源。
可选的,该主站点110可以实现为终端设备,该容灾站点可以部署于服务器系统(如云服务器),且该终端设备与服务器系统通过有线或无线网络实现通信连接。
可选的,该终端设备可以是具有数据处理功能以及数据存储功能的终端设备,该终端设备可以包括一个终端,也可以包括多个终端,本申请实施例对该终端的数量不设限制。该终端可以是智能手机、平板电脑、笔记本电脑、台式计算机等具有数据处理器以及数据存储组件的终端设备,但不局限于此。
可选的,该云服务器可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础运计算服务的云服务器。
可选的,该云服务器与该终端设备之间可以通过通信网络相连。可选的,该通信网络可以是有线网络或无线网络。
可选的,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网,但也可以是其他任何网络,包括但不限于局域网、城域网、广域网、移动、有限或无线网络、专用网络或者虚拟专用网络的任何组合。在一些实施例中,使用包括超文本标记语言、可扩展标记语言等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层、传输层安全、虚拟专用网络、网际协议安全等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
图3是根据一示例性实施例示出的一种容灾演练方法的方法流程图。该方法由计算机设备执行,所述计算机设备可以是如图1所示的数据存储系统中的容灾站点,该方法包括:
步骤301,在目标虚拟机创建目标虚拟卷。
步骤302,该目标虚拟机向该目标虚拟卷发送读/写请求,以下发所述读/写请求至所述第一数据备份与第二数据备份中的至少一者,获得读/写结果。
步骤303,该目标虚拟卷将该读/写结果返回至该目标虚拟机,以完成该容灾演练。
综上所述,在本申请涉及的数据存储系统中,主站点中以镜像方式存储应用数据,容灾站点中采用纠删码方式存储数据备份;当需要进行容灾演练时,容灾站点在目标虚拟机中创建目标虚拟卷;目标虚拟机再向目标虚拟卷发送读/写请求,以下发读/写请求至第一数据备份与第二数据备份中的至少一者,获得读/写结果,也就是在执行写入类型的读写操作时,可以对第二数据备份进行写操作,此时目标虚拟机再获取到读/写结果完成容灾演练过程。上述方案,在数据存储系统中,使用纠删码方式存储数据备份作为主站点故障的数据备份,在容灾演练中则直接在容灾站点中使用纠删码卷和镜像卷组合形式虚拟卷进行读写操作,既保证了容灾节点的数据存储效率,也保证了容灾演练过程中的I/O性能,从而保证了容灾演练效率。
图4是根据一示例性实施例示出的一种容灾演练方法的方法流程图。该方法由计算机设备执行,所述计算机设备可以是如图1所示的数据存储系统中的容灾站点,该方法包括:
步骤401,在目标虚拟机创建目标虚拟卷。
目标虚拟卷与第一数据备份以及第二数据备份存在映射关系;该第二数据备份为该容灾站点中,目标数据以镜像方式存储的数据备份。
在数据存储系统中,容灾站点可以是正常运行应用程序,并存储相应的数据的计算机设备。
在进行容灾演练时,容灾站点可以在先创建一个虚拟机VM1(该虚拟机可以是目标虚拟机也可以是其他的虚拟机),并在该虚拟机VM1中使用一个镜像方式的卷StorMirror1作为虚拟机VM1的磁盘Disk1,在虚拟机VM1中运行有用户的应用程序,该应用程序的数据被写入到镜像卷StorMirror1中作为目标数据。
此时再在容灾站点中,创建一个纠删码方式的卷StorEc1作为目标数据的数据备份的存储卷(此时该StorEc1也就是第一数据备份)。
可选的,该主站点上还运行有备份软件,该备份软件将虚拟机VM1上的镜像卷StorMirror1(也就是目标数据)周期性复制到容灾站点的纠删码卷StorEc1(即第一数据备份)上。
此时虚拟机VM1即作为实际生产应用过程中的用户所使用的设备,该镜像卷StorMirror1(也就是目标数据)作为用户使用应用程序时所产生的数据,在容灾演练过程中,可以针对该目标数据执行各个操作,以完成容灾演练过程。
而后,数据存储系统中的容灾站点再通过目标虚拟机(例如虚拟机VM2)创建一个StorEc1_Union1虚拟卷(即目标虚拟卷),并根据镜像卷StorMirror1(目标数据)构建一个镜像卷StorEc1-Mirror1作为目标数据的第二备份数据,此时目标虚拟卷与StorEc1卷和StorEc1-Mirror1之间建立有映射关系(例如通过容器的映射接口建立映射关系)。
步骤402,该目标虚拟机向该目标虚拟卷发送读/写请求,下发该读/写请求至该第一数据备份与第二数据备份中的至少一者,获得对应的读/写结果。
在容灾演练的场景下,除了从数据备份上读取数据,以依据备份系统的数据来启动应用系统之外,应用系统会有小写请求到数据存储设备上,因此在本申请实施例中,为了避免容灾设备中纠删码方式存储的第二数据备份的小写性能差对容灾演练的影响,本申请实施例中,通过容灾站点中的虚拟机实现容灾演练过程。
在容灾演练过程中,目标虚拟机向创建的目标虚拟卷(StorEc1_Union1虚拟卷)发送读/写请求,此时该目标虚拟卷会根据该读/写请求返回对应的读/写结果,此时目标虚拟机根据返回的读/写结果即可以确定出此次容灾演练是否成功。
进一步地,目标虚拟机可以根据读/写请求的不同,执行以下不同的操作,从而在保证I/O效率的同时,提高容灾演练的效率。
在一种可能的实现方式中,该写请求包括写入请求;该写结果包括写入结果;此时该目标虚拟机向该目标虚拟卷发送写入请求;
该目标虚拟卷对该写入请求进行克隆操作,获得克隆写入请求;
该目标虚拟卷根据该克隆写入请求,对该第二数据备份进行数据写入操作,获得写入结果。
也就是说,当目标虚拟机下发写入请求时,由于纠删码方式的第一数据备份的写入性能较差,因此目标虚拟机在对写入请求进行克隆得到克隆写入请求后,只发送至第二数据备份,以对第二数据备份进行写入操作,得到写入结果。
请参考图5,其示出了本申请实施例涉及的一种数据写入请求处理流程示意图。如图5所示,出示了虚拟机VM2发送到虚拟卷StorEc1_Union1的写请求的处理流程。卷StorEc1_Union1收到写入请求WriteMsg1,并进行克隆,得到WriteMsg1_clone1(克隆写入请求),并将WriteMsg1_clone1发送到镜像卷StorEc1_Mirror1上。StorEc1_Mirror1卷以镜像冗余的方式保存数据后发回响应WriteMsg1_clone1_Response1(写入结果)。虚拟卷StorEc1_Union1根据收到WriteMsg1_clone1_Response1的结果设置WriteMsg1的响应WriteMsg1_Response1,并发回给虚拟机VM2。从上述处理流程可知,写请求只发生在虚拟卷StorEc1_Union卷和镜像卷StorEc1_Mirror1上,这个写请求性能接近于镜像卷StorEc1_Mirror1性能,不会出现在写请求到纠删码卷的性能问题。
在一种可能的实现方式中,该读请求包括读取请求;该读结果包括读取结果;
此时该目标虚拟机向该目标虚拟卷发送读取请求;
该目标虚拟卷对该读取请求进行克隆操作,获得克隆读取请求;
该目标虚拟卷根据该克隆读取请求,分别对该第一数据备份以及该第二数据备份进行数据读取操作,获得第一候选结果以及第二候选结果;
当该第二候选结果有效时,将该第二候选结果作为该读取结果。
可选的,当该第二候选结果无效时,将该第一候选结果作为该读取结果。
也就是说,当目标虚拟机下发读取请求时,由于纠删码方式存储的第一数据备份与镜像方式存储的第二数据备份的读取速率接近,因此为了提高快速读取结果,目标虚拟机在对该读取请求进行克隆操作,获得克隆读取请求后,将克隆读取请求同时分别发送至第一数据备份以及第二数据备份进行数据读取,从而得到第一候选结果以及第二候选结果。
当第二候选结果有效时,即在镜像方式的第二数据备份中读取到对应的数据时,则将该第二候选结果(也就是读取到的数据)返回至虚拟机;而当第二候选结果无效时,此时说明并未在第二数据备份中读取到对应的数据,说明第二数据备份没有容灾演练产生的新写入数据,那么将第一数据备份进行读取得到的第一候选结果作为最终读取结果返回至虚拟机。
请参考图6,其示出了本申请实施例涉及的一种数据读取请求的操作流程。如图6所示,镜像卷StorEc1_Union1收到读请求ReadMsg1,克隆这个msg,得到2个新请求ReadMsg1_Clone1和ReadMsg1_Clone2(即两个克隆读取请求),并同时将ReadMsg1_clone1发送到镜像卷StorEc1_Mirror1和将ReadMsg1_Clone2发送到纠删码卷StoreEc1上。镜像卷StorEc1_Mirror1收到读请求,如果这个读请求的数据在StorEc1_Mirror1卷上存储,则返回其存储的数据,如果没有,则返回读失败(数据不存在)。纠删码卷StoreEc1收到读请求,如果这个读请求的数据在StorEc1卷上存储,则返回其存储的数据,如果没有,则返回读失败(数据不存在)。卷StorEc1_Union1分别从镜像卷StorEc1_Mirror1和纠删码卷StoreEc1收到响应,如从镜像卷StorEc1_Mirror1的响应ReadMsg1_Clone1_Responese1不是读失败(数据不存在),则用ReadMsg1_Clone1_Responese1设置ReadMsg1_Response1,否则用从纠删码卷的响应ReadMsg1_Clone2_Response1设置ReadMsg1_Response1,最后将ReadMsg1_Response1发回给虚拟机VM2。从上述处理流程可知,读请求同时发送纠删码卷StorEc1卷和镜像卷StorEc1_Mirror1上,两者都执行,并发回响应。纠删码卷读性能和镜像卷接近,因此这个读请求的性能也接近于镜像卷的性能。
步骤403,该目标虚拟卷将读/写结果返回至该目标虚拟机,以完成该容灾演练。
在本申请实施例中,目标虚拟卷可以将多个读/写结果返回至目标虚拟机,例如当执行了写入操作时,该多个读/写结果中包括对第二数据备份(也就是镜像卷)的写入结果;当执行了读取操作时,该多个读/写结果中可以包括读取结果,该读取结果既可能是对第一数据备份的读取结果,也可能是对第二数据备份的读取结果。
步骤404,当检测到完成该容灾演练时,将该目标虚拟机、目标虚拟卷以及第二数据备份删除。
当容灾演练结束,只需删除掉虚拟机VM2,以及联合卷StorEc1_Union1和镜像StorEc_Mirror1。不需要对存储备份数据的纠删码卷StorEc1额外操作。
综上所述,在本申请涉及的数据存储系统中,主站点中以镜像方式存储应用数据,容灾站点中采用纠删码方式存储数据备份;当需要进行容灾演练时,容灾站点在目标虚拟机中创建目标虚拟卷;目标虚拟机再向目标虚拟卷发送读/写请求,以下发读/写请求至第一数据备份与第二数据备份中的至少一者,获得读/写结果,也就是在执行写入类型的读写操作时,可以对第二数据备份进行写操作,此时目标虚拟机再获取到读/写结果完成容灾演练过程。上述方案,在数据存储系统中,使用纠删码方式存储数据备份作为主站点故障的数据备份,在容灾演练中则直接在容灾站点中使用纠删码卷和镜像卷组合形式虚拟卷进行读写操作,既保证了容灾节点的数据存储效率,也保证了容灾演练过程中的I/O性能,从而保证了容灾演练效率。
请参考图7,其示出了本申请实施例涉及的一种容灾演练装置。所述装置包括:
虚拟卷创建模块701,用于在目标虚拟机创建目标虚拟卷;目标虚拟卷与第一数据备份以及第二数据备份存在映射关系;所述第二数据备份为所述容灾站点中,目标数据以镜像方式存储的数据备份;
测试模块702,用于指示所述目标虚拟机向所述目标虚拟卷发送读/写请求,以下发所述读/写请求至所述第一数据备份与第二数据备份中的至少一者,获得读/写结果;
结果获取模块703,用于指示所述目标虚拟卷将所述第二数据备份对应的读/写结果,返回至所述目标虚拟机,以完成所述容灾演练。
在一种可能的实现方式中,所述写请求包括写入请求;所述写结果包括写入结果;
所述测试模块,还用于指示所述目标虚拟机向所述目标虚拟卷发送写入请求;
所述目标虚拟卷对所述写入请求进行克隆操作,获得克隆写入请求;
所述目标虚拟卷根据所述克隆写入请求,对所述第二数据备份进行数据写入操作,获得写入结果。
在一种可能的实现方式中,所述读请求包括读取请求;所述读结果包括读取结果;
所述测试模块,还用于,所述目标虚拟机向所述目标虚拟卷发送读取请求;
所述目标虚拟卷对所述读取请求进行克隆操作,获得克隆读取请求;
所述目标虚拟卷根据所述克隆读取请求,分别对所述第一数据备份以及所述第二数据备份进行数据读取操作,获得第一候选结果以及第二候选结果;
当所述第二候选结果有效时,将所述第二候选结果作为所述读取结果。
在一种可能的实现方式中,所述测试模块,还用于当所述第二候选结果无效时,将所述第一候选结果作为所述读取结果。
在一种可能的实现方式中,所述主站点上运行有备份软件;所述备份软件用于将所述主站点中的应用数据周期性地复制到所述容灾站点的第一数据备份中。
在一种可能的实现方式中,所述装置还包括:
删除模块,用于当检测到完成所述容灾演练时,将所述目标虚拟机、目标虚拟卷以及第二数据备份删除。
综上所述,在本申请涉及的数据存储系统中,主站点中以镜像方式存储应用数据,容灾站点中采用纠删码方式存储数据备份;当需要进行容灾演练时,容灾站点在目标虚拟机中创建目标虚拟卷;目标虚拟机再向目标虚拟卷发送读/写请求,以下发读/写请求至第一数据备份与第二数据备份中的至少一者,获得读/写结果,也就是在执行写入类型的读写操作时,可以对第二数据备份进行写操作,此时目标虚拟机再获取到读/写结果完成容灾演练过程。上述方案,在数据存储系统中,使用纠删码方式存储数据备份作为主站点故障的数据备份,在容灾演练中则直接在容灾站点中使用纠删码卷和镜像卷组合形式虚拟卷进行读写操作,既保证了容灾节点的数据存储效率,也保证了容灾演练过程中的I/O性能,从而保证了容灾演练效率。
请参阅图8,其是根据本申请一示例性实施例提供的一种计算机设备示意图,所述计算机设备包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,以实现上述方法。
其中,处理器可以为中央处理器(Central Processing Unit,CPU)。处理器还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施方式中的方法对应的程序指令/模块。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施方式中的方法。
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
在一示例性实施例中,还提供了一种计算机可读存储介质,用于存储有至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行以实现上述方法中的全部或部分步骤。例如,该计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在一示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图3或图4任一实施例所示方法的全部或部分步骤。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种容灾演练方法,其特征在于,所述方法由数据存储系统中的容灾站点执行;所述数据存储系统中还包括主站点;所述容灾站点中存储有第一数据备份,所述第一数据备份为目标数据以纠删码方式存储的数据备份;
所述方法包括:
在目标虚拟机创建目标虚拟卷;目标虚拟卷与第一数据备份以及第二数据备份存在映射关系;所述第二数据备份为所述容灾站点中以镜像方式存储的数据备份;
所述目标虚拟机向所述目标虚拟卷发送读/写请求,以下发所述读/写请求至所述第一数据备份与第二数据备份中的至少一者,获得读/写结果;
所述目标虚拟卷将所述读/写结果返回至所述目标虚拟机,以完成所述容灾演练。
2.根据权利要求1所述的方法,其特征在于,所述读/写请求包括写入请求;所述读/写结果包括写入结果;
所述目标虚拟机向所述目标虚拟卷发送读/写请求,以下发所述读/写请求至所述第一数据备份与第二数据备份中的至少一者,获得读/写结果,包括:
所述目标虚拟机向所述目标虚拟卷发送写入请求;
所述目标虚拟卷对所述写入请求进行克隆操作,获得克隆写入请求;
所述目标虚拟卷根据所述克隆写入请求,对所述第二数据备份进行数据写入操作,获得写入结果。
3.根据权利要求2所述的方法,其特征在于,所述读/写请求包括读取请求;所述读/写结果包括读取结果;
所述目标虚拟机向所述目标虚拟卷发送读/写请求,以使以下发所述读/写请求至所述第一数据备份与第二数据备份中的至少一者,获得读/写结果,包括:
所述目标虚拟机向所述目标虚拟卷发送读取请求;
所述目标虚拟卷对所述读取请求进行克隆操作,获得克隆读取请求;
所述目标虚拟卷根据所述克隆读取请求,分别对所述第一数据备份以及所述第二数据备份进行数据读取操作,获得第一候选结果以及第二候选结果;
当所述第二候选结果有效时,将所述第二候选结果作为所述读取结果。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当所述第二候选结果无效时,将所述第一候选结果作为所述读取结果。
5.根据权利要求1至4任一所述的方法,其特征在于,所述主站点上运行有备份软件;所述备份软件用于将主站点中的应用数据中的数据周期性地复制到所述容灾站点中的第一数据备份中。
6.根据权利要求1至4任一所述的方法,其特征在于,所述方法还包括;
当检测到完成所述容灾演练后,将所述目标虚拟机、目标虚拟卷以及第二数据备份删除。
7.一种数据存储系统,其特征在于,所述数据存储系统中包括主站点和容灾站点;所述容灾站点中存储有第一数据备份;所述主站点中存储有第二数据备份;所述第一数据备份为目标数据以纠删码方式存储的数据备份;所述第二数据备份为目标数据以镜像方式存储的数据备份;
所述容灾站点用于创建目标虚拟机,并在目标虚拟机创建目标虚拟卷;目标虚拟卷与第一数据备份以及第二数据备份存在映射关系;
所述容灾站点还用于指示所述目标虚拟机向所述目标虚拟卷发送读/写请求,以下发所述读/写请求至所述第一数据备份与第二数据备份中的至少一者,获得读/写结果;
所述容灾站点还用于指示所述目标虚拟卷将读/写结果返回至所述目标虚拟机,以完成所述容灾演练。
8.一种容灾演练装置,其特征在于,所述装置包括:
虚拟卷创建模块,用于在目标虚拟机创建目标虚拟卷;目标虚拟卷与第一数据备份以及第二数据备份存在映射关系;所述第二数据备份为主站点中,目标数据以镜像方式存储的数据备份;
测试模块,用于指示所述目标虚拟机向所述目标虚拟卷发送读/写请求,以下发所述读/写请求至所述第一数据备份与第二数据备份中的至少一者,获得读/写结果;
结果获取模块,用于指示所述目标虚拟卷将所述读/写结果返回至所述目标虚拟机,以完成所述容灾演练。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如权利要求1至6任一所述的容灾演练方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1至6任一所述的容灾演练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211684213.1A CN115858246B (zh) | 2022-12-27 | 2022-12-27 | 一种容灾演练方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211684213.1A CN115858246B (zh) | 2022-12-27 | 2022-12-27 | 一种容灾演练方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115858246A true CN115858246A (zh) | 2023-03-28 |
CN115858246B CN115858246B (zh) | 2023-11-21 |
Family
ID=85655063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211684213.1A Active CN115858246B (zh) | 2022-12-27 | 2022-12-27 | 一种容灾演练方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115858246B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190121889A1 (en) * | 2017-10-19 | 2019-04-25 | Pure Storage, Inc. | Ensuring reproducibility in an artificial intelligence infrastructure |
CN111679939A (zh) * | 2020-06-16 | 2020-09-18 | 江苏超流信息技术有限公司 | 数据备份方法及系统 |
CN112199166A (zh) * | 2020-10-30 | 2021-01-08 | 上海爱数信息技术股份有限公司 | 一种业务应急接管演练系统及其方法 |
CN114780208A (zh) * | 2022-05-05 | 2022-07-22 | 江苏安超云软件有限公司 | 验证多平台虚拟机备份有效性方法、系统、装置及存储介质 |
CN115454333A (zh) * | 2022-08-24 | 2022-12-09 | 浪潮通信技术有限公司 | 云计算平台与存储系统的对接方法及装置 |
-
2022
- 2022-12-27 CN CN202211684213.1A patent/CN115858246B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190121889A1 (en) * | 2017-10-19 | 2019-04-25 | Pure Storage, Inc. | Ensuring reproducibility in an artificial intelligence infrastructure |
CN111679939A (zh) * | 2020-06-16 | 2020-09-18 | 江苏超流信息技术有限公司 | 数据备份方法及系统 |
CN112199166A (zh) * | 2020-10-30 | 2021-01-08 | 上海爱数信息技术股份有限公司 | 一种业务应急接管演练系统及其方法 |
CN114780208A (zh) * | 2022-05-05 | 2022-07-22 | 江苏安超云软件有限公司 | 验证多平台虚拟机备份有效性方法、系统、装置及存储介质 |
CN115454333A (zh) * | 2022-08-24 | 2022-12-09 | 浪潮通信技术有限公司 | 云计算平台与存储系统的对接方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115858246B (zh) | 2023-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11614867B2 (en) | Distributed storage system-based data processing method and storage device | |
US10073747B2 (en) | Reducing recovery time in disaster recovery/replication setup with multitier backend storage | |
US10922303B1 (en) | Early detection of corrupt data partition exports | |
US20130198739A1 (en) | Validation of Business Continuity Preparedness of a Virtual Machine | |
US20150213100A1 (en) | Data synchronization method and system | |
US10404613B1 (en) | Placement of control and data plane resources | |
CN111078667B (zh) | 一种数据迁移的方法以及相关装置 | |
US10452502B2 (en) | Handling node failure in multi-node data storage systems | |
JP2019516171A (ja) | サービス処理方法、デバイス、及びシステム | |
CN106339278A (zh) | 一种网络文件系统的数据备份及恢复方法 | |
KR20150035507A (ko) | 데이터 송신 방법, 데이터 수신 방법, 및 저장 장치 | |
CN113783765B (zh) | 一种实现云内网和云外网互通的方法、系统、设备和介质 | |
CN109947591B (zh) | 数据库异地灾备系统及其部署方法、部署装置 | |
CN111984465A (zh) | 数据库远程备份方法、装置、介质和电子设备 | |
CN106452836B (zh) | 主节点设置方法及装置 | |
CN112261114A (zh) | 一种数据备份系统及方法 | |
CN105740049B (zh) | 一种控制方法及装置 | |
JP2023505879A (ja) | 分散型データベースシステム及びデータ災害バックアップ訓練方法 | |
CN108573049B (zh) | 数据处理方法和分布式存储装置 | |
CN111488247B (zh) | 一种管控节点多次容错的高可用方法及设备 | |
CN113849352A (zh) | 业务数据存储异常处理方法、装置及服务器 | |
CN113849341A (zh) | 一种nas快照的性能优化方法、系统、设备及可读存储介质 | |
CN112732492A (zh) | 一种基于云数据库的提取备份方法和系统 | |
CN115858246B (zh) | 一种容灾演练方法、装置、设备及存储介质 | |
CN113312205A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |