本申请实施例涉及容器集群技术,涉及但不限于一种基于容器集群的任务处理方法及装置、k8s集群、存储介质。
背景技术:
1、应用程序,例如与业务相关的应用程序,在使用过程中需要进行功能拓展和/或增强,以实现更多的功能和更强的性能。
2、目前,对于已有的应用程序,如果想对其进行功能拓展和增强,通常是对原应用程序进行修改或者集成一个成熟的实现方案以实现该功能。但是无论是采用哪种方式,都需要对原应用程序进行修改,这往往会增加原应用程序的复杂性。
技术实现思路
1、有鉴于此,本申请实施例提供一种基于容器集群的任务处理方法及装置、k8s集群、存储介质,能够在不对原应用程序改动的情况下拓展和/或增强应用程序的功能。本申请实施例提供的基于容器集群的任务处理方法及装置、k8s集群、存储介质是这样实现的:
2、第一方面,本申请实施例提供一种基于容器集群的任务处理方法,应用于k8s集群中的管理节点,所述管理节点与所述k8s集群中的其它节点通信连接,所述其它节点上部署有容器组并在所述容器组中运行至少一个应用程序的插件,所述方法包括:
3、接收任务处理请求,所述任务处理请求是针对目标应用程序而发送的,所述至少一个应用程序包括所述目标应用程序;
4、基于预先建立的应用程序与插件之间的对应关系,将所述任务处理请求转发至与所述目标应用程序的插件对应的目标节点,以使所述目标节点运行所述插件以处理所述任务处理请求,所述目标节点为所述其它节点中的至少一个节点。
5、在一些实施例中,不同的插件用于处理不同的任务,所述基于预先建立的应用程序与插件之间的对应关系,将所述任务处理请求转发至与所述目标应用程序的插件对应的目标节点,包括:
6、基于预先建立的所述应用程序与不同插件之间的对应关系,将当前任务处理请求转发至与所述目标应用程序的目标插件对应的目标节点,以使所述目标节点中的目标插件处理所述当前任务。
7、在一些实施例中,所述接收任务处理请求之前,所述方法还包括:
8、获取第一信息和第二信息,并基于所述第一信息和所述第二信息封装不同的api接口,其中,所述第一信息为与节点相关的信息,所述第二信息为与容器组中运行的应用程序相关的信息;
9、向所述插件开放所述api接口,以使所述插件调用所述第一信息和所述第二信息。
10、在一些实施例中,所述接收任务处理请求之前,所述方法还包括:
11、获取所述插件的镜像文件和第三信息,所述第三信息为与所述插件相关的信息;
12、将所述插件的镜像文件存储至所述k8s集群的节点中;
13、展示所述第三信息。
14、在一些实施例中,所述接收任务处理请求之前,所述方法还包括:
15、建立所述应用程序与所述插件之间的对应关系。
16、在一些实施例中,所述第三信息包括所述插件的配置模板,所述建立所述应用程序与所述插件之间的对应关系,包括:
17、接收针对当前应用程序的插件配置命令,所述插件配置命令用于为所述当前应用程序配置至少一个插件;
18、向所述当前应用程序发送针对当前插件的权限需求请求;
19、在获取针对所述权限需求请求的授权回复以及针对所述配置模板的配置信息后,建立所述当前应用程序与所述当前插件之间的对应关系。
20、在一些实施例中,所述建立所述当前应用程序与所述当前插件之间的对应关系之后,所述方法还包括:
21、生成第四信息,所述第四信息包含所述当前应用程序与所述当前插件之间对应关系;
22、将所述第四信息和所述配置信息同步至所述当前插件。
23、在一些实施例中,所述k8s集群中存储有与所述应用程序操作相关的最小资源单元,针对需要调用所述最小资源单元的第一插件,所述方法还包括:
24、在所述第一插件获取所述应用程序的完全操作权限的情况下,向所述第一插件开放所述最小资源单元。
25、在一些实施例中,所述k8s集群中存储有与所述应用程序相关的文件,针对需要读取所述文件的第二插件,所述方法还包括:
26、在所述第二插件关联有所述文件的存储路径的情况下,向所述第二插件开放所述存储路径下所述文件的读取功能。
27、第二方面,本申请实施例提供一种基于容器集群的任务处理装置,应用于k8s集群中的管理节点,所述管理节点与所述k8s集群中的其它节点通信连接,所述其它节点上部署容器组并在所述容器组中运行至少一个应用程序的插件,所述装置包括:
28、请求接收模块,用于接收任务处理请求,所述任务处理请求是针对目标应用程序而发送的,所述至少一个应用程序包括所述目标应用程序;
29、任务转发模块,用于基于预先建立的应用程序与插件之间的对应关系,将所述任务处理请求转发至与所述目标应用程序的插件对应的目标节点,以使所述目标节点运行所述插件以处理所述任务处理请求,所述目标节点为所述其它节点中的至少一个节点。
30、第三方面,本申请实施例提供一种k8s集群,所述集群包括通信连接的管理节点和其它节点,所述其它节点上部署有容器组并在所述容器组中运行至少一个应用程序的插件,其中:
31、所述管理节点用于接收任务处理请求,所述任务处理请求是针对目标应用程序而发送的,所述至少一个应用程序包括所述目标应用程序,基于预先建立的应用程序与插件之间的对应关系,将所述任务处理请求转发至与所述目标应用程序的插件对应的目标节点,所述目标节点为所述其它节点中的至少一个节点;
32、所述其它节点中的目标节点用于接收所述任务处理请求,通过在目标容器组中运行与所述目标应用程序对应的插件以处理所述任务处理请求。
33、在一些实施例中,所述目标容器组还用于运行所述目标应用程序。
34、在一些实施例中,所述目标节点还部署有其它容器组,所述其它容器组用于运行所述目标应用程序。
35、第四方面,本申请实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本申请实施例所述的方法。
36、第五方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本申请实施例提供的所述的方法。
37、本申请实施例所提供的基于容器集群的任务处理方法及装置、k8s集群、存储介质,在接收针对所述容器组中的目标应用程序而发送的任务处理请求后,能够基于预先建立的目标应用程序与插件之间的对应关系,将该任务处理请求转发至存储有插件的节点,从而使该节点中的插件处理该任务处理请求,因而能够在不对应用程序进行修改的情况下,也能够通过插件处理相应的任务。这样,实现了在不对原应用程序改动的情况下拓展和/或增强应用程序的功能,解决背景技术中所提出的技术问题。
1.一种基于容器集群的任务处理方法,其特征在于,应用于k8s集群中的管理节点,所述管理节点与所述k8s集群中的其它节点通信连接,所述其它节点上部署有容器组并在所述容器组中运行至少一个应用程序的插件,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,不同的插件用于处理不同的任务,所述基于预先建立的应用程序与插件之间的对应关系,将所述任务处理请求转发至与所述目标应用程序的插件对应的目标节点,包括:
3.根据权利要求1所述的方法,其特征在于,所述接收任务处理请求之前,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述接收任务处理请求之前,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述接收任务处理请求之前,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,所述第三信息包括所述插件的配置模板,所述建立所述应用程序与所述插件之间的对应关系,包括:
7.根据权利要求6所述的方法,其特征在于,所述建立所述当前应用程序与所述当前插件之间的对应关系之后,所述方法还包括:
8.根据权利要求1所述的方法,其特征在于,所述k8s集群中存储有与所述应用程序操作相关的最小资源单元,针对需要调用所述最小资源单元的第一插件,所述方法还包括:
9.根据权利要求1所述的方法,其特征在于,所述k8s集群中存储有与所述应用程序相关的文件,针对需要读取所述文件的第二插件,所述方法还包括:
10.一种基于容器集群的任务处理装置,其特征在于,应用于k8s集群中的管理节点,所述管理节点与所述k8s集群中的其它节点通信连接,所述其它节点上部署容器组并在所述容器组中运行至少一个应用程序的插件,所述装置包括:
11.一种k8s集群,其特征在于,所述集群包括通信连接的管理节点和其它节点,所述其它节点上部署有容器组并在所述容器组中运行至少一个应用程序的插件,其中:
12.根据权利要求11所述的k8s集群,其特征在于,所述目标容器组还用于运行所述目标应用程序。
13.根据权利要求11所述的k8s集群,其特征在于,所述目标节点还部署有其它容器组,所述其它容器组用于运行所述目标应用程序。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至9任一项所述的方法。