一种基于容器的工业APP全生命周期管理方法与流程

文档序号:36507504发布日期:2023-12-28 21:03阅读:42来源:国知局
一种基于容器的工业的制作方法

本申请涉及应用管理,尤其涉及一种基于容器的工业app(application,应用程序)全生命周期管理方法。


背景技术:

1、当前工业互联网业态下,各种各样工业类系统或应用如雨后春笋般的涌现出来,而工业应用部署情况变得更加复杂多样,存在着一个系统包含多个应用场景,无法独立发布,用户无法独立订阅和使用模块级应用的情况,这就导致无法方便地进行应用的全生命周期管理。

2、随着容器技术的快速发展成熟,工业应用的部署使用迎来了技术升级。容器技术是一种轻量化软件打包技术,工业应用与容器技术结合使得应用的部署和推广变得越来越方便。

3、但是不同容器编排系统在使用时存在着较大差异性,对于应用发布者来说,应用的部署以及后续生命周期依然存在着较高复杂性。


技术实现思路

1、为至少在一定程度上克服相关技术中不同容器编排系统在使用时存在着较大差异性,应用的部署以及后续生命周期依然存在着较高复杂性的问题,本申请提供一种基于容器的工业app全生命周期管理方法。

2、本申请的方案如下:

3、一种基于容器的工业app全生命周期管理方法,包括:

4、通过多系统配置模块进行多系统信息维护,并配置各应用的运行系统的环境信息,以用于进行应用程序包上传;

5、通过app配置模块提供应用发布时的接入信息配置;

6、通过任务模块监听部署任务消息,在接收到部署任务消息时,根据所述部署任务消息生成应用部署任务;

7、通过执行模块根据所述应用部署任务在预先建立的本地镜像库中检查是否存在相应的镜像文件;在本地镜像库中存在相应的镜像文件时,根据所述应用部署任务在预先建立的应用模板库中选择相应的应用模板进行匹配;根据所述应用部署任务确定镜像部署方式;根据确定的部署方式查询对应部署模板,生成部署文件,执行部署引擎对所述部署文件进行部署。

8、优选地,所述部署任务消息中至少包括:应用代码、应用版本、域名、端口、部署方式、应用特征信息和程序包存放路径。

9、优选地,所述方法还包括:

10、在本地镜像库中不存在相应的镜像文件时,获取程序包存放路径;

11、根据程序包存放路径,拷贝应用程序包至镜像制作目录后并解压;

12、根据应用特征信息及预设的模块匹配规则,选择相应的应用模板并生成制作容器镜像的脚本文件;

13、将所述脚本文件移动至应用程序包解压后的文件目录;

14、在应用程序包解压后的文件目录下构建镜像文件;

15、上传构建的镜像至所述本地镜像库。

16、优选地,所述根据所述应用部署任务在预先建立的本地镜像库中检查是否存在相应的镜像文件,包括:

17、根据应用代码和应用版本在预先建立的本地镜像库中检查是否存在相应的镜像文件。

18、优选地,所述应用模板库中至少包括:web类模板和非web类模板;

19、所述根据所述应用部署任务在预先建立的应用模板库中选择相应的应用模板进行匹配,包括:

20、根据应用特征信息在预先建立的应用模板库中选择相应的应用模板进行匹配;所述应用特征信息至少包括:开发语言、是否web应用和启动/停止方式。

21、优选地,所述根据所述应用部署任务确定镜像部署方式,包括:

22、若部署方式为集群方式则确定镜像部署方式为k8s部署方式;

23、若部署方式为非集群方式则确定镜像部署方式为compose独立部署部署方式;

24、所述根据确定的部署方式查询对应部署模板,生成部署文件,包括:

25、根据确定的部署方式查询对应部署模板,根据域名、端口以及镜像文件的标签、生成部署文件。

26、优选地,所述多系统配置模块还用于进行应用升级;

27、所述方法还包括:

28、通过任务模块监听升级任务消息,在接收到升级任务消息时,根据所述升级任务消息生成应用升级任务;所述升级任务消息中的应用代码继承应用对应部署任务消息中的应用代码,且应用版本自动加1;

29、通过执行模块根据所述应用升级任务在预先建立的本地镜像库中检查是否存在相应的镜像文件;在本地镜像库中存在相应的镜像文件时,根据所述应用升级任务在预先建立的应用模板库中选择相应的应用模板进行匹配;根据所述应用升级任务确定镜像部署方式;根据确定的部署方式查询对应部署模板,生成部署文件,执行部署引擎完成部署。

30、优选地,所述多系统配置模块还用于进行应用扩容/缩容;

31、所述方法还包括:

32、通过任务模块监听扩容/缩容任务消息,在接收到扩容/缩容任务消息时,读取扩容/缩容任务消息中的应用代码、应用版本和容器副本信息,生成扩容/缩容任务;

33、通过执行模块调用k8s副本控制器,集群监控各节点资源信息,对扩容/缩容任务对应的节点进行扩容/缩容;检查确认应用部署在线副本数量,并通知返回部署成功。

34、优选地,所述多系统配置模块还用于进行应用销毁;

35、所述方法还包括:

36、通过任务模块监听销毁任务消息,在接收到销毁任务消息时,获取销毁任务消息中的应用代码和应用版本,生成销毁任务;

37、通过执行模块判断是否存在容器实例,若存在容器实例则启动销毁执行器,判断应用部署方式;若应用为集群部署方式,则通过应用代码和应用版本查找到集群部署文件,执行集群销毁操作。若应用为非集群部署方式,则通过应用代码和应用版本查找独立部署文件,远程登陆部署节点,执行容器销毁操作。

38、本申请提供的技术方案可以包括以下有益效果:本申请中的基于容器的工业app全生命周期管理方法,包括:通过多系统配置模块进行多系统信息维护,并配置各应用的运行系统的环境信息,以用于进行应用程序包上传;通过app配置模块提供应用发布时的接入信息配置;通过任务模块监听部署任务消息,在接收到部署任务消息时,根据部署任务消息生成应用部署任务;通过执行模块根据应用部署任务在预先建立的本地镜像库中检查是否存在相应的镜像文件;在本地镜像库中存在相应的镜像文件时,根据应用部署任务在预先建立的应用模板库中选择相应的应用模板进行匹配;根据应用部署任务确定镜像部署方式;根据确定的部署方式查询对应部署模板,生成部署文件,执行部署引擎根据部署文件进行部署。本申请中的技术方案,预先建立了应用模板库,并在应用模板库中上传、发布应用模板。采用本申请中的技术方案进行部署时,应用发布者只需通过选择应用模板库中的对应的应用模板,发起部署任务消息,后续流程系统可以自行完成,本申请中的技术方案简化了因不同容器编排系统在使用时存在的差异性带来的复杂操作,统一了基于不同应用模板运行环境的应用发布,使得应用部署变得简单、易操作。

39、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。



技术特征:

1.一种基于容器的工业app全生命周期管理方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述部署任务消息中至少包括:应用代码、应用版本、域名、端口、部署方式、应用特征信息和程序包存放路径。

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:

4.根据权利要求2所述的方法,其特征在于,所述根据所述应用部署任务在预先建立的本地镜像库中检查是否存在相应的镜像文件,包括:

5.根据权利要求2所述的方法,其特征在于,所述应用模板库中至少包括:web类模板和非web类模板;

6.根据权利要求2所述的方法,其特征在于,所述根据所述应用部署任务确定镜像部署方式,包括:

7.根据权利要求2所述的方法,其特征在于,所述多系统配置模块还用于进行应用升级;

8.根据权利要求2所述的方法,其特征在于,所述多系统配置模块还用于进行应用扩容/缩容;

9.根据权利要求2所述的方法,其特征在于,所述多系统配置模块还用于进行应用销毁;


技术总结
本申请涉及一种基于容器的工业APP全生命周期管理方法,包括:通过多系统配置模块进行多系统信息维护,并配置各应用的运行系统的环境信息,以用于进行应用程序包上传;通过APP配置模块提供应用发布时的接入信息配置;通过任务模块监听部署任务消息,在接收到部署任务消息时,根据部署任务消息生成应用部署任务;通过执行模块根据应用部署任务在预先建立的本地镜像库中检查是否存在相应的镜像文件;在本地镜像库中存在相应的镜像文件时,根据应用部署任务在预先建立的应用模板库中选择相应的应用模板进行匹配;根据应用部署任务确定镜像部署方式;根据确定的部署方式查询对应部署模板,生成部署文件,执行部署引擎根据部署文件进行部署。

技术研发人员:王小波,陈小龙,宗磊
受保护的技术使用者:上海超算科技有限公司
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1