本技术实施例涉及容器云集群。更具体地讲,涉及一种基于k8s集群的数据存储管理系统、方法以及介质。
背景技术:
1、对于云平台集群,例如基于kubernetes的容器云集群,部署有大量的服务,每个服务具有一个或多个不同的版本,每个版本服务对应有参数信息,该参数信息如:镜像名称、启动命令、端口、配置文件名称,根据该参数信息能够启动一个或多个相同设置的容器组(pod),需要注意的是,对于各个不同版本的服务对应的配置文件的配置内容不同,在参数信息中仅仅存储配置文件的名称,对于配置文件的具体配置内容,在部署各个版本服务时,会将各个版本服务的参数信息与配置文件的配置内容单独进行部署,即,对于各个版本服务的参数信息、以及各个配置文件的配置内容会单独建立对应的空间进行存储。
2、相关技术中,在创建不同版本服务时,对于其配置文件的配置内容进行存储有两种实现方式,一种是通过对同一服务已经存储的版本服务的配置文件的配置内容直接进行修改,另一种是单独建立configmap资源,存储配置文件的配置内容。
3、然而,采用上述第一种方式,当需要使用同一服务已经存储的版本服务的配置文件的配置内容时,由于该配置内容被修改,因此进行回滚时,无法完全获取对应的配置内容;采用上述第二种方式,当同一服务的版本服务过多时,会自动删除一些版本服务,但是,对于被删除的版本服务对应的,用于存储配置内容的存储文件无法自动删除,导致存在大量的存储文件,从而占用本地大量的存储资源,因此,如何有效的管理存储同一服务的各个版本服务、以及其对应的用于存储配置内容的存储文件是亟待解决的问题。
技术实现思路
1、为了解决上述技术问题或者至少部分地解决上述技术问题,本技术实施例提供了一种基于k8s集群的数据存储管理系统、方法以及介质,能够保证当存在预设服务的目标版本服务被删除时,能够快速的确定与目标版本服务进行关联处理的目标存储文件,并自动的将该目标存储文件删除,解决了现有技术中当目标版本服务已经被删除时,其对应的目标存储文件还未被删除,导致存在大量的存储文件,从而会占用本地大量的存储资源的问题。
2、第一方面,本技术实施例提供了一种基于k8s集群的数据存储管理系统,所述k8s集群的数据存储管理系统包括:集群控制节点;
3、所述集群控制节点,被配置为:
4、接收针对预设服务的服务删除指令,其中,所述服务删除指令携带所述预设服务的目标版本号;
5、响应于所述服务删除指令,删除所述目标版本号对应的目标版本服务;
6、在确定所述目标版本服务被删除的情况下,确定与所述目标版本服务进行关联处理的目标存储文件,并将所述目标存储文件删除,其中,所述目标存储文件用于存储所述目标版本服务对应的目标配置文件的配置内容。
7、作为本公开实施例一种可选的实施方式,所述集群控制节点包括:api server和集群状态管理器;
8、所述集群状态管理器,被配置为:
9、响应于服务删除指令,删除所述目标版本号对应的目标版本服务,并向所述apiserver发送删除成功指令,其中,所述删除成功指令用于指示所述api server已删除所述目标版本服务;
10、所述api server,被配置为:
11、响应于所述集群状态管理器发送的所述删除成功指令,向所述集群状态管理器发送存储文件删除指令;
12、所述集群状态管理器,还被配置为:
13、响应于所述api server发送的存储文件删除指令,根据所述目标版本服务对应的目标参数信息,确定与所述目标版本服务进行关联处理的目标存储文件,并将所述目标存储文件删除。
14、作为本公开实施例一种可选的实施方式,所述集群控制节点还包括:关联控制器;
15、所述api server,还被配置为:
16、当监听到用户发送的针对所述预设服务的服务部署请求、以及针对所述预设服务对应的配置文件的内容存储请求时,将所述服务部署请求以及内容存储请求发送至所述集群状态管理器,其中,所述服务部署请求用于请求部署所述预设服务对应的预设版本服务,所述内容存储请求用于请求部署所述预设版本服务的预设配置文件对应的预设存储文件;
17、所述集群状态管理器,被配置为:
18、响应于所述服务部署请求和所述内容存储请求,在第一存储空间部署所述预设版本服务,在第二存储空间存储所述预设版本服务的配置文件对应的配置内容,得到所述预设存储文件,向所述关联控制器发送部署成功指令;
19、所述关联控制器,被配置为:
20、响应于所述部署成功指令,确定完成对预设服务的预设版本服务、以及所述预设存储文件部署的情况下,将所述预设版本服务以及所述预设存储文件进行关联处理。
21、作为本公开实施例一种可选的实施方式,所述关联控制器,具体被配置为:
22、获取所述预设版本服务对应的参数信息,其中,所述参数信息包括:版本类型、版本名称、以及版本标识;
23、根据所述参数信息,对所述预设存储文件进行标记处理,确定所述预设存储文件的预设标识;
24、根据所述参数信息以及所述预设标识,将所述预设版本服务以及所述预设存储文件进行关联处理。
25、作为本公开实施例一种可选的实施方式,所述关联控制器,具体被配置为:
26、获取所述预设存储文件对应的预设数组;
27、在确定所述预设数组中未存储所述参数信息时,将所述参数信息增加至所述预设数组中。
28、作为本公开实施例一种可选的实施方式,所述集群状态管理器,具体被配置为:
29、响应于所述存储文件删除指令,将所述目标参数信息与各个所述预设存储文件的预设标识进行对比,确定与所述目标参数信息一致的所述预设标识对应的预设存储文件为目标存储文件,并删除所述目标存储文件。
30、作为本公开实施例一种可选的实施方式,所述关联控制器,还被配置为:
31、当将所述预设版本服务以及所述预设存储文件进行关联处理之后,向所述apiserver发送关联成功指令,其中,所述关联成功指令用于指示所述预设版本服务以及所述预设存储文件关联成功;
32、所述api server,还被配置为:
33、在接收到所述关联成功指令时,将所述关联成功指令发送至所述集群状态管理器。
34、第二方面,本技术实施例提供了一种基于k8s集群的数据存储管理方法,应用于基于k8s集群的数据存储管理系统,所述基于k8s集群的数据存储管理系统包括:集群控制节点;所述方法包括:
35、接收针对预设服务的服务删除指令,其中,所述服务删除指令携带所述预设服务的目标版本号;
36、响应于所述服务删除指令,删除所述目标版本号对应的目标版本服务;
37、在确定所述目标版本服务被删除的情况下,确定与所述目标版本服务进行关联处理的目标存储文件,并将所述目标存储文件删除,其中,所述目标存储文件用于存储所述目标版本服务对应的目标配置文件的配置内容。
38、作为本公开实施例一种可选的实施方式,所述集群控制节点包括:api server和集群状态管理器;所述方法包括:
39、通过所述集群状态管理器响应于服务删除指令,删除所述目标版本号对应的目标版本服务,并向所述api server发送删除成功指令,其中,所述删除成功指令用于指示所述api server已删除所述目标版本服务;
40、通过所述api server响应于所述集群状态管理器发送的所述删除成功指令,向所述集群状态管理器发送存储文件删除指令;
41、通过所述集群状态管理器响应于所述api server发送的存储文件删除指令,根据所述目标版本服务对应的目标参数信息,确定与所述目标版本服务进行关联处理的目标存储文件,并将所述目标存储文件删除。
42、第三方面,本技术实施例提供了一种计算机可读存储介质,包括:计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现如第二方面所示的路由同步方法。
43、本技术实施例提供的技术方案与现有技术相比具有如下优点:
44、本公开实施例提供一种基于k8s集群的数据存储管理方法,应用于基于k8s集群的数据存储管理系统,系统包括集群控制节点,通过集群控制节点接收针对预设服务的服务删除指令,其中,服务删除指令携带预设服务的目标版本号;响应于服务删除指令,删除目标版本号对应的目标版本服务;在确定目标版本服务被删除的情况下,确定与目标版本服务进行关联处理的目标存储文件,并将目标存储文件删除,其中,目标存储文件用于存储目标版本服务对应的目标配置文件的配置内容。在上述过程中,能够保证当存在预设服务的目标版本服务被删除时,能够快速的确定与目标版本服务进行关联处理的目标存储文件,并自动的将该目标存储文件删除,解决了现有技术中当目标版本服务已经被删除时,其对应的目标存储文件还未被删除,导致存在大量的存储文件,从而会占用本地大量的存储资源的问题。
1.一种基于k8s集群的数据存储管理系统,其特征在于,所述k8s集群的数据存储管理系统包括:集群控制节点;
2.根据权利要求1所述的系统,其特征在于,所述集群控制节点包括:apiserver和集群状态管理器;
3.根据权利要求2所述的系统,其特征在于,所述集群控制节点还包括:关联控制器;
4.根据权利要求3所述的系统,其特征在于,所述关联控制器,具体被配置为:
5.根据权利要求4所述的系统,其特征在于,所述关联控制器,具体被配置为:
6.根据权利要求2所述的系统,其特征在于,所述集群状态管理器,具体被配置为:
7.根据权利要求2所述的系统,其特征在于,所述关联控制器,还被配置为:
8.一种基于k8s集群的数据存储管理方法,其特征在于,应用于基于k8s集群的数据存储管理系统,所述基于k8s集群的数据存储管理系统包括:集群控制节点;所述方法包括:
9.根据权利要求8所述的方法,其特征在于,所述集群控制节点包括:apiserver和集群状态管理器;所述方法包括:
10.一种计算机可读存储介质,其特征在于,包括:计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现如权利要求8至9中任一项所述的基于k8s集群的数据存储管理方法。
