应用部署方法、装置及计算机可读存储介质制造方法及图纸

技术编号:24010097 阅读:66 留言:0更新日期:2020-05-02 01:27
本发明专利技术公开了一种应用部署方法,该方法包括:获取由多个待部署应用的可执行程序打包得到的多个Docker镜像;将多个Docker镜像保存至Docker镜像仓库;获取用户在客户端选取的与多个待部署应用对应的多个Helm应用模板;将多个Helm应用模板保存至应用模板仓库;获取对多个Helm应用模板的集合部署任务信息,根据集合部署任务信息创建集合部署任务;接收执行集合部署任务的部署指令,基于部署指令调用Helm CLI向Kubernetes集群发送部署请求,以使Kubernetes集群中的kube‑apiserver调用Helm的Tiller,所述Tiller基于应用模板仓库中的Helm应用模板和Docker镜像对多个待部署应用进行部署。本发明专利技术还提出一种应该部署装置以及一种计算机可读存储介质。本发明专利技术可以提高对多个应用进行部署的效率。

Application deployment method, device and computer readable storage medium

【技术实现步骤摘要】
应用部署方法、装置及计算机可读存储介质
本专利技术涉及计算机
,尤其涉及一种应用部署方法、装置及计算机可读存储介质。
技术介绍
随着业务容器化以及系统架构向微服务架构转变,将巨大的单体应用分解为多个服务的方式已成为一种开发趋势,这种方式分解了单体应用的复杂性,使每个微服务都可以独立部署和扩展,有利于敏捷开发和快速迭代。然而,在将巨大的单体应用分解为多个服务时,由于应用被拆分成多个服务(或组件),导致服务数量大幅增加,而每个服务通常有自己的资源文件,因此在部署时需要管理、编辑、安装每个服务所需的各种文件(镜像、依赖等),这使得目前在做较多数量的服务部署时效率不高。
技术实现思路
本专利技术提供一种应用部署方法、装置及计算机可读存储介质,其主要目的在于提高对多个应用进行部署的效率。为实现上述目的,本专利技术还提供一种应用部署方法,该方法包括:获取由多个待部署应用的可执行程序打包得到的多个Docker镜像;将所述多个Docker镜像保存至Docker镜像仓库;获取用户在客户端选取的与所述多个待部署应用对应的多个Helm应用模板,每个Helm应用模板包含对应的Docker镜像的信息;将所述多个Helm应用模板保存至应用模板仓库;获取对所述多个Helm应用模板的集合部署任务信息,根据所述集合部署任务信息创建集合部署任务;接收执行所述集合部署任务的部署指令,基于所述部署指令调用HelmCLI向Kubernetes集群发送部署请求,以使所述Kubernetes集群中的kube-apiserver调用Helm的Tiller,所述Tiller基于所述应用模板仓库中的所述Helm应用模板和所述Docker镜像对所述多个待部署应用进行部署。可选地,所述获取用户在客户端选取的与所述多个待部署应用对应的多个Helm应用模板包括:获取用户从应用模板仓库包含的预设应用模板中选取的多个应用模板为所述待部署应用对应的多个Helm应用模板;或者获取用户从应用模板仓库包含的预设应用模板中选取的至少一个应用模板为待修改应用模板,获取用户基于所述待修改应用模板进行修改之后得到的多个应用模板为所述待部署应用对应的Helm应用模板。可选地,所述获取由多个待部署应用的可执行程序打包得到的多个Docker镜像包括:若检测到向代码仓库提交所述多个待部署应用的源码的提交指令,对所述多个待部署应用的源码进行质量检测;若所述多个待部署应用的源码通过所述质量检测,对所述多个待部署应用的源码进行编译并将编译后得到的多个可执行程序打包成多个Docker镜像。可选地,所述获取对所述多个Helm应用模板的集合部署任务信息包括:获取集合部署任务文件,所述集合部署任务文件为XML格式的文件;解析所述集合部署任务文件,得到对所述多个Helm应用模板的集合部署任务信息。可选地,所述方法还包括:接收对所述集合部署任务的显示指令,显示所述集合部署任务的部署进度。此外,为实现上述目的,本专利技术还提供一种应用部署装置,该装置包括存储器和处理器,所述存储器中存储有可在所述处理器上运行的应用部署程序,所述应用部署程序被所述处理器执行时实现如下步骤:获取由多个待部署应用的可执行程序打包得到的多个Docker镜像;将所述多个Docker镜像保存至Docker镜像仓库;获取用户在客户端选取的与所述多个待部署应用对应的多个Helm应用模板,每个Helm应用模板包含对应的Docker镜像的信息;将所述多个Helm应用模板保存至应用模板仓库;获取对所述多个Helm应用模板的集合部署任务信息,根据所述集合部署任务信息创建集合部署任务;接收执行所述集合部署任务的部署指令,基于所述部署指令调用HelmCLI向Kubernetes集群发送部署请求,以使所述Kubernetes集群中的kube-apiserver调用Helm的Tiller,所述Tiller基于所述应用模板仓库中的所述Helm应用模板和所述Docker镜像对所述多个待部署应用进行部署。可选地,所述获取用户在客户端选取的与所述多个待部署应用对应的多个Helm应用模板包括:获取用户从应用模板仓库包含的预设应用模板中选取的多个应用模板为所述待部署应用对应的多个Helm应用模板;或者获取用户从应用模板仓库包含的预设应用模板中选取的至少一个应用模板为待修改应用模板,获取用户基于所述待修改应用模板进行修改之后得到的多个应用模板为所述待部署应用对应的Helm应用模板。可选地,所述获取由多个待部署应用的可执行程序打包得到的多个Docker镜像包括:若检测到向代码仓库提交所述多个待部署应用的源码的提交指令,对所述多个待部署应用的源码进行质量检测;若所述多个待部署应用的源码通过所述质量检测,对所述多个待部署应用的源码进行编译并将编译后得到的多个可执行程序打包成多个Docker镜像。可选地,所述获取对所述多个Helm应用模板的集合部署任务信息包括:获取集合部署任务文件,所述集合部署任务文件为XML格式的文件;解析所述集合部署任务文件,得到对所述多个Helm应用模板的集合部署任务信息。可选地,所述应用部署程序可被所述处理器执行,还实现如下步骤:接收对所述集合部署任务的显示指令,显示所述集合部署任务的部署进度。此外,为实现上述目的,本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有应用部署程序,所述应用部署程序可被一个或者多个处理器执行,以实现如上所述的应用部署方法的步骤。本专利技术提出的应用部署方法、装置及计算机可读存储介质,获取由多个待部署应用的可执行程序打包得到的多个Docker镜像;将所述多个Docker镜像保存至Docker镜像仓库;获取用户在客户端选取的与所述多个待部署应用对应的多个Helm应用模板,每个Helm应用模板包含对应的Docker镜像的信息;将所述多个Helm应用模板保存至应用模板仓库;获取对所述多个Helm应用模板的集合部署任务信息,根据所述集合部署任务信息创建集合部署任务;接收执行所述集合部署任务的部署指令,基于所述部署指令调用HelmCLI向Kubernetes集群发送部署请求,以使所述Kubernetes集群中的kube-apiserver调用Helm的Tiller,所述Tiller基于所述应用模板仓库中的所述Helm应用模板和所述Docker镜像对所述多个待部署应用进行部署。由于用户选取Helm应用模板进行应用的部署,使得用户可以方便快捷的操作,无需通过命令行的形式进行部署;同时由于Helm应用模板是将运行应用所需的资源打包而成的模板,因此这种形式使得每个待部署应用的文件统一好管理,有利于快速应用的快速部署;并且通过将多个待部署应用组合成一个部署任务进行部署,无需将每个待部署应用分别部署,进一步提高了部署的速度,实现了提高对多个应用进行部署的效率的目的。本文档来自技高网...

【技术保护点】
1.一种应用部署方法,其特征在于,所述方法包括:/n获取由多个待部署应用的可执行程序打包得到的多个Docker镜像;/n将所述多个Docker镜像保存至Docker镜像仓库;/n获取用户在客户端选取的与所述多个待部署应用对应的多个Helm应用模板,每个Helm应用模板包含对应的Docker镜像的信息;/n将所述多个Helm应用模板保存至应用模板仓库;/n获取对所述多个Helm应用模板的集合部署任务信息,根据所述集合部署任务信息创建集合部署任务;/n接收执行所述集合部署任务的部署指令,基于所述部署指令调用Helm CLI向Kubernetes集群发送部署请求,以使所述Kubernetes集群中的kube-apiserver调用Helm的Tiller,所述Tiller基于所述应用模板仓库中的所述Helm应用模板和所述Docker镜像对所述多个待部署应用进行部署。/n

【技术特征摘要】
1.一种应用部署方法,其特征在于,所述方法包括:
获取由多个待部署应用的可执行程序打包得到的多个Docker镜像;
将所述多个Docker镜像保存至Docker镜像仓库;
获取用户在客户端选取的与所述多个待部署应用对应的多个Helm应用模板,每个Helm应用模板包含对应的Docker镜像的信息;
将所述多个Helm应用模板保存至应用模板仓库;
获取对所述多个Helm应用模板的集合部署任务信息,根据所述集合部署任务信息创建集合部署任务;
接收执行所述集合部署任务的部署指令,基于所述部署指令调用HelmCLI向Kubernetes集群发送部署请求,以使所述Kubernetes集群中的kube-apiserver调用Helm的Tiller,所述Tiller基于所述应用模板仓库中的所述Helm应用模板和所述Docker镜像对所述多个待部署应用进行部署。


2.如权利要求1所述的应用部署方法,其特征在于,所述获取用户在客户端选取的与所述多个待部署应用对应的多个Helm应用模板包括:
获取用户从应用模板仓库包含的预设应用模板中选取的多个应用模板为所述待部署应用对应的多个Helm应用模板;或者
获取用户从应用模板仓库包含的预设应用模板中选取的至少一个应用模板为待修改应用模板,获取用户基于所述待修改应用模板进行修改之后得到的多个应用模板为所述待部署应用对应的Helm应用模板。


3.如权利要求1所述的应用部署方法,其特征在于,所述获取由多个待部署应用的可执行程序打包得到的多个Docker镜像包括:
若检测到向代码仓库提交所述多个待部署应用的源码的提交指令,对所述多个待部署应用的源码进行质量检测;
若所述多个待部署应用的源码通过所述质量检测,对所述多个待部署应用的源码进行编译并将编译后得到的多个可执行程序打包成多个Docker镜像。


4.如权利要求1所述的应用部署方法,其特征在于,所述获取对所述多个Helm应用模板的集合部署任务信息包括:
获取集合部署任务文件,所述集合部署任务文件为XML格式的文件;
解析所述集合部署任务文件,得到对所述多个Helm应用模板的集合部署任务信息。


5.如权利要求1至4中任一项所述的应用部署方法,其特征在于,所述方法还包括:
接收对所述集合部署任务的显示指令,显示所述集合部署任务的部署进度。


6.一种应用部署装置,其特...

【专利技术属性】
技术研发人员:琚汝强
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1