CN115098297A - 一种云原生存储数据卷的一致性快照生成方法和系统 - Google Patents
一种云原生存储数据卷的一致性快照生成方法和系统 Download PDFInfo
- Publication number
- CN115098297A CN115098297A CN202210699610.XA CN202210699610A CN115098297A CN 115098297 A CN115098297 A CN 115098297A CN 202210699610 A CN202210699610 A CN 202210699610A CN 115098297 A CN115098297 A CN 115098297A
- Authority
- CN
- China
- Prior art keywords
- data volume
- consistency
- application
- consistency group
- storage
- 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
Images
Classifications
-
- 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/1448—Management of the data involved in backup or backup restore
-
- 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/1464—Management of the backup or restore process for networked environments
-
- 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/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- 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)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种云原生存储数据卷的一致性快照生成方法和系统。该云原生存储数据卷的一致性快照生成方法包括:响应于监测到创建的一致性快照自定义资源,根据一致性快照自定义资源中记载的数据卷一致性组的标识信息,确定后端存储系统中与数据卷一致性组对应的存储一致性组;对存储一致性组中的所有存储数据卷生成一致性快照。籍此,实现了在容器云平台中对后端存储系统中的多个存储数据卷生成一致性快照,使得这些存储数据卷使用一致性快照进行还原后,所存储的数据和信息具有一致性,部署在容器云平台中与这些存储数据卷绑定的应用能够正常启动和运行。
Description
技术领域
本申请涉及云原生技术领域,特别涉及一种云原生存储数据卷的一致性快照生成方法、系统、计算机可读存储介质和电子设备。
背景技术
快照是存储系统的常见功能,用于对存储数据卷在某个时间点存储的数据和信息进行记录,并在存储数据卷遭受破坏或者出现写入错误时,让存储数据卷还原到该时间点的状态,从而对存储数据卷中存储的数据和信息进行保护。
目前,在容器云平台(比如Kubernetes系统)中只能对单个存储数据卷生成快照,在对多个关联存储数据卷生成快照时,只能分别执行对每个存储数据卷生成快照的操作,由于网络延迟、CPU调度、底层存储的快照实现逻辑等不确定因素,无法保证这些关联存储数据卷生成快照的一致性。
使用生成的快照对这些关联存储数据卷进行还原后,不同存储数据卷中存储的数据和信息不具有一致性,造成部署在容器云平台中与这些关联存储数据卷绑定的应用无法正常启动和运行。
因而,亟需提供一种针对上述现有技术不足的技术方案。
发明内容
本申请的目的在于提供一种云原生存储数据卷的一致性快照生成方法、系统、计算机可读存储介质和电子设备,以解决或缓解上述现有技术中存在的问题。
为了实现上述目的,本申请提供如下技术方案:
本申请提供一种云原生存储数据卷的一致性快照生成方法,包括:响应于监测到创建的一致性快照自定义资源,根据所述一致性快照自定义资源中记载的数据卷一致性组的标识信息,确定后端存储系统中与所述数据卷一致性组对应的存储一致性组;对所述存储一致性组中的所有存储数据卷生成一致性快照。
优选的,所述存储一致性组通过以下步骤生成:根据接收到的数据卷一致性组创建指令,创建所述一致性组自定义资源;所述一致性组自定义资源用于定义所述数据卷一致性组,所述数据卷一致性组包括多个存储数据卷的标识信息;响应于监测到创建的所述一致性组自定义资源,根据所述一致性组自定义资源中记载的所述多个存储数据卷的标识信息,在所述后端存储系统中创建与所述数据卷一致性组对应的存储一致性组。
优选的,所述根据接收到的数据卷一致性组创建指令,创建所述一致性组自定义资源,包括:响应于所述数据卷一致性组创建指令中包含至少一个应用的标识信息,根据所述至少一个应用的标识信息,获取所述至少一个应用对应的存储数据卷声明文件;根据所述至少一个应用对应的存储数据卷声明文件的内容,确定所述至少一个应用对应的所述多个存储数据卷的标识信息;按照所述数据卷一致性组、所述至少一个应用和所述多个存储数据卷的对应关系创建所述一致性组自定义资源;对所述至少一个应用添加一致性注解;所述一致性注解对应于所述数据卷一致性组。
优选的,所述根据接收到的数据卷一致性组创建指令,创建所述一致性组自定义资源,包括:响应于所述数据卷一致性组创建指令中不包含任何一个应用的标识信息,创建新的所述一致性组自定义资源;响应于监测到应用新增一致性注解,获取所述应用对应的存储数据卷声明文件;所述一致性注解对应于所述数据卷一致性组;根据所述应用对应的存储数据卷声明文件的内容,确定所述应用对应的存储数据卷的标识信息;按照所述数据卷一致性组、所述应用和所述存储数据卷的对应关系,将所述应用的标识信息和所述存储数据卷的标识信息归入所述一致性组自定义资源中。
优选的,还包括:响应于监测到所述数据卷一致性组对应的应用所对应的存储数据卷声明文件发生变化,根据变化后的所述存储数据卷声明文件的内容,对所述一致性组自定义资源的内容进行更新。
优选的,还包括:响应于监测到所述数据卷一致性组对应的应用的所述一致性注解被移除,在所述一致性组自定义资源中删除所述应用的标识信息和所述应用对应的存储数据卷的标识信息。
优选的,还包括:响应于监测到组外应用新增一致性注解,获取所述组外应用对应的存储数据卷声明文件;所述组外应用为所述数据卷一致性组对应的应用以外的其他应用;根据所述组外应用对应的存储数据卷声明文件的内容,确定所述组外应用对应的存储数据卷的标识信息;将所述组外应用的标识信息和所述存储数据卷的标识信息归入所述一致性组自定义资源中。
本申请实施例还提供一种云原生存储数据卷的一致性快照生成系统,包括:监听判断单元,配置为响应于监测到创建的一致性快照自定义资源,根据所述一致性快照自定义资源中记载的数据卷一致性组的标识信息,确定后端存储系统中与所述数据卷一致性组对应的存储一致性组;快照生成单元,配置为对所述存储一致性组中的所有存储数据卷生成一致性快照。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序为如上任一所述的云原生存储数据卷的一致性快照生成方法。
本申请实施例还提供一种电子设备,包括:存储器、处理器、以及存储在所述存储器中并可在所述处理器上运行的程序,所述处理器执行所述程序时实现如上任一所述的云原生存储数据卷的一致性快照生成方法。
有益效果:
本申请提供的云原生存储数据卷的一致性快照生成技术中,对一致性快照自定义资源的创建进行监测,当监测到创建一致性快照自定义资源时,根据创建的一致性快照自定义资源中记载的数据卷一致性组的信息,确定后端存储系统中与数据卷一致性组对应的存储一致性组,进而,对存储一致性组中的所有存储数据卷生成一致性快照。籍此,实现了在容器云平台中对后端存储系统中的多个存储数据卷生成一致性快照,使得这些存储数据卷在还原一致性快照后,所存储的数据和信息具有一致性,部署在容器云平台中与这些存储数据卷绑定的应用能够正常启动和运行。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。其中:
图1为现有技术实施例提供的单个应用与多个存储数据卷的对应关系示意图;
图2为根据本申请的一些实施例提供的一种云原生存储数据卷的一致性快照生成方法的流程示意图;
图3为根据本申请的一些实施例提供的一种云原生存储数据卷的一致性快照生成方法的逻辑示意图;
图4为根据本申请的一些实施例提供的一种云原生存储数据卷的一致性快照生成方法的细节示意图;
图5为根据本申请的一些实施例提供的一种云原生存储数据卷的一致性快照生成系统的结构示意图;
图6为根据本申请的一些实施例提供的电子设备的结构示意图;
图7为根据本申请的一些实施例提供的电子设备的硬件结构图。
具体实施方式
下面将参考附图并结合实施例来详细说明本申请。各个示例通过本申请的解释的方式提供而非限制本申请。实际上,本领域的技术人员将清楚,在不脱离本申请的范围或精神的情况下,可在本申请中进行修改和变型。例如,示为或描述为一个实施例的一部分的特征可用于另一个实施例,以产生又一个实施例。因此,所期望的是,本申请包含归入所附权利要求及其等同物的范围内的此类修改和变型。
在容器云平台(比如Kubernetes系统)中,使用后端存储系统中的存储数据卷来对应用运行过程中产生的数据和信息进行持久化存储。
第一种可能的情况是,使用单个存储数据卷对应用运行过程中产生的数据和信息进行持久化存储,让该应用与某个存储数据卷声明文件(比如PV/PVC文件)相对应,并通过容器云平台中的容器存储接口插件(CSI插件)让该应用与后端存储系统中的某个存储数据卷进行绑定。该应用运行过程中产生的所有数据和信息都被存储在绑定的存储数据卷中。
第二种可能的情况是,如图1所示,使用多个存储数据卷对应用运行过程中产生的数据和信息进行持久化存储,让该应用与多个存储数据卷声明文件(比如PV/PVC文件)相对应,并通过容器云平台中的容器存储接口插件(CSI插件)让该应用与后端存储系统中的多个存储数据卷进行绑定。比如,数据库应用需要将数据和日志分别存储在两个存储数据卷中,数据库应用同时与两个存储数据卷进行绑定,当有新的数据存入时,数据库应用会将该数据存入第一个存储数据卷,并生成存入该数据的日志,存入第二个存储数据卷中。其中,分别存入两个存储数据卷的数据、日志在内容上存在关联性,在逻辑上需要保持一致性。
快照是存储系统的常见功能,用于对存储数据卷在某个时间点存储的数据和信息进行记录,并在存储数据卷遭受破坏或者出现写入错误时,让存储数据卷还原到该时间点的状态,从而对存储数据卷中存储的数据和信息进行保护。
目前,在容器云平台(比如Kubernetes系统)中只能对单个存储数据卷生成快照,针对上述第二种可能的情况,在对多个关联存储数据卷生成快照时,只能分别执行对每个存储数据卷生成快照的操作,由于网络延迟、CPU调度、底层存储的快照实现逻辑等不确定因素,无法保证这些关联存储数据卷生成快照的一致性。
使用生成的快照对这些关联存储数据卷进行还原后,不同存储数据卷中存储的数据和信息不具有一致性,造成部署在容器云平台中与这些关联存储数据卷绑定的应用无法正常启动和运行。
相关技术中,目前主流的存储系统通过为关联存储数据卷提供一致性组,即将位于同一个存储系统中的多个存储数据卷归入一个存储一致性组中,对同一个存储一致性组中的所有存储数据卷生成一致性快照(或者还原一致性快照),来确保关联存储数据卷生成快照(或还原快照)的一致性。
但在云原生场景下,应用管理员没有后端存储系统的访问权限,不能直接访问后端存储系统,将多个存储数据卷归入一个存储一致性组中,进而生成或者还原一致性快照。
基于此,为了解决云原生场景下,现有的存储系统无法保证多个关联存储数据卷生成快照的一致性问题,申请人引入了一致性组控制器和一致性组自定义资源定义文件(Custom Resource Definition,简称“一致性组CRD”)、一致性快照自定义资源定义文件(简称“一致性快照CRD”)、一致性还原自定义资源定义文件(简称“一致性还原CRD”),由一致性组控制器根据一致性组CRD中的内容为多个关联存储数据卷创建对应的一致性组自定义资源(Custom Resource,简称“一致性组CR”),从而将多个关联存储数据卷绑定为一个数据卷一致性组,并在容器云平台对应的后端存储系统创建对应的存储一致性组。
在生成一致性快照或者还原一致性快照时,只需要在容器云平台中根据一致性快照CRD创建一致性快照自定义资源(简称“一致性快照CR”),或者,一致性还原CRD对应的一致性还原自定义资源(简称“一致性还原CR”),由一致性组控制器根据一致性快照CR或者一致性还原CR的内容,调用后端存储系统提供的API接口为存储一致性组中的多个关联存数据卷生成快照,或者,进行快照还原。籍此,在实现应用的存储数据卷生成一致性快照的同时,有效确保存储一致性组中的多个关联存储数据卷中存储的数据和信息的一致性,使与多个关联存储数据卷绑定的应用在使用一致性快照进行还原后能够正常启动和运行。
示例性方法
如图2、图3所示,该云原生存储数据卷的一致性快照生成方法包括:
步骤S101、响应于监测到创建的一致性快照自定义资源,根据一致性快照自定义资源中记载的数据卷一致性组的标识信息,确定后端存储系统中与数据卷一致性组对应的存储一致性组。
步骤S102、对存储一致性组中的所有存储数据卷生成一致性快照。
基于前述说明可知,一致性组自定义资源用于将多个存储数据卷绑定为一个数据卷一致性组。简单来说,只要将多个存储数据卷的标识信息(比如名称或者编号)归入同一个一致性组自定义资源中,就将这些存储数据卷绑定为一个数据卷一致性组。换句话说,一致性组自定义资源用于定义数据卷一致性组,数据卷一致性组包括多个存储数据卷的标识信息。
一致性组控制器根据一致性组自定义资源记载的内容,通过访问后端存储系统提供的API接口在后端存储系统中创建对应的存储一致性组,并将一致性组自定义资源中涉及的所有存储数据卷添加至该存储一致性组。
相应地,为了创建存储一致性组,应用管理员只需向容器云平台中输入数据卷一致性组创建指令,由一致性组控制器根据接收到的数据卷一致性组创建指令,创建一致性组自定义资源。
此外,一致性组控制器还负责对容器云平台中的一致性组自定义资源的变化情况进行监测。当监测到创建的一致性组自定义资源时,根据一致性组自定义资源中记载的多个存储数据卷的标识信息,在后端存储系统中创建与数据卷一致性组对应的存储一致性组。
需要说明的是,本申请实施例允许应用管理员根据使用需求输入不同格式的数据卷一致性组创建指令。
在一具体的例子中,在根据接收到的数据卷一致性组创建指令,创建一致性组自定义资源时,当数据卷一致性组创建指令中不包含任何一个应用的标识信息时,创建新的一致性组自定义资源;当监测到应用新增一致性注解时,获取该应用对应的存储数据卷声明文件;接着,根据应用对应的存储数据卷声明文件的内容,确定应用对应的存储数据卷的标识信息;最后,按照数据卷一致性组、应用和存储数据卷的对应关系,将应用的标识信息和存储数据卷的标识信息归入该一致性组自定义资源中。
其中,一致性注解对应于数据卷一致性组,应用管理员为某个应用添加一致性注解,即将该应用与一致性注解对应的数据卷一致性组进行了绑定,该应用对应的所有存储数据卷将被归入一致性注解对应的数据卷一致性组。一致性注解具体可以是数据卷一致性组对应的一致性组自定义资源的名称。
基于此,在本实施例中,允许应用管理员输入不包含任何一个应用的标识信息的数据卷一致性组创建指令,一致性组控制器根据一致性组自定义资源定义文件中的内容创建新的一致性组自定义资源,一致性组自定义资源中没有任何存储数据卷的标识信息。当应用管理员要将某个应用对应的所有存储数据卷归入该数据卷一致性组,只需为该应用添加该数据卷一致性组对应的一致性注解。
一致性组控制器通过容器云平台的统一访问接口(比如Kubernetes系统的API-Server组件)对每个应用的注解变化情况进行监测,当监测到某个应用新增一致性注解时,即通过容器云平台的统一访问接口访问资源存储数据库(比如ETCD)获取该应用对应的所有存储数据卷声明文件(比如PV/PVC文件),存储数据卷声明文件中记载了应用对应的存储数据卷的标识信息,将应用对应的存储数据卷的标识信息归入一致性组自定义资源即可将该应用对应的所有存储数据卷归入该数据卷一致性组。
进一步地,本实施例允许将多个应用对应的所有存储数据卷归入同一个数据卷一致性组,应用管理员只需为多个应用添加一致性注解即可。为了便于对一致性组自定义资源中的存储数据卷的标识信息进行管理,本实施例还可以将应用的标识信息与存储数据卷的标识信息一并归入一致性组自定义资源中,并且按照数据卷一致性组、应用和存储数据卷的对应关系,分层级进行存储。
在另一具体的例子中,在根据接收到的数据卷一致性组创建指令,创建一致性组自定义资源时,当数据卷一致性组创建指令中包含至少一个应用的标识信息时,根据该至少一个应用的标识信息,获取该至少一个应用对应的存储数据卷声明文件;然后,根据该至少一个应用对应的存储数据卷声明文件的内容,确定该至少一个应用对应的多个存储数据卷的标识信息;接着,按照数据卷一致性组、该至少一个应用和多个存储数据卷的对应关系创建一致性组自定义资源;最后,对该至少一个应用添加一致性注解。
和上一个实施例不同的是,本实施例在创建数据卷一致性组时,应用管理员在输入数据卷一致性组创建指令时,将应用的标识信息和其他指令参数一并输入,从而指定了将该应用对应的所有存储数据卷归入同一个数据卷一致性组。因此,一致性组控制器根据应用的标识信息通过容器云平台的统一访问接口访问资源存储数据库获取该应用对应的所有存储数据卷声明文件,存储数据卷声明文件中记载了应用对应的存储数据卷的标识信息。一致性组控制器将该应用对应的所有存储数据卷归入一个数据卷一致性组,并根据一致性组自定义资源定义文件中的内容为该数据卷一致性组创建对应的一致性组自定义资源,其中包括了该应用对应的所有存储数据卷的标识信息。此外,由于该应用对应的所有存储数据卷的标识信息都已被归入该一致性组自定义资源,且在本实施中,应用管理员仍可以采用为应用添加一致性注解的方式,将应用对应的所有存储数据卷归入现有的数据卷一致性组,为了便于统一管理,一致性组控制器还需要对该应用添加一致性注解。
进一步地,本实施例允许在创建一致性组自定义资源时,指定将多个应用对应的所有存储数据卷归入同一个数据卷一致性组,应用管理员只需在输入数据卷一致性组创建指令时,将多个应用的标识信息和其他指令参数一并输入即可。类似地,为了便于对一致性组自定义资源中的存储数据卷的标识信息进行管理,本实施例还可以将应用的标识信息与存储数据卷的标识信息一并归入一致性组自定义资源中,并且按照数据卷一致性组、应用和存储数据卷的对应关系,分层级进行存储。
可以理解,在数据卷一致性组创建完毕后,应用管理员仍可以采用为应用添加一致性注解的方式,将应用对应的所有存储数据卷归入现有的数据卷一致性组,通过一致性组控制器对每个应用新增的注解进行监听,将标注有一致性注解的应用的标识信息、该应用对应的存储数据卷的标识信息归入对应的一致性组自定义资源中,即将该应用对应的存储数据卷归入对应的数据卷一致性组。
为了便于说明,针对前述一个数据卷一致性组包括多个应用对应的所有存储数据卷的情况,将这些应用定义为应用一致性组,与数据卷一致性组相对应,每个应用一致性组包括多个应用,这些应用对应的所有存储数据卷属于对应的数据卷一致性组。
本申请中,在完成数据卷一致性组的创建后,还需要对应用一致性组中的应用的变更事件进行监听,及时对一致性组自定义资源进行变更。在此,变更事件包括:应用一致性组中的应用发生了变化(比如应用一致性组中的应用移除了一致性注解、应用一致性组以外的其它应用增加了一致性注解等),应用一致性组中的应用对应的存储数据卷发生了变化(具体体现在应用对应的存储数据卷声明文件发生变化)。
在一具体应用场景中,当应用一致性组中的应用对应的数据卷发生了变化时,即当监测到数据卷一致性组对应的应用所对应的存储数据卷声明文件发生变化时,根据变化后的存储数据卷声明文件的内容,对该一致性组自定义资源的内容进行更新。也就是说,一致性组控制器通过容器云平台的统一访问接口对现有应用一致性组中的每个应用对应的存储数据卷声明文件进行监听,根据变化后的存储数据卷声明文件的内容,确定对应的存储数据卷,在一致性组自定义资源中更新应用对应的存储数据卷的标识信息。
在另一具体的应用场景中,当应用一致性组中的应用移除了一致性注解时,即当监测到数据卷一致性组对应的应用的一致性注解被移除时,在一致性组自定义资源中删除应用的标识信息和应用对应的存储数据卷的标识信息。也就是说,一致性组控制器通过容器云平台的统一访问接口对现有应用一致性组中的每个应用的注解变化进行监听,当监听到应用的一致性注解被移除后,在一致性组自定义资源中删除该应用的标识信息和该应用对应的存储数据卷的标识信息。
在再一具体的应用场景中,当应用一致性组以外的其它应用增加了一致性注解时,即当监测到组外应用新增一致性注解时,获取组外应用对应的存储数据卷声明文件,并根据该组外应用对应的存储数据卷声明文件的内容,确定该组外应用对应的存储数据卷的标识信息;最后,将组外应用的标识信息和存储数据卷的标识信息归入一致性组自定义资源中。其中,组外应用为数据卷一致性组对应的应用以外的其他应用。也就是说,一致性组控制器通过容器云平台的统一访问接口对应用一致性组以外的其它每个应用新增的注解进行监听,当发现某个应用新增了一致性注解(比如说是某个一致性组自定义资源的名称),将该应用的标识信息和该应用对应的存储数据卷的标识信息归入对应的一致性组自定义资源中。
在上述多个实施例中,当一致性组控制器监测到现有的一致性组自定义资源的内容更新时,根据更新后的一致性组自定义资源中记载的多个存储数据卷的标识信息,通过访问后端存储系统提供的API接口在后端存储系统中找到对应的存储一致性组,并对该存储一致性组包括的存储数据卷进行调整。
由此,应用管理员可以通过创建一致性组自定义资源和添加一致性注解的方式,在容器云平台和后端存储系统中创建和管理数据卷一致性组和存储一致性组,以便对多个存储数据卷进行统一管理。
应当理解,本申请实施例中创建的数据卷一致性组和存储一致性组都是用于生成一致性快照。
在生成一致性快照(或者还原一致性快照)时,应用管理员在容器云平台中根据一致性快照自定义资源定义文件创建一致性快照自定义资源(或者根据一致性还原自定义资源定义文件创建一致性还原自定义资源),一致性快照自定义资源(或者一致性还原自定义资源)中记载了要生成一致性快照(或者要还原一致性快照)的存储一致性组对应的数据卷一致性组的标识信息(比如名称或者编号)。
当一致性组控制器监测到创建的一致性快照自定义资源(或者一致性还原自定义资源),通过对一致性快照自定义资源(或者一致性还原自定义资源)的内容进行解析,获取数据卷一致性组的标识信息,通过访问后端存储系统提供的API接口在后端存储系统中找到对应的存储一致性组,并使用后端存储系统提供的生成一致性快照(或者还原一致性快照)功能对该存储一致性组中的所有存储数据卷生成一致性快照(或者还原一致性快照)。
此外,本申请实施例对容器云平台原有的快照系统进行了保留,仍可以使用原有的快照体系生成和还原普通快照。
如图4所示,本申请中的一致性组控制器包括一致性组生成模块、监听模块、一致性组处理模块和一致性快照处理模块。其中,一致性组生成模块用于接收创建数据卷一致性组的指令,来创建一致性组自定义资源,如果创建数据卷一致性组的指令中包括应用的标识信息,则直接完成数据卷一致性组和一致性组自定义资源的快速创建,并为该应用添加对应的一致性注解。如果创建数据卷一致性组的指令中不包括应用的标识信息,则创建一致性组自定义资源来创建一个新的数据卷一致性组和一致性组自定义资源。
监听模块用于对容器云平台中的所有应用的注解变化和应用一致性组中的每个应用对应的存储数据卷声明文件变化进行监听。如果监听到应用新增了一致性注解,则按照一致性注解将该应用的标识信息和对应的存储数据卷的标识信息归入对应一致性组自定义资源;如果监听到应用失去了一致性注解,则在对应的一致性组自定义资源中删除该应用的标识信息和该应用对应的存储数据卷的标识信息;如果监听到应用对应的存储数据卷声明文件发生变化,则需要根据变化后的存储数据卷声明文件的内容,确定对应的存储数据卷,在一致性组自定义资源中更新应用对应的存储数据卷的标识信息。
一致性组处理模块用于对一致性组自定义资源进行监测,当监测到新的一致性组自定义资源时,则根据一致性组自定义资源的内容,通过访问后端存储系统提供的API接口在后端存储系统中创建存储一致性组,并将一致性组自定义资源中涉及的所有存储数据卷添加至该存储一致性组;当监测到现有一致性组自定义资源发生变化时,则根据变化后的一致性组自定义资源的内容,通过访问后端存储系统提供的API接口在后端存储系统中找到对应的存储一致性组,并对现有存储一致性组包括的存储数据卷进行调整。
一致性快照处理模块用于对一致性快照自定义资源(或者一致性还原自定义资源)进行监测,当监测到新的一致性快照自定义资源(或者一致性还原自定义资源)时,则根据一致性快照自定义资源(或者一致性还原自定义资源)中数据卷一致性组的标识信息,通过访问后端存储系统提供的API接口在后端存储系统中找到对应的存储一致性组,并对存储一致性组中的所有存储数据卷生成一致性快照(或者还原一致性快照)。
本申请中,一致性组控制器中的一致性组生成模块、监听模块、一致性组处理模块和一致性快照处理模块分别负责一致性组自定义资源的创建、现有一致性组自定义资源的归入、存储一致性组的创建和加入、一致性快照的生成和还原,在功能上相互独立,耦合性低。
示例性系统
图5为根据本申请的一些实施例提供的一种云原生存储数据卷的一致性快照生成系统的结构示意图;如图5所示,该云原生存储数据卷的一致性快照生成系统包括:监听判断单元,配置为响应于监测到创建的一致性快照自定义资源,根据一致性快照自定义资源中记载的数据卷一致性组的标识信息,确定后端存储系统中与数据卷一致性组对应的存储一致性组;快照生成单元,配置为对存储一致性组中的所有存储数据卷生成一致性快照。
本申请提供的云原生存储数据卷的一致性快照生成系统能够实现上述任一的云原生村数据卷的一致性快照生成方法的步骤、流程,并达到相同的技术效果,在此不再一一赘述。
示例性设备
图6为根据本申请的一些实施例提供的电子设备的结构示意图;如图6所示,该电子设备包括:
一个或多个处理器701;
计算机可读介质,可以配置为存储一个或多个程序602,一个或多个处理器601执行一个或多个程序602时,实现如下步骤:响应于监测到创建的一致性快照自定义资源,根据一致性快照自定义资源中记载的数据卷一致性组的标识信息,确定后端存储系统中与数据卷一致性组对应的存储一致性组;对存储一致性组中的所有存储数据卷生成一致性快照。
图7为根据本申请的一些实施例提供的电子设备的硬件结构;如图7所示,该电子设备的硬件结构可以包括:处理器701、通信接口702、计算机可读介质703和通信总线704。
其中,处理器701、通信接口702、计算机可读存储介质703通过通信总线704完成相互间的通信。
可选地,通信接口702可以为通信模块的接口,如GSM模块的接口。
其中,处理器701具体可以配置为:响应于监测到创建的一致性快照自定义资源,根据一致性快照自定义资源中记载的数据卷一致性组的标识信息,确定后端存储系统中与数据卷一致性组对应的存储一致性组;对存储一致性组中的所有存储数据卷生成一致性快照。
处理器701可以是通用处理器,包括中央处理器(central processing unit,简称CPU)、网络处理器(Network Processor,简称NP)等,还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如:iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如:iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其它具有数据交互功能的电子装置。
需要指出,根据实施的需要,可将本申请实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可以将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本申请实施例的目的。
上述根据本申请实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器存储介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的云原生存储数据卷的一致性快照生成方法。此外,当通用计算机访问用于实现在此示出的方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的方法的专用计算机。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和涉及约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
以上所描述得设备及系统实施例仅仅是示意性的,其中作为分离不见说明的单元可以使或者也可以不是物理上分开的,作为单元提示的不见可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的优选实施例,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种云原生存储数据卷的一致性快照生成方法,其特征在于,包括:
响应于监测到创建的一致性快照自定义资源,根据所述一致性快照自定义资源中记载的数据卷一致性组的标识信息,确定后端存储系统中与所述数据卷一致性组对应的存储一致性组;
对所述存储一致性组中的所有存储数据卷生成一致性快照。
2.根据权利要求1所述的云原生存储数据卷的一致性快照生成方法,其特征在于,所述存储一致性组通过以下步骤生成:
根据接收到的数据卷一致性组创建指令,创建所述一致性组自定义资源;所述一致性组自定义资源用于定义所述数据卷一致性组,所述数据卷一致性组包括多个存储数据卷的标识信息;
响应于监测到创建的所述一致性组自定义资源,根据所述一致性组自定义资源中记载的所述多个存储数据卷的标识信息,在所述后端存储系统中创建与所述数据卷一致性组对应的存储一致性组。
3.根据权利要求2所述的云原生存储数据卷的一致性快照生成方法,其特征在于,所述根据接收到的数据卷一致性组创建指令,创建所述一致性组自定义资源,包括:
响应于所述数据卷一致性组创建指令中包含至少一个应用的标识信息,根据所述至少一个应用的标识信息,获取所述至少一个应用对应的存储数据卷声明文件;
根据所述至少一个应用对应的存储数据卷声明文件的内容,确定所述至少一个应用对应的所述多个存储数据卷的标识信息;
按照所述数据卷一致性组、所述至少一个应用和所述多个存储数据卷的对应关系创建所述一致性组自定义资源;
对所述至少一个应用添加一致性注解;所述一致性注解对应于所述数据卷一致性组。
4.根据权利要求2所述的云原生存储数据卷的一致性快照生成方法,其特征在于,所述根据接收到的数据卷一致性组创建指令,创建所述一致性组自定义资源,包括:
响应于所述数据卷一致性组创建指令中不包含任何一个应用的标识信息,创建新的所述一致性组自定义资源;
响应于监测到应用新增一致性注解,获取所述应用对应的存储数据卷声明文件;所述一致性注解对应于所述数据卷一致性组;
根据所述应用对应的存储数据卷声明文件的内容,确定所述应用对应的存储数据卷的标识信息;
按照所述数据卷一致性组、所述应用和所述存储数据卷的对应关系,将所述应用的标识信息和所述存储数据卷的标识信息归入所述一致性组自定义资源中。
5.根据权利要求3或4所述的云原生存储数据卷的一致性快照生成方法,其特征在于,还包括:
响应于监测到所述数据卷一致性组对应的应用所对应的存储数据卷声明文件发生变化,根据变化后的所述存储数据卷声明文件的内容,对所述一致性组自定义资源的内容进行更新。
6.根据权利要求3或4所述的云原生存储数据卷的一致性快照生成方法,其特征在于,还包括:
响应于监测到所述数据卷一致性组对应的应用的所述一致性注解被移除,在所述一致性组自定义资源中删除所述应用的标识信息和所述应用对应的存储数据卷的标识信息。
7.根据权利要求3或4所述的云原生存储数据卷的一致性快照生成方法,其特征在于,还包括:
响应于监测到组外应用新增一致性注解,获取所述组外应用对应的存储数据卷声明文件;所述组外应用为所述数据卷一致性组对应的应用以外的其他应用;
根据所述组外应用对应的存储数据卷声明文件的内容,确定所述组外应用对应的存储数据卷的标识信息;
将所述组外应用的标识信息和所述存储数据卷的标识信息归入所述一致性组自定义资源中。
8.一种云原生存储数据卷的一致性快照生成系统,其特征在于,包括:
监听判断单元,配置为响应于监测到创建的一致性快照自定义资源,根据所述一致性快照自定义资源中记载的数据卷一致性组的标识信息,确定后端存储系统中与所述数据卷一致性组对应的存储一致性组;
快照生成单元,配置为对所述存储一致性组中的所有存储数据卷生成一致性快照。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序为如权利要求1-7任一所述的云原生存储数据卷的一致性快照生成方法。
10.一种电子设备,其特征在于,包括:存储器、处理器、以及存储在所述存储器中并可在所述处理器上运行的程序,所述处理器执行所述程序时实现如权利要求1-7任一所述的云原生存储数据卷的一致性快照生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210699610.XA CN115098297B (zh) | 2022-06-20 | 2022-06-20 | 一种云原生存储数据卷的一致性快照生成方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210699610.XA CN115098297B (zh) | 2022-06-20 | 2022-06-20 | 一种云原生存储数据卷的一致性快照生成方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115098297A true CN115098297A (zh) | 2022-09-23 |
CN115098297B CN115098297B (zh) | 2023-07-25 |
Family
ID=83293242
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210699610.XA Active CN115098297B (zh) | 2022-06-20 | 2022-06-20 | 一种云原生存储数据卷的一致性快照生成方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115098297B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116166471A (zh) * | 2023-01-04 | 2023-05-26 | 安超云软件有限公司 | 快照回滚方法、容器化云平台及计算机可读介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090254693A1 (en) * | 2008-04-04 | 2009-10-08 | Vmware, Inc. | Method and system for generating consistent snapshots for a group of data objects |
CN109298975A (zh) * | 2018-10-12 | 2019-02-01 | 郑州云海信息技术有限公司 | 一种数据处理方法及装置 |
CN110413444A (zh) * | 2018-04-27 | 2019-11-05 | 伊姆西Ip控股有限责任公司 | 实现存储卷的一致性组的快照集 |
CN114138182A (zh) * | 2021-10-27 | 2022-03-04 | 济南浪潮数据技术有限公司 | 一种分布式云硬盘的跨存储在线克隆方法、系统及装置 |
CN114237498A (zh) * | 2021-12-02 | 2022-03-25 | 上海道客网络科技有限公司 | 一种云原生存储数据卷的快照生成方法与系统 |
-
2022
- 2022-06-20 CN CN202210699610.XA patent/CN115098297B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090254693A1 (en) * | 2008-04-04 | 2009-10-08 | Vmware, Inc. | Method and system for generating consistent snapshots for a group of data objects |
CN110413444A (zh) * | 2018-04-27 | 2019-11-05 | 伊姆西Ip控股有限责任公司 | 实现存储卷的一致性组的快照集 |
CN109298975A (zh) * | 2018-10-12 | 2019-02-01 | 郑州云海信息技术有限公司 | 一种数据处理方法及装置 |
CN114138182A (zh) * | 2021-10-27 | 2022-03-04 | 济南浪潮数据技术有限公司 | 一种分布式云硬盘的跨存储在线克隆方法、系统及装置 |
CN114237498A (zh) * | 2021-12-02 | 2022-03-25 | 上海道客网络科技有限公司 | 一种云原生存储数据卷的快照生成方法与系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116166471A (zh) * | 2023-01-04 | 2023-05-26 | 安超云软件有限公司 | 快照回滚方法、容器化云平台及计算机可读介质 |
CN116166471B (zh) * | 2023-01-04 | 2024-03-22 | 安超云软件有限公司 | 快照回滚方法、容器化云平台及计算机可读介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115098297B (zh) | 2023-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107644075B (zh) | 收集页面信息的方法和装置 | |
CN110688096B (zh) | 包含插件的应用程序的构建方法、装置、介质及电子设备 | |
US20170085653A1 (en) | Method, device and system for message distribution | |
CN109522043B (zh) | 一种配置数据的管理方法、装置及存储介质 | |
CN110704833A (zh) | 数据权限配置方法、设备、电子设备及存储介质 | |
WO2023160327A1 (en) | Container image management | |
US20170249143A1 (en) | Detecting open source components built into mobile applications | |
CN111522574B (zh) | 差分包生成方法及相关设备 | |
CN116204438A (zh) | 测试用例生成方法、自动化测试方法和相关装置 | |
CN114237498A (zh) | 一种云原生存储数据卷的快照生成方法与系统 | |
WO2021086693A1 (en) | Management of multiple physical function non-volatile memory devices | |
CN115098297B (zh) | 一种云原生存储数据卷的一致性快照生成方法和系统 | |
CN111562929A (zh) | 补丁文件的生成方法、装置、设备及存储介质 | |
CN114329366A (zh) | 网盘文件控制方法、装置、网盘及存储介质 | |
CN111046393B (zh) | 漏洞信息上传方法、装置、终端设备及存储介质 | |
CN110858211B (zh) | 数据存储方法、装置及系统、存储介质 | |
CN111124883A (zh) | 一种基于树形表格的测试用例库引入方法、系统及设备 | |
CN115098301A (zh) | 一种云原生场景下有状态应用的快照生成方法和系统 | |
CN114157662A (zh) | 一种云平台参数适配方法、装置、终端设备及储存介质 | |
CN113810477A (zh) | 一种文件上传方法、装置、设备及存储介质 | |
CN108363614B (zh) | 一种应用的业务模块管理方法、装置及服务器 | |
CN112036133A (zh) | 一种文件保存方法、装置、电子设备及存储介质 | |
CN110597517A (zh) | 动态解析mat文件的方法及装置 | |
US9697018B2 (en) | Synthesizing inputs to preserve functionality | |
CN111209056B (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 |