本发明涉及云服务,尤其涉及一种容器应用处理方法、装置、电子设备、存储介质和系统。
背景技术:
1、随着云计算技术飞速发展,在云服务场景下,可以通过容器编排系统(kubernetes,k8s)将提供云服务各功能应用程序进行容器化管理,以便于用户方便地享受云服务。
2、相关技术中,容器编排系统可以支持基本的容器部署、容器启动、容器存活检查以及容器异常自动恢复等技术,其中,在容器启动过程中,还可以支持存在依赖关系的容器应用的编排,以实现需要依赖其他容器应用的容器应用的正常启动。
3、但是,相关技术中,容器编排系统通常可以支持依赖一个容器应用的目标容器应用的编排与启动;同时,在依赖其他容器应用的目标容器应用的启动过程中,存在目标容器应用跨节点设备获取其他应用的运行状态信息,以及未编排容器应用的无效启动的情况,增大了容器应用启动过程中的网络资源和硬件资源的消耗。
技术实现思路
1、本公开提供一种容器应用处理方法、装置、电子设备、存储介质和系统,可以实现复杂容器应用依赖模式下的容器应用编排启动,并减少节点设备的网络资源和硬件资源消耗。本公开的技术方案如下:
2、根据本公开的第一方面,提供了一种容器应用处理方法,所述方法应用于节点设备集群中的节点设备,包括:
3、接收应用编排管理设备发送的应用编排信息,所述应用编排信息中包含多个待运行容器应用,以及所述多个待运行容器应用之间的依赖关系;
4、在确定所述节点设备中部署有所述待运行容器应用,且未部署所述待运行容器应用所依赖的多个目标待运行容器应用的情况下,在所述节点设备的数据库中查找每个所述目标待运行容器应用的运行状态信息,所述目标待运行容器应用的运行状态信息是由目标节点设备同步至所述节点设备中的,所述目标节点设备为所述节点设备集群中,部署所述目标待运行容器应用的节点设备,所述目标节点设备用于监听所述目标待运行容器应用的运行状态;
5、若每个所述目标待运行容器应用的运行状态信息指示每个所述目标待运行容器应用正常运行,则启动所述待运行容器应用。
6、根据本公开的第二方面,提供了一种容器应用处理方法,所述方法应用于应用编排管理设备,包括:
7、基于在应用编排界面中获取到的应用编排操作,确定多个待运行容器应用以及所述多个待运行容器应用之间的依赖关系,并组合多个待运行容器应用以及所述多个待运行容器应用之间的依赖关系,得到应用编排信息;
8、将所述应用编排信息发送至节点设备集群中的每个节点设备,其中,部署有所述待运行容器应用的节点设备,用于在确定所述待运行容器应用所依赖的目标待运行容器应用成功运行的情况下,启动所述待运行容器应用。
9、根据本公开的第三方面,提供了一种容器应用处理装置,所述装置为节点设备集群中的节点设备,包括:
10、接收模块,被配置为接收应用编排管理设备发送的应用编排信息,所述应用编排信息中包含多个待运行容器应用,以及所述多个待运行容器应用之间的依赖关系;
11、查找模块,被配置为在确定所述节点设备中部署有所述待运行容器应用,且未部署所述待运行容器应用所依赖的多个目标待运行容器应用的情况下,在所述节点设备的数据库中查找每个所述目标待运行容器应用的运行状态信息,所述目标待运行容器应用的运行状态信息是由目标节点设备同步至所述节点设备中的,所述目标节点设备为所述节点设备集群中,部署所述目标待运行容器应用的节点设备,所述目标节点设备用于监听所述目标待运行容器应用的运行状态;
12、启动模块,被配置为若每个所述目标待运行容器应用的运行状态信息指示每个所述目标待运行容器应用正常运行,则启动所述待运行容器应用。
13、根据本公开的第四方面,提供了一种容器应用处理装置,所述装置为应用编排管理设备,包括:
14、确定模块,被配置为基于在应用编排界面中获取到的应用编排操作,确定多个待运行容器应用以及所述多个待运行容器应用之间的依赖关系,并组合多个待运行容器应用以及所述多个待运行容器应用之间的依赖关系,得到应用编排信息;
15、发送模块,被配置为将所述应用编排信息发送至节点设备集群中的每个节点设备,其中,部署有所述待运行容器应用的节点设备,用于在确定所述待运行容器应用所依赖的目标待运行容器应用成功运行的情况下,启动所述待运行容器应用。
16、根据本公开的第五方面,提供了一种电子设备,包括:
17、处理器;以及
18、存储程序的存储器,
19、其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行如第一方面或者第二方面所述的方法。
20、根据本公开的第六方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如第一方面或者第二方面所述的方法。
21、根据本公开的第七方面,提供了一种容器应用处理系统,所述容器应用处理系统包括节点设备集群,以及应用编排管理设备,
22、所述应用编排管理设备用于,基于在应用编排界面中获取到的应用编排操作,确定多个待运行容器应用以及所述多个待运行容器应用之间的依赖关系,并组合多个待运行容器应用以及所述多个待运行容器应用之间的依赖关系,得到应用编排信息,以及,将所述应用编排信息发送至节点设备集群中的每个节点设备;
23、节点设备集群中的每个节点设备用于,接收应用编排管理设备发送的应用编排信息,在确定所述节点设备中部署有所述待运行容器应用,且未部署所述待运行容器应用所依赖的多个目标待运行容器应用的情况下,在所述节点设备的数据库中查找每个所述目标待运行容器应用的运行状态信息,以及若每个所述目标待运行容器应用的运行状态信息指示每个所述目标待运行容器应用正常运行,则启动所述待运行容器应用,其中,所述目标待运行容器应用的运行状态信息是由目标节点设备同步至所述节点设备中的,所述目标节点设备为所述节点设备集群中,部署所述目标待运行容器应用的节点设备,所述目标节点设备用于监听所述目标待运行容器应用的运行状态。
24、本申请实施例中提供的容器应用处理方法、装置、电子设备、存储介质和系统,部署待运行容器应用的节点设备,在待运行容器应用所依赖的多个目标待运行容器应用未部署在本节点设备的情况下,可以在数据库中获取部署每个目标待运行容器应用的目标节点设备同步的,目标待运行容器应用的运行状态信息,以在确定待运行容器应用所依赖的多个目标待运行容器正常运行后,启动本节点设备中的待运行容器应用;一方面,提供了依赖多个容器应用的待运行容器应用的容器应用的编排启动方案,实现了复杂容器应用依赖模式下的容器应用编排启动;另一方面,部署待运行容器应用的节点设备,无需主动向其他节点设备获取待运行容器所依赖的容器应用的运行状态信息,可以减少节点设备在容器应用编排启动过程中的网络资源开销;再一方面,节点设备不会启动未被编排的容器应用,可以减少节点设备的硬件资源消耗。
1.一种容器应用处理方法,其特征在于,所述方法应用于节点设备集群中的节点设备,包括:
2.如权利要求1所述的容器应用处理方法,其特征在于,所述方法还包括:
3.如权利要求2所述的容器应用处理方法,其特征在于,所述方法还包括:
4.如权利要求1所述的容器应用处理方法,其特征在于,在所述节点设备的数据库中查找所述目标待运行容器应用的运行状态信息之前,所述方法还包括:
5.一种容器应用处理方法,其特征在于,所述方法应用于应用编排管理设备,包括:
6.如权利要求5所述的容器应用处理方法,其特征在于,所述基于在应用编排界面中获取到的应用编排操作,确定多个待运行容器应用以及所述多个待运行容器应用之间的依赖关系,包括:
7.如权利要求5所述的容器应用处理方法,其特征在于,所述方法还包括:
8.一种容器应用处理装置,其特征在于,所述装置为节点设备集群中的节点设备,包括:
9.一种容器应用处理装置,其特征在于,所述装置为应用编排管理设备,包括:
10.一种电子设备,其特征在于,包括:
11.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行如权利要求1-4,或者权利要求5-7中任一项所述的方法。
12.一种容器应用处理系统,其特征在于,所述容器应用处理系统包括节点设备集群,以及应用编排管理设备,