一种数据存储方法、装置、设备和存储介质与流程

未命名 08-12 阅读:182 评论:0


1.本发明实施例涉及计算机技术,尤其涉及一种数据存储方法、装置、设备和存储介质。


背景技术:

2.随着计算机技术和云原生技术的快速发展,可以利用容器编排系统对云平台中容器化的应用进行全生命周期的高效编排和管理。例如,利用kubernetes系统管理云平台中多个节点服务器上容器化后的应用,使得部署容器化后的应用更加简单高效。
3.目前,在部署容器化的应用时,通常是直接将整块磁盘或者磁盘分区作为应用的存储磁盘,从而实现应用数据的本地存储。
4.然而,在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
5.现有的本地存储方式中,应用的本地存储容量受限于单个磁盘的总存储容量,也就是说,应用的本地存储容量不能超过单个磁盘的总存储容量,从而导致无法满足日益增加的业务需求,降低了存储的灵活性。


技术实现要素:

6.本发明实施例提供了一种数据存储方法、装置、设备和存储介质,以实现数据的持久化存储,并且存储容量更易控制,不受限于单个磁盘的总存储容量,从而提高了存储的灵活性。
7.第一方面,本发明实施例提供了一种数据存储方法,应用于容器编排系统中的目标节点服务器,包括:
8.获取容器化的第一应用对应的第一持久化存储卷声明,并基于所述第一持久化存储卷声明,在所述目标节点服务器中创建所述第一应用对应的第一部署单元;
9.响应于第一部署单元创建过程中的所述第一持久化存储卷声明的绑定操作,通过调用所述目标节点服务器中的目标容器存储插件,基于所述第一持久化存储卷声明,在所述目标节点服务器的卷组中划分出第一逻辑卷,其中,所述第一逻辑卷为持久化存储卷;
10.响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元,以使所述第一应用在运行过程中产生的应用数据存储至本地的所述第一逻辑卷中。
11.第二方面,本发明实施例还提供了一种数据存储装置,集成于容器编排系统中的目标节点服务器,包括:
12.第一部署单元创建模块,用于获取容器化的第一应用对应的第一持久化存储卷声明,并基于所述第一持久化存储卷声明,在所述目标节点服务器中创建所述第一应用对应的第一部署单元;
13.第一逻辑卷创建模块,用于响应于第一部署单元创建过程中的所述第一持久化存储卷声明的绑定操作,通过调用所述目标节点服务器中的目标容器存储插件,基于所述第
一持久化存储卷声明,在所述目标节点服务器的卷组中划分出第一逻辑卷,其中,所述第一逻辑卷为持久化存储卷;
14.第一逻辑卷挂载模块,用于响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元,以使所述第一应用在运行过程中产生的应用数据存储至本地的所述第一逻辑卷中。
15.第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
16.一个或多个处理器;
17.存储器,用于存储一个或多个程序;
18.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例所提供的数据存储方法。
19.第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的数据存储方法。
20.上述发明中的一个实施例具有如下优点或有益效果:
21.容器编排系统中的目标节点服务器通过基于容器化的第一应用对应的第一持久化存储卷声明,在目标节点服务器中创建第一应用对应的第一部署单元;响应于第一部署单元创建过程中的第一持久化存储卷声明的绑定操作,通过调用目标节点服务器中的目标容器存储插件,基于第一持久化存储卷声明,在目标节点服务器的卷组中划分出第一逻辑卷形式的持久化存储卷;响应于第一部署单元的创建完成操作,将第一逻辑卷挂载到创建完成的第一部署单元,使得第一应用在运行过程中产生的应用数据存储至本地的第一逻辑卷中,从而实现数据的持久化存储。通过利用目标容器存储插件可以快速地在卷组中创建出逻辑卷形式的持久化存储卷,并且逻辑卷可以将多个磁盘聚合为一个更大的逻辑磁盘,从而不受限于单个磁盘的总存储容量,使得存储容量更易控制,进而提高了存储的灵活性。
附图说明
22.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
23.图1是本发明一个实施例所提供的一种数据存储方法的流程图;
24.图2是本发明一个实施例所涉及的一种容器编排系统的架构示例;
25.图3是本发明一个实施例提供的一种数据存储方法的流程图;
26.图4是本发明一个实施例提供的一种数据存储方法的流程图;
27.图5是本发明一个实施例提供的一种数据存储方法的流程图;
28.图6是本发明一个实施例提供的一种数据存储装置的结构示意图;
29.图7是本发明一个实施例提供的一种电子设备的结构示意图。
具体实施方式
30.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便
于描述,附图中仅示出了与本发明相关的部分而非全部结构。
31.图1为本发明一个实施例所提供的一种数据存储方法的流程图,本实施例可适用于对容器化的应用进行部署,并将其产生的应用数据进行本地存储的情况。该方法可以由数据存储装置来执行,该装置可以由软件和/或硬件的方式来实现,集成于电子设备中。例如,该装置可以集成于容器编排系统中的目标节点服务器。
32.其中,容器编排系统可以是用于编排管理容器化的应用系统。例如,容器编排系统可以是指kubernetes系统。参见图2,容器编排系统可以包括节点服务器集群和管理服务器。其中,节点服务器集群包括多个节点服务器。每个节点服务器是实际部署容器化应用的服务器。管理服务器用于对多个节点服务器进行管理,比如进行容器调度和节点状态检测等。例如,管理服务器可以基于内部调度逻辑,将当前需要部署的容器化应用调度到一个节点服务器中进行部署。目标节点服务器是指当前需要部署容器化应用所调度到的节点服务器。每个节点服务器的内部架构都是相同的。例如,参见图2,目标节点服务器可以包括代理模块、目标容器存储插件(比如csi容器存储接口)和用于支撑插件功能实现的插件控制器。其中,代理模块(比如kubulet)是指在目标节点服务器中运行的代理,以保证容器都运行在部署单元中。目标容器存储插件可以是新增的一个容器存储接口插件,以便通过该插件创建出逻辑卷形式的持久化存储卷。目标容器存储插件预先注册在代理模块中,以使代理模块可以成功调用目标容器存储插件进行持久化存储。目标容器存储插件中的插件节点服务用于实现持久化存储的创建操作。
33.如图1所示,该方法具体包括以下步骤:
34.s110、获取容器化的第一应用对应的第一持久化存储卷声明,并基于第一持久化存储卷声明,在目标节点服务器中创建第一应用对应的第一部署单元。
35.其中,第一应用可以是指当前需要在目标节点服务器中部署容器化后的应用。第一应用的数量可以为一个或多个。每个第一应用均对应一个容器。持久化存储卷声明(persistent volume claim,pvc)是用于描述应用的持久化存储卷(persistent volume,pv)的配置信息,其可以基于应用需求进行个性化配置。第一持久化存储卷声明可以是指第一应用的持久化存储卷声明。部署单元pod是在目标节点服务器中被创建和管理的最小部署单元。每个部署单元中可以运行一个容器,或者同时运行多个容器。每个部署单元中的所有容器共享网络和存储空间。第一部署单元是指包含有容器化的第一应用的部署单元。
36.具体地,若当前需要部署发布第一应用,则对第一应用进行容器化,并配置容器化的第一应用对应的第一持久化存储卷声明,并生成包含有第一持久化存储卷声明的第一应用部署请求,将第一应用部署请求发送至管理服务器。管理服务器对第一应用部署请求进行响应调度,从而将该第一应用部署请求调度到目标节点服务器中。参见图2,目标节点服务器中的代理模块接收到第一应用部署请求后,对第一应用部署请求进行解析,获得容器化的第一应用对应的第一持久化存储卷声明pvc,并基于第一持久化存储卷声明中的存储配置信息,在目标节点服务器中创建出第一应用对应的第一部署单元pod。
37.s120、响应于第一部署单元创建过程中的第一持久化存储卷声明的绑定操作,通过调用目标节点服务器中的目标容器存储插件,基于第一持久化存储卷声明,在目标节点服务器的卷组中划分出第一逻辑卷,其中,第一逻辑卷为持久化存储卷。
38.其中,每个节点服务器中均有一个容器存储插件。目标容器存储插件是目标节点
服务器中的容器存储插件。卷组是由一个或多个物理卷所组成的存储池,在卷组上可以创建一个或多个逻辑卷。物理卷是指磁盘分区或者从逻辑上与磁盘分区具有同样功能的设备,其是逻辑卷管理器(logical volume manager,lvm)的基本存储逻辑块。一个硬盘分区可以对应一个物理卷。lvm可以将一个或多个磁盘的分区在逻辑上集合,相当于一个大磁盘进行使用。当磁盘的空间不够使用时,可以继续加入其它磁盘的分区,从而可以实现存储容量的动态管理,提高存储的灵活性。第一逻辑卷可以是指在卷组中划分出的逻辑磁盘形式的持久化存储卷。在第一逻辑卷上可以建立文件系统。将第一逻辑卷作为本地存储介质。
39.具体地,参见图2,代理模块在创建第一部署单元过程中存在绑定第一持久化存储卷声明的操作,当执行到这个操作时,代理模块会调用目标容器存储插件进行第一逻辑卷的划分创建。例如,在目标容器存储插件中基于第一持久化存储卷声明中的存储配置信息,可以通过逻辑卷管理器在目标节点服务器的卷组中划分出指定存储容量和指定系统文件格式的第一逻辑卷,从而在目标节点服务器中创建出逻辑卷形式的持久化存储卷。由于第一逻辑卷的存储容量不受限于单个磁盘的总存储容量,从而获得存储容量更易控制的持久化存储卷。
40.需要说明的是,在获取第一持久化存储卷声明后并不会立即调用目标容器存储插件进行第一逻辑卷的划分创建,而是等到第一部署单元创建过程绑定第一持久化存储卷声明时才调用目标容器存储插件进行第一逻辑卷的划分创建,从而可以等到第一部署单元确定调度到目标节点服务器时,再在目标节点服务器中创建第一逻辑卷,进而保证第一逻辑卷可以挂载到创建出的第一部署单元中,并且在创建出第一部署单元之前先完成第一逻辑卷的创建,进而保证挂载的成功性,不会因为调度问题而导致挂载错误,进而导致应用数据丢失的情况。
41.示例性地,s120中的“基于第一持久化存储卷声明,在目标节点服务器的卷组中划分出第一逻辑卷”,可以包括:基于第一持久化存储卷声明中的第一存储容量,在目标节点服务器的卷组中划分出具有第一存储容量的基础逻辑卷;基于第一持久化存储卷声明中的文件系统格式,对基础逻辑卷进行格式化,获得第一逻辑卷。
42.其中,第一存储容量可以是指第一持久化存储卷声明中预先配置的第一应用的存储容量。第一存储容量可以大于单个磁盘或者单个磁盘分区的总存储容量,其不受限于单个磁盘或者单个磁盘分区的总存储容量的限制。文件系统格式是指第一持久化存储卷声明中预先配置的第一应用的文件系统格式。例如,文件系统格式可以是ext3、ext4或者xfs。
43.具体地,在创建第一逻辑卷时,目标容器存储插件可以先在目标节点服务器的卷组中划分出具有第一存储容量的基础逻辑卷,再基于第一持久化存储卷声明中的文件系统格式,将基础逻辑卷格式化为相应的文件系统格式,从而获得该文件系统格式下的第一逻辑卷,以便在第一逻辑卷中存储应用文件数据。
44.s130、响应于第一部署单元的创建完成操作,将第一逻辑卷挂载到创建完成的第一部署单元,以使第一应用在运行过程中产生的应用数据存储至本地的第一逻辑卷中。
45.具体地,参见图2,通过目标容器存储插件创建出第一部署单元后,目标容器存储插件将划分出的第一逻辑卷挂载到创建完成的第一部署单元中,从而建立第一逻辑卷与第一部署单元之间的对应关系,进而可以基于该对应关系,将第一部署单元中的第一应用在运行过程中产生成的应用数据存储至本地的第一逻辑卷中,从而实现了本地的持久化存
储,并且存储容量易于控制。
46.本实施例的技术方案,容器编排系统中的目标节点服务器通过基于容器化的第一应用对应的第一持久化存储卷声明,在目标节点服务器中创建第一应用对应的第一部署单元;响应于第一部署单元创建过程中的第一持久化存储卷声明的绑定操作,通过调用目标节点服务器中的目标容器存储插件,基于第一持久化存储卷声明,在目标节点服务器的卷组中划分出第一逻辑卷形式的持久化存储卷;响应于第一部署单元的创建完成操作,将第一逻辑卷挂载到创建完成的第一部署单元,使得第一应用在运行过程中产生的应用数据存储至本地的第一逻辑卷中,从而实现数据的持久化存储。通过利用目标容器存储插件可以快速地在卷组中创建出逻辑卷形式的持久化存储卷,并且逻辑卷可以将多个磁盘聚合为一个更大的逻辑磁盘,从而不受限于单个磁盘的总存储容量,使得存储容量更易控制,进而提高了存储的灵活性。
47.在上述技术方案的基础上,在s110之后,还可以包括:基于目标节点服务器对应的磁盘配置信息,确定目标节点服务器中的目标空余磁盘,并将目标空余磁盘转换为卷组。
48.其中,磁盘配置信息是预先基于业务需求进行配置的,用于表征目标节点服务器中可以允许转换为卷组的空余磁盘。
49.具体地,在部署容器化的第一应用之前,基于目标节点服务器对应的磁盘配置信息,确定目标节点服务器中指定的所有目标空余磁盘,并将所有目标空余磁盘初始为卷组,从而将所有目标空余磁盘转换为卷组,进而在后续部署第一应用时可以直接在卷组中创建第一逻辑卷,提高了逻辑卷创建效率,同时利用磁盘配置信息也实现了卷组的动态配置,进一步提高了存储的灵活性。
50.图3为本发明一个实施例提供的一种数据存储方法的流程图,本实施例在上述各实施例的基础上,对第一逻辑卷的当前存储容量的在线扩容过程进行了详细描述。其中与上述各实施例相同或相应的术语的解释在此不再赘述。
51.参见图3,本实施例提供的另一种数据存储方法具体包括以下步骤:
52.s310、获取容器化的第一应用对应的第一持久化存储卷声明,并基于第一持久化存储卷声明,在目标节点服务器中创建第一应用对应的第一部署单元。
53.s320、响应于第一部署单元创建过程中的第一持久化存储卷声明的绑定操作,通过调用目标节点服务器中的目标容器存储插件,基于第一持久化存储卷声明,在目标节点服务器的卷组中划分出第一逻辑卷,其中,第一逻辑卷为持久化存储卷。
54.s330、响应于第一部署单元的创建完成操作,将第一逻辑卷挂载到创建完成的第一部署单元,以使第一应用在运行过程中产生的应用数据存储至本地的第一逻辑卷中。
55.s340、获取第一应用对应的目标扩容信息。
56.其中,目标扩容信息可以包括扩容后的第二存储容量。
57.具体地,在随着业务量增大需要对第一应用进行扩容时,可以直接编译修改第一应用对应的第一持久化存储卷声明中的第一存储容量为目标扩容信息。目标节点服务器中的代理模块在监测到第一持久化存储卷声明中的存储容量被修改时,可以获得修改后的目标扩容信息。
58.s350、调用目标容器存储插件,基于目标扩容信息,对第一逻辑卷的当前存储容量进行在线扩容。
59.具体地,代理模块可以通过调用目标容器存储插件中的扩容函数expandvolume,在目标容器存储插件中,将第一逻辑卷的当前存储容量在线扩容到目标扩容信息,从而在第一部署单元正常运行情况下完成存储容量的在线扩容,将第一应用产生的应用数据存储至扩容后的第一逻辑卷中。
60.示例性地,s350中的“基于目标扩容信息,对第一逻辑卷的当前存储容量进行在线扩容”,可以包括:通过执行逻辑卷扩容命令,将第一逻辑卷的当前存储容量增加到扩容后的第二存储容量;通过执行与第一逻辑卷的文件系统格式相匹配的文件系统扩容命令,将第一逻辑卷的当前文件系统容量增加到第二存储容量。
61.具体地,目标容器存储插件可以通过执行逻辑卷扩容命令lvextend,先将第一逻辑卷的大小扩容当前存储容量增加到扩容后的第二存储容量,然后通过执行与第一逻辑卷的文件系统格式相匹配的文件系统扩容命令进行当前文件系统的扩容。例如,在文件系统格式为ext3或者ext4时,可以通过执行文件系统扩容命令resize2fs,将第一逻辑卷的当前文件系统容量增加到第二存储容量。在文件系统格式为xfs时,可以通过执行文件系统扩容命令xfs_growfs,将第一逻辑卷的当前文件系统容量增加到第二存储容量,从而完成逻辑卷的在线扩容。
62.本实施例的技术方案,通过调用目标容器存储插件,基于第一应用对应的目标扩容信息,对第一逻辑卷的当前存储容量进行在线扩容,从而实现空动态扩容,并且在第一应用正常运行情况下完成存储容量的在线扩容,无需断电重启,进而提高了扩容便捷性。
63.图4为本发明一个实施例提供的一种数据存储方法的流程图,本实施例在上述各实施例的基础上,对第一逻辑卷中的当前存储数据进行克隆的过程进行了详细描述。其中与上述各实施例相同或相应的术语的解释在此不再赘述。
64.参见图4,本实施例提供的另一种数据存储方法具体包括以下步骤:
65.s410、获取容器化的第一应用对应的第一持久化存储卷声明,并基于第一持久化存储卷声明,在目标节点服务器中创建第一应用对应的第一部署单元。
66.s420、响应于第一部署单元创建过程中的第一持久化存储卷声明的绑定操作,通过调用目标节点服务器中的目标容器存储插件,基于第一持久化存储卷声明,在目标节点服务器的卷组中划分出第一逻辑卷,其中,第一逻辑卷为持久化存储卷。
67.s430、响应于第一部署单元的创建完成操作,将第一逻辑卷挂载到创建完成的第一部署单元,以使第一应用在运行过程中产生的应用数据存储至本地的第一逻辑卷中。
68.s440、获取容器化后的第二应用对应的第二持久化存储卷声明,第二持久化存储卷声明中的克隆对象为第一持久化存储卷声明。
69.其中,第二应用是指需要克隆指定应用的当前存储数据的应用。第二持久化存储卷声明可以是指第二应用的持久化存储卷声明。第二持久化存储卷声明中存在有一项克隆对象的配置信息,该配置信息用于表征需要克隆哪个持久化存储卷声明对应的应用。在本实施例中,以克隆第一持久化存储卷声明对应的第一应用为例进行说明。例如,在克隆第一应用的当前存储数据时,部署第二应用后,第二应用的第二逻辑卷中存储的应用数据应与第一应用的第一逻辑卷中的应用数据相同。
70.具体地,若第二应用需要克隆第一应用的当前存储数据时,需要将创建的第二持久化存储卷声明中的克隆对象配置为第一持久化存储卷声明,从而基于该克隆对象获得要
克隆的源pvc为第一持久化存储卷声明。将创建的第二持久化存储卷声明发送至管理服务器,管理服务器基于第二持久化存储卷声明中的克隆对象确定待部署的第二应用需要克隆,此时会将第二持久化存储卷声明调度到克隆对象所在的节点服务器中,即目标节点服务器,从而使得目标节点服务器中的代理模块获取到第二持久化存储卷声明。
71.s450、基于第二持久化存储卷声明,在目标节点服务器中创建第二应用对应的第二部署单元。
72.具体地,目标节点服务器中的代理模块可以按照创建第一部署单元的方式,基于第二持久化存储卷声明创建第二应用对应的第二部署单元。
73.s460、响应于第二部署单元创建过程中的第二持久化存储卷声明的绑定操作,通过调用目标容器存储插件,基于第二持久化存储卷声明,在目标节点服务器的卷组中划分出第二逻辑卷,并对第一逻辑卷中的当前存储数据进行克隆,将克隆的当前存储数据存储到第二逻辑卷中。
74.具体地,代理模块在创建第二部署单元过程中也存在绑定第二持久化存储卷声明的操作,当执行到这个操作时,代理模块会调用目标容器存储插件进行第二逻辑卷的划分创建和存储数据的克隆复制。例如,在目标容器存储插件中基于第二持久化存储卷声明中的存储配置信息,可以通过逻辑卷管理器在目标节点服务器的卷组中划分出指定存储容量和指定系统文件格式的第二逻辑卷,从而在目标节点服务器中创建出逻辑卷形式的持久化存储卷。在创建第二逻辑卷的过程中判断需要克隆第一逻辑卷中的当前存储数据,从而需要对第一逻辑卷中的当前存储数据进行克隆,并将克隆的当前存储数据存储到第二逻辑卷中,使得第二逻辑卷存储有与第一逻辑卷相同的应用数据,进而实现了本地克隆。
75.示例性地,s460中的“对第一逻辑卷中的当前存储数据进行克隆,将克隆的当前存储数据存储到第二逻辑卷中”,可以包括:创建第一逻辑卷对应的当前快照,并将当前快照挂载到临时目录下;基于临时目录获取第一逻辑卷中的当前存储数据,并将当前存储数据全量复制到第二逻辑卷中进行存储。
76.其中,当前快照可以是指第一逻辑卷中的当前存储数据的快照snapshot。具体地,在第一逻辑卷为文件系统时,可以先创建第一逻辑卷对应的当前快照,当前快照中包含有第一逻辑卷的当前存储数据。再将当前快照挂载到临时目录下,从临时目录中可以获取到第一逻辑卷中的当前存储数据,并将当前存储数据全量复制到第二逻辑卷中进行存储,从而将第一逻辑卷中的当前存储数据克隆复制到第二逻辑卷中,实现了本机克隆。
77.s470、响应于第二部署单元的创建完成操作,将第二逻辑卷挂载到创建完成的第二部署单元。
78.具体地,通过目标容器存储插件创建出第二部署单元后,目标容器存储插件将克隆有第一逻辑卷中的当前存储数据的第二逻辑卷挂载到创建完成的第二部署单元中,从而建立第二逻辑卷与第二部署单元之间的对应关系,进而可以基于该对应关系,将第二部署单元中的第二应用在运行过程中产生成的应用数据存储至本地的第二逻辑卷中,从而在同一个节点服务器中实现当前应用数据的本机克隆。
79.本实施例的技术方案,通过响应于第二部署单元创建过程中的第二持久化存储卷声明的绑定操作,通过调用目标容器存储插件,基于第二持久化存储卷声明,在目标节点服务器的卷组中划分出第二逻辑卷,并对第一逻辑卷中的当前存储数据进行克隆,将克隆的
当前存储数据存储到第二逻辑卷中,从而直接在目标节点服务器中进行应用数据的克隆,无需借助第三方设备,实现了本机克隆。
80.图5为本发明一个实施例提供的一种数据存储方法的流程图,本实施例在上述各实施例的基础上,对第一逻辑卷的快照创建过程进行了详细描述。其中与上述各实施例相同或相应的术语的解释在此不再赘述。
81.参见图5,本实施例提供的另一种数据存储方法具体包括以下步骤:
82.s510、获取容器化的第一应用对应的第一持久化存储卷声明,并基于第一持久化存储卷声明,在目标节点服务器中创建第一应用对应的第一部署单元。
83.s520、响应于第一部署单元创建过程中的第一持久化存储卷声明的绑定操作,通过调用目标节点服务器中的目标容器存储插件,基于第一持久化存储卷声明,在目标节点服务器的卷组中划分出第一逻辑卷,其中,第一逻辑卷为持久化存储卷。
84.s530、响应于第一部署单元的创建完成操作,将第一逻辑卷挂载到创建完成的第一部署单元,以使第一应用在运行过程中产生的应用数据存储至本地的第一逻辑卷中。
85.s540、获取第一应用对应的快照创建信息,快照创建信息中的快照对象为第一持久化存储卷声明。
86.具体地,随着第一应用的运行,第一逻辑卷中存储的数据不断更新,若想保留某个时刻下的存储数据,则可以对该时刻下的存储数据进行快照创建。例如,在当前需要对第一应用对应的第一逻辑卷中的当前存储数据进行快照时,可以配置出快照创建信息,并将快照创建信息中的快照对象指定为第一持久化存储卷声明。将快照创建信息调度至指定的快照对象所在的节点服务器,即目标节点服务器,以使目标节点服务器中的代理模块可以获得第一应用对应的快照创建信息。
87.s550、通过调用目标容器存储插件,基于快照创建信息,创建第一逻辑卷对应的当前快照,并将创建出的快照与创建时间之间的对应关系进行存储。
88.具体地,代理模块在获取快照创建信息后,可以调用目标容器存储插件,在目标容器存储插件中基于快照创建信息中的快照对象,创建该快照对象对应的第一逻辑卷的当前快照,并将创建出的快照与创建时间之间的对应关系进行存储。
89.需要说明的是,在第一应用运行过程中,可以通过快照方式保留每个运行时刻下的存储数据,以便可以对第一应用在历史运行时刻下的历史存储数据进行克隆,并非局限于当前存储数据的克隆。在不需要使用创建出的某个快照时,可以调用目标容器存储插件,将该快照进行删除,以便节省存储空间。
90.本实施例的技术方案,通过调用目标容器存储插件,基于快照创建信息,创建第一逻辑卷对应的当前快照,并将创建出的快照与创建时间之间的对应关系进行存储,从而实现当前快照的快照创建。
91.在上述技术方案的基础上,在步骤s550之后,还可以包括如下步骤s560-s590:
92.s560、获取容器化后的第三应用对应的第三持久化存储卷声明,第三持久化存储卷声明中的克隆对象为预先创建出的目标快照。
93.其中,目标快照可以是预先创建出的一个快照。目标快照中包含有应用在某个历史运行时刻下的存储数据。第三应用是指需要克隆指定快照中的历史存储数据的应用。第三持久化存储卷声明可以是指第三应用的持久化存储卷声明。第三持久化存储卷声明中存
在有一项克隆对象的配置信息,该配置信息用于表征需要克隆哪个快照中的数据。在本实施例中,以克隆第一应用预先创建出的一个目标快照为例进行说明。例如,在克隆第一应用的目标快照中的历史存储数据时,部署第三应用后,第三应用的第三逻辑卷中存储的应用数据应与第一应用的目标快照中的历史存储数据相同。
94.具体地,若第三应用需要克隆第一应用预先创建的目标快照中的历史存储数据时,需要将创建的第三持久化存储卷声明中的克隆对象配置为目标快照。将创建的第三持久化存储卷声明发送至管理服务器,管理服务器基于第三持久化存储卷声明中的克隆对象确定待部署的第三应用需要克隆,此时会将第三持久化存储卷声明调度到克隆对象所在的节点服务器中,即目标节点服务器,从而使得目标节点服务器中的代理模块获取到第三持久化存储卷声明。
95.s570、基于第三持久化存储卷声明,在目标节点服务器中创建第三应用对应的第三部署单元。
96.具体地,目标节点服务器中的代理模块可以按照创建第一部署单元的方式,基于第三持久化存储卷声明创建第三应用对应的第三部署单元。
97.s580、响应于第三部署单元创建过程中的第三持久化存储卷声明的绑定操作,通过调用目标容器存储插件,基于第三持久化存储卷声明,在目标节点服务器的卷组中划分出第三逻辑卷,并确定目标快照中的目标存储数据,将目标存储数据存储到第三逻辑卷中。
98.具体地,代理模块在创建第三部署单元过程中也存在绑定第三持久化存储卷声明的操作,当执行到这个操作时,代理模块会调用目标容器存储插件进行第三逻辑卷的划分创建和存储数据的克隆复制。例如,在目标容器存储插件中基于第三持久化存储卷声明中的存储配置信息,可以通过逻辑卷管理器在目标节点服务器的卷组中划分出指定存储容量和指定系统文件格式的第三逻辑卷,从而在目标节点服务器中创建出逻辑卷形式的持久化存储卷。在创建第三逻辑卷的过程中判断需要克隆目标快照中的历史存储数据,从而需要获取目标快照中的历史存储数据,比如,将目标快照挂载到临时目录下,从临时目录中可以获取到目标快照中的历史存储数据。将获取到的历史存储数据克隆复制到第三逻辑卷中,使得第三逻辑卷存储有与目标快照中相同的应用数据,进而实现了历史数据的克隆。
99.s590、响应于第三部署单元的创建完成操作,将第三逻辑卷挂载到创建完成的第三部署单元。
100.具体地,通过目标容器存储插件创建出第三部署单元后,目标容器存储插件将克隆有目标快照中的历史存储数据的第三逻辑卷挂载到创建完成的第三部署单元中,从而建立第三逻辑卷与第三部署单元之间的对应关系,进而可以基于该对应关系,将第三部署单元中的第三应用在运行过程中产生成的应用数据存储至本地的第三逻辑卷中,从而在同一个节点服务器中实现历史应用数据的本机克隆。
101.以下是本发明实施例提供的数据存储装置的实施例,该装置与上述各实施例的数据存储方法属于同一个发明构思,在数据存储装置的实施例中未详尽描述的细节内容,可以参考上述数据存储方法的实施例。
102.图6为本发明实施例提供的一种数据存储装置的结构示意图,本实施例可适用于对容器化的应用进行部署,并将其产生的应用数据进行本地存储的情况。如图6所示,该装置集成于容器编排系统中的目标节点服务器,具体包括:第一部署单元创建模块610、第一
逻辑卷创建模块620和第一逻辑卷挂载模块630。
103.其中,第一部署单元创建模块610,用于获取容器化的第一应用对应的第一持久化存储卷声明,并基于所述第一持久化存储卷声明,在所述目标节点服务器中创建所述第一应用对应的第一部署单元;
104.第一逻辑卷创建模块620,用于响应于第一部署单元创建过程中的所述第一持久化存储卷声明的绑定操作,通过调用所述目标节点服务器中的目标容器存储插件,基于所述第一持久化存储卷声明,在所述目标节点服务器的卷组中划分出第一逻辑卷,其中,所述第一逻辑卷为持久化存储卷;
105.第一逻辑卷挂载模块630,用于响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元,以使所述第一应用在运行过程中产生的应用数据存储至本地的所述第一逻辑卷中。
106.本实施例的技术方案,容器编排系统中的目标节点服务器通过基于容器化的第一应用对应的第一持久化存储卷声明,在目标节点服务器中创建第一应用对应的第一部署单元;响应于第一部署单元创建过程中的第一持久化存储卷声明的绑定操作,通过调用目标节点服务器中的目标容器存储插件,基于第一持久化存储卷声明,在目标节点服务器的卷组中划分出第一逻辑卷形式的持久化存储卷;响应于第一部署单元的创建完成操作,将第一逻辑卷挂载到创建完成的第一部署单元,使得第一应用在运行过程中产生的应用数据存储至本地的第一逻辑卷中,从而实现数据的持久化存储。通过利用目标容器存储插件可以快速地在卷组中创建出逻辑卷形式的持久化存储卷,并且逻辑卷可以将多个磁盘聚合为一个更大的逻辑磁盘,从而不受限于单个磁盘的总存储容量,使得存储容量更易控制,进而提高了存储的灵活性。
107.可选地,第一逻辑卷创建模块620,具体用于:
108.基于所述第一持久化存储卷声明中的第一存储容量,在所述目标节点服务器的卷组中划分出具有所述第一存储容量的基础逻辑卷;基于所述第一持久化存储卷声明中的文件系统格式,对所述基础逻辑卷进行格式化,获得第一逻辑卷。
109.可选地,该装置还包括:
110.磁盘转换模块,用于在获取容器化的第一应用对应的第一持久化存储卷声明之前,基于所述目标节点服务器对应的磁盘配置信息,确定所述目标节点服务器中的目标空余磁盘,并将所述目标空余磁盘转换为卷组。
111.可选地,该装置还包括:
112.在线扩容模块,用于在响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元之后,获取所述第一应用对应的目标扩容信息;调用所述目标容器存储插件,基于所述目标扩容信息,对所述第一逻辑卷的当前存储容量进行在线扩容。
113.可选地,在线扩容模块,具体用于:
114.通过执行逻辑卷扩容命令,将所述第一逻辑卷的当前存储容量增加到扩容后的第二存储容量;通过执行与所述第一逻辑卷的文件系统格式相匹配的文件系统扩容命令,将所述第一逻辑卷的当前文件系统容量增加到所述第二存储容量。
115.可选地,该装置还包括:
116.第二持久化存储卷声明获取模块,用于在响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元之后,获取容器化后的第二应用对应的第二持久化存储卷声明,所述第二持久化存储卷声明中的克隆对象为所述第一持久化存储卷声明;
117.第二部署单元创建模块,用于基于所述第二持久化存储卷声明,在所述目标节点服务器中创建所述第二应用对应的第二部署单元;
118.第二逻辑卷创建模块,用于响应于第二部署单元创建过程中的所述第二持久化存储卷声明的绑定操作,通过调用所述目标容器存储插件,基于所述第二持久化存储卷声明,在所述目标节点服务器的卷组中划分出第二逻辑卷,并对所述第一逻辑卷中的当前存储数据进行克隆,将克隆的当前存储数据存储到所述第二逻辑卷中;
119.第二逻辑卷挂载模块,用于响应于所述第二部署单元的创建完成操作,将所述第二逻辑卷挂载到创建完成的所述第二部署单元。
120.可选地,第二逻辑卷创建模块,具体用于:
121.创建所述第一逻辑卷对应的当前快照,并将所述当前快照挂载到临时目录下;基于所述临时目录获取所述第一逻辑卷中的当前存储数据,并将所述当前存储数据全量复制到所述第二逻辑卷中进行存储。
122.可选地,该装置还包括:
123.快照创建信息获取模块,用于在响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元之后,获取所述第一应用对应的快照创建信息,所述快照创建信息中的快照对象为所述第一持久化存储卷声明;
124.快照创建模块,用于通过调用所述目标容器存储插件,基于所述快照创建信息,创建所述第一逻辑卷对应的当前快照,并将创建出的快照与创建时间之间的对应关系进行存储。
125.可选地,该装置还包括:
126.第三持久化存储卷声明获取模块,用于在将创建出的快照与创建时间之间的对应关系进行存储之后,获取容器化后的第三应用对应的第三持久化存储卷声明,所述第三持久化存储卷声明中的克隆对象为预先创建出的目标快照;
127.第三部署单元创建模块,用于基于所述第三持久化存储卷声明,在所述目标节点服务器中创建所述第三应用对应的第三部署单元;
128.第三逻辑卷创建模块,用于响应于第三部署单元创建过程中的所述第三持久化存储卷声明的绑定操作,通过调用所述目标容器存储插件,基于所述第三持久化存储卷声明,在所述目标节点服务器的卷组中划分出第三逻辑卷,并确定所述目标快照中的目标存储数据,将所述目标存储数据存储到所述第三逻辑卷中;
129.第三逻辑卷挂载模块,用于响应于所述第三部署单元的创建完成操作,将所述第三逻辑卷挂载到创建完成的所述第三部署单元。
130.本发明实施例所提供的数据存储装置可执行本发明任意实施例所提供的数据存储方法,具备执行数据存储方法相应的功能模块和有益效果。
131.值得注意的是,上述数据存储装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,
各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
132.图7为本发明实施例提供的一种电子设备的结构示意图。图7示出了适于用来实现本发明实施方式的示例性电子设备12的框图。图7显示的电子设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
133.如图7所示,电子设备12以通用计算设备的形式表现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
134.总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。
135.电子设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
136.系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)30和/或高速缓存存储器32。电子设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
137.具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
138.电子设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该电子设备12交互的设备通信,和/或与使得该电子设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口22进行。并且,电子设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与电子设备12的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
139.处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发实施例所提供的一种数据存储方法步骤,该方法包括:
140.获取容器化的第一应用对应的第一持久化存储卷声明,并基于所述第一持久化存储卷声明,在所述目标节点服务器中创建所述第一应用对应的第一部署单元;
141.响应于第一部署单元创建过程中的所述第一持久化存储卷声明的绑定操作,通过调用所述目标节点服务器中的目标容器存储插件,基于所述第一持久化存储卷声明,在所述目标节点服务器的卷组中划分出第一逻辑卷,其中,所述第一逻辑卷为持久化存储卷;
142.响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元,以使所述第一应用在运行过程中产生的应用数据存储至本地的所述第一逻辑卷中。
143.当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例所提供的数据存储方法的技术方案。
144.本实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的数据存储方法步骤,该方法包括:
145.获取容器化的第一应用对应的第一持久化存储卷声明,并基于所述第一持久化存储卷声明,在所述目标节点服务器中创建所述第一应用对应的第一部署单元;
146.响应于第一部署单元创建过程中的所述第一持久化存储卷声明的绑定操作,通过调用所述目标节点服务器中的目标容器存储插件,基于所述第一持久化存储卷声明,在所述目标节点服务器的卷组中划分出第一逻辑卷,其中,所述第一逻辑卷为持久化存储卷;
147.响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元,以使所述第一应用在运行过程中产生的应用数据存储至本地的所述第一逻辑卷中。
148.本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
149.计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
150.计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
151.可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉
及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
152.本领域普通技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个计算装置上,或者分布在多个计算装置所组成的网络上,可选地,他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
153.注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

技术特征:
1.一种数据存储方法,其特征在于,应用于容器编排系统中的目标节点服务器,包括:获取容器化的第一应用对应的第一持久化存储卷声明,并基于所述第一持久化存储卷声明,在所述目标节点服务器中创建所述第一应用对应的第一部署单元;响应于第一部署单元创建过程中的所述第一持久化存储卷声明的绑定操作,通过调用所述目标节点服务器中的目标容器存储插件,基于所述第一持久化存储卷声明,在所述目标节点服务器的卷组中划分出第一逻辑卷,其中,所述第一逻辑卷为持久化存储卷;响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元,以使所述第一应用在运行过程中产生的应用数据存储至本地的所述第一逻辑卷中。2.根据权利要求1所述的方法,其特征在于,所述基于所述第一持久化存储卷声明,在所述目标节点服务器的卷组中划分出第一逻辑卷,包括:基于所述第一持久化存储卷声明中的第一存储容量,在所述目标节点服务器的卷组中划分出具有所述第一存储容量的基础逻辑卷;基于所述第一持久化存储卷声明中的文件系统格式,对所述基础逻辑卷进行格式化,获得第一逻辑卷。3.根据权利要求1所述的方法,其特征在于,在获取容器化的第一应用对应的第一持久化存储卷声明之前,还包括:基于所述目标节点服务器对应的磁盘配置信息,确定所述目标节点服务器中的目标空余磁盘,并将所述目标空余磁盘转换为卷组。4.根据权利要求1所述的方法,其特征在于,在响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元之后,还包括:获取所述第一应用对应的目标扩容信息;调用所述目标容器存储插件,基于所述目标扩容信息,对所述第一逻辑卷的当前存储容量进行在线扩容。5.根据权利要求4所述的方法,其特征在于,所述基于所述目标扩容信息,对所述第一逻辑卷的当前存储容量进行在线扩容,包括:通过执行逻辑卷扩容命令,将所述第一逻辑卷的当前存储容量增加到扩容后的第二存储容量;通过执行与所述第一逻辑卷的文件系统格式相匹配的文件系统扩容命令,将所述第一逻辑卷的当前文件系统容量增加到所述第二存储容量。6.根据权利要求1所述的方法,其特征在于,在响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元之后,还包括:获取容器化后的第二应用对应的第二持久化存储卷声明,所述第二持久化存储卷声明中的克隆对象为所述第一持久化存储卷声明;基于所述第二持久化存储卷声明,在所述目标节点服务器中创建所述第二应用对应的第二部署单元;响应于第二部署单元创建过程中的所述第二持久化存储卷声明的绑定操作,通过调用所述目标容器存储插件,基于所述第二持久化存储卷声明,在所述目标节点服务器的卷组中划分出第二逻辑卷,并对所述第一逻辑卷中的当前存储数据进行克隆,将克隆的当前存
储数据存储到所述第二逻辑卷中;响应于所述第二部署单元的创建完成操作,将所述第二逻辑卷挂载到创建完成的所述第二部署单元。7.根据权利要求6所述的方法,其特征在于,所述对所述第一逻辑卷中的当前存储数据进行克隆,将克隆的当前存储数据存储到所述第二逻辑卷中,包括:创建所述第一逻辑卷对应的当前快照,并将所述当前快照挂载到临时目录下;基于所述临时目录获取所述第一逻辑卷中的当前存储数据,并将所述当前存储数据全量复制到所述第二逻辑卷中进行存储。8.根据权利要求1所述的方法,其特征在于,在响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元之后,还包括:获取所述第一应用对应的快照创建信息,所述快照创建信息中的快照对象为所述第一持久化存储卷声明;通过调用所述目标容器存储插件,基于所述快照创建信息,创建所述第一逻辑卷对应的当前快照,并将创建出的快照与创建时间之间的对应关系进行存储。9.根据权利要求8所述的方法,其特征在于,在将创建出的快照与创建时间之间的对应关系进行存储之后,还包括:获取容器化后的第三应用对应的第三持久化存储卷声明,所述第三持久化存储卷声明中的克隆对象为预先创建出的目标快照;基于所述第三持久化存储卷声明,在所述目标节点服务器中创建所述第三应用对应的第三部署单元;响应于第三部署单元创建过程中的所述第三持久化存储卷声明的绑定操作,通过调用所述目标容器存储插件,基于所述第三持久化存储卷声明,在所述目标节点服务器的卷组中划分出第三逻辑卷,并确定所述目标快照中的目标存储数据,将所述目标存储数据存储到所述第三逻辑卷中;响应于所述第三部署单元的创建完成操作,将所述第三逻辑卷挂载到创建完成的所述第三部署单元。10.一种数据存储装置,其特征在于,集成于容器编排系统中的目标节点服务器,包括:第一部署单元创建模块,用于获取容器化的第一应用对应的第一持久化存储卷声明,并基于所述第一持久化存储卷声明,在所述目标节点服务器中创建所述第一应用对应的第一部署单元;第一逻辑卷创建模块,用于响应于第一部署单元创建过程中的所述第一持久化存储卷声明的绑定操作,通过调用所述目标节点服务器中的目标容器存储插件,基于所述第一持久化存储卷声明,在所述目标节点服务器的卷组中划分出第一逻辑卷,其中,所述第一逻辑卷为持久化存储卷;第一逻辑卷挂载模块,用于响应于所述第一部署单元的创建完成操作,将所述第一逻辑卷挂载到创建完成的所述第一部署单元,以使所述第一应用在运行过程中产生的应用数据存储至本地的所述第一逻辑卷中。11.一种电子设备,其特征在于,所述电子设备包括:一个或多个处理器;
存储器,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-9中任一所述的数据存储方法。12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-9中任一所述的数据存储方法。

技术总结
本发明实施例公开了一种数据存储方法、装置、设备和存储介质。该方法应用于容器编排系统中的目标节点服务器,包括:获取第一持久化存储卷声明,并基于第一持久化存储卷声明,创建第一应用对应的第一部署单元;响应于第一部署单元创建过程中的第一持久化存储卷声明的绑定操作,通过调用目标节点服务器中的目标容器存储插件,在目标节点服务器的卷组中划分出第一逻辑卷;响应于第一部署单元的创建完成操作,将第一逻辑卷挂载到第一部署单元,以使第一应用在运行过程中产生的应用数据存储至本地的第一逻辑卷中。通过本发明实施例的技术方案,可以实现数据持久化存储,并且存储容量更易控制,不受限于单个磁盘的总存储容量,提高了存储灵活性。了存储灵活性。了存储灵活性。


技术研发人员:李祥哲 赵建星 樊建刚
受保护的技术使用者:京东科技信息技术有限公司
技术研发日:2023.05.18
技术公布日:2023/8/9
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐