CN110515628A - 应用部署方法及装置 - Google Patents
应用部署方法及装置 Download PDFInfo
- Publication number
- CN110515628A CN110515628A CN201910734844.1A CN201910734844A CN110515628A CN 110515628 A CN110515628 A CN 110515628A CN 201910734844 A CN201910734844 A CN 201910734844A CN 110515628 A CN110515628 A CN 110515628A
- Authority
- CN
- China
- Prior art keywords
- application
- template
- application template
- kubernetes cluster
- disposition instructions
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 230000000712 assembly Effects 0.000 claims description 22
- 238000000429 assembly Methods 0.000 claims description 22
- 230000007613 environmental effect Effects 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 9
- 230000000007 visual effect Effects 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 6
- 230000009466 transformation Effects 0.000 claims description 6
- 241000208340 Araliaceae Species 0.000 claims description 5
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 claims description 5
- 235000003140 Panax quinquefolius Nutrition 0.000 claims description 5
- 235000008434 ginseng Nutrition 0.000 claims description 5
- 238000009434 installation Methods 0.000 abstract description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000001212 derivatisation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003760 hair shine Effects 0.000 description 1
- 230000035800 maturation Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种应用部署方法及装置,该方法包括:接收到应用部署指令时,检测第一存储区域中是否存在部署指令对应的应用模板,应用模板是按预设的编排方式对各个容器组件进行编排生成的;若第一存储区域中不存在该应用模板,则获取应用模板的存储路径信息,依据存储路径信息在第二存储区域中获取应用模板;对应用模板进行解析,将解析后的应用模板调度至与所述部署指令相对应的kubernetes集群,使所述kubernetes集群依据所述应用模板装载目标应用。能够获取预先生成的应用模板,并将该模板发送至相应的Kubernetes集群中进行应用安装,能够提高容器组件的安装效率,且能有效的避免组件安装错误带来的风险。
Description
技术领域
本发明涉及云计算技术领域,特别涉及一种应用部署方法及装置。
背景技术
随着云计算技术的不断成熟,容器技术也受到了各主流云计算平台的青睐,容器技术是一种比虚拟机技术更加节省计算资源也更加灵活的虚拟化技术。随着容器技术的发展,出现了很多容器编排引擎,用于对容器进行管理,例如主流的Kubernetes,Kubernetes作为容器应用的管理中心,提供了一系列的容器组件,例如Deployment组件、Pod组件、Service组件及Job组件等,用于对Kubernetes集群内部所有容器的生命周期进行控制。
经本发明人研究发现,随着云计算服务的规模不断扩大,功能不断增加,Kubernetes集群应用的容器组件的编排关系也越来越复杂,现有技术中,在需要对Kubernetes集群进行更新时,通常需要确定更新所需的容器组件,并将各个所需的容器组件一一进行安装,使得容器组件安装效率低下,且易导致安装错误。
发明内容
本发明所要解决的技术问题是提供一种应用部署方法,能够预先按预设的编排方式对各个容器组件进行编排,生成应用模板,当接收到部署指令时,获取该应用模板,并将该模板发送至相应的Kubernetes集群中,能够提高容器组件的安装效率,能有效的避免组件安装错误带来的风险。
本发明还提供了一种应用部署装置,用以保证上述方法在实际中的实现及应用。
一种应用部署方法,包括:
接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,所述应用模板是按预设的编排方式对各个容器组件进行编排生成的,所述应用模板包含基本信息文件、配置信息文件、服务暴露文件及环境变量文件;
若所述第一存储区域中不存在所述应用模板,则获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板;
对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,使所述kubernetes集群依据所述应用模板装载目标应用。
上述的方法,可选的,所述接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,包括:
接收用户依据预先设置的可视化页面发送的应用部署指令时,解析所述应用部署指令,得到所述应用部署指令的指令信息,所述指令信息包含kubernetes集群标识,及与所述kubernetes集群标识相对应的模板标识;
依据所述模板标识检测所述第一存储区域中是否存在与所述部署指令相对应的应用模板。
上述的方法,可选的,所述获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板,包括:
基于所述模板标识遍历预先建立的模板路径信息存储表,以获取所述应用模板的路径信息;
基于所述路径信息访问所述第二存储区域,得到与所述部署指令相对应的应用模板。
上述的方法,可选的,所述对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,包括:
对所述应用模板按预设的格式转换规则进行格式转换;
基于kubernetes集群标识在预先建立的kubernetes集群集合中,确定与所述部署指令相对应的kubernetes集群;
将所述格式转换后的应用模板调度至与所述部署指令相对应的kubernetes集群。
上述的方法,可选的,所述kubernetes集群依据所述应用模板装载目标应用的过程,包括:
依据所述应用模板中的配置信息文件包含各个应用参数及环境变量文件中的入参信息创建目标应用;
基于所述应用模板中的服务暴露文件设定所述目标应用的访问方式,以实现所述kubernetes集群装载所述目标应用。
一种应用部署装置,包括:
接收单元,用于接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,所述应用模板是按预设的编排方式对各个容器组件进行编排生成的,所述应用模板包含基本信息文件、配置信息文件、服务暴露文件及环境变量文件;
获取单元,用于当所述第一存储区域中不存在所述应用模板时,获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板;
调度单元,用于对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,使所述kubernetes集群依据所述应用模板装载目标应用。
上述的装置,可选的,所述接收单元,包括:
接收子单元,用于接收用户依据预先设置的可视化页面发送的应用部署指令时,解析所述应用部署指令,得到所述应用部署指令的指令信息,所述指令信息包含kubernetes集群标识,及与所述kubernetes集群标识相对应的模板标识;
检测子单元,用于依据所述模板标识检测所述第一存储区域中是否存在与所述部署指令相对应的应用模板。
上述的装置,可选的,所述获取单元,包括:
第一获取子单元,用于依据所述模板标识遍历预先建立的模板路径信息存储表,以获取所述应用模板的路径信息;
第二获取子单元,用于依据所述路径信息访问所述第二存储区域,得到与所述部署指令相对应的应用模板。
上述的装置,可选的,所述调度单元,包括:
格式转换子单元,用于对所述应用模板按预设的格式转换规则进行格式转换;
确定子单元,用于依据kubernetes集群标识在预先建立的kubernetes集群集合中,确定与所述部署指令相对应的kubernetes集群;
调度子单元,用于将所述格式转换后的应用模板调度至与所述部署指令相对应的kubernetes集群。
上述的装置,可选的,还包括:
创建单元,用于依据所述应用模板中的配置信息文件包含各个应用参数及环境变量文件中的入参信息创建目标应用;
设定单元,用于依据所述应用模板中的服务暴露文件设定所述目标应用的访问方式,以实现所述kubernetes集群装载所述目标应用。
与现有技术相比,本发明包括以下优点:
本发明提供了一种应用部署方法,包括:接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,所述应用模板是按预设的编排方式对各个容器组件进行编排生成的,所述应用模板包含基本信息文件、配置信息文件、服务暴露文件及环境变量文件;若所述第一存储区域中不存在所述应用模板,则获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板;对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,使所述kubernetes集群依据所述应用模板装载目标应用。能够获取预先生成的应用模板,并将该模板发送至相应的Kubernetes集群中进行应用安装,能够提高容器组件的安装效率,且能有效的避免组件安装错误带来的风险。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种应用部署方法的方法流程图;
图2为本发明提供的一种应用部署方法的又一方法流程图;
图3为本发明提供的一种应用部署方法的一示例图;
图4为本发明提供的一种应用部署装置的结构示意图;
图5为本发明提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
本发明实施例提供了一种应用部署方法,该方法可以应用在多种系统平台,其执行主体可以为客户端主机的处理器,该客户端主机可以是计算机终端或各种移动设备,所述方法的方法流程图如图1所示,具体包括:
S101:接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,所述应用模板是按预设的编排方式对各个容器组件进行编排生成的,所述应用模板包含基本信息文件、配置信息、服务暴露文件及环境变量文件。
本发明实施例提供的方法中,该第一存储区域可以为客户端主机内存中的存储区域。
本发明实施例提供的方法中,基本信息文件基本信息文件包含了应用的版本、创建时间、编写人等信息;配置信息文件包含了资源的详细描述,该文件可以包含了kubernetes的deployment及statefulset等容器组件,用于确定创建目标应用所需的cpu、内存、标签、容器镜像等信息;服务暴露文件用于将目标应用进行暴露。环境变量文件包含了创建目标应用时所需要的入参,在配置信息文件中cpu、内存可以不指定,而是通过环境变量的方式映射到应用中,从而来控制应用的配置。
S102:若所述第一存储区域中不存在所述应用模板,则获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板。
本发明实施例提供的方法中,依据该应用部署指令获取存储路径信息,每个存储路径信息对应的一个应用模板,可以在该存储路径信息表征的存储路径中获取该应用模板。
本发明实施例提供的方法中,第二存储区域可以为应用仓库,该应用仓库FTP服务器或任
S103:对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,使所述kubernetes集群依据所述应用模板装载目标应用。
本发明实施例提供的方法中,将taz格式的应用模板进行解压缩,并基于解压缩后的应用模板生成调度指令,将所述调度指令发送至该部署指令对应的kubernetes集群中,使该kubernetes集群依据该应用模板部署目标应用。
本发明实施例提供的应用部署方法,包括:接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,所述应用模板是按预设的编排方式对各个容器组件进行编排生成的,所述应用模板包含基本信息文件、配置信息文件、服务暴露文件及环境变量文件;若所述第一存储区域中不存在所述应用模板,则获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板;对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,使所述kubernetes集群依据所述应用模板装载目标应用。能够获取预先生成的应用模板,并将该模板发送至相应的Kubernetes集群中进行应用安装,能够提高容器组件的安装效率,且能有效的避免组件安装错误带来的风险。
本发明实施例提供的方法中,基于上述的实施过程,具体的,所述接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,包括:
接收用户依据预先设置的可视化页面发送的应用部署指令时,解析所述应用部署指令,得到所述应用部署指令的指令信息,所述指令信息包含kubernetes集群标识,及与所述kubernetes集群标识相对应的模板标识;
依据所述模板标识检测所述第一存储区域中是否存在与所述部署指令相对应的应用模板。
本发明实施例提供的方法中,可以通过预先设置在客户端主机上的可视化页面发送部署指令,或者通过与该客户端主机建立通信连接的终端设备向客户端主机发送应用部署命令。
本发明实施例提供的方法中,该指令信息中可以包含有一个或多个kubernetes集群标识,及与每个kubernetes集群标识相对应的模板标识,每个kubernetes集群标识对应的模板标识可以相同或不同。
具体的,若该kubernetes集群标识数量为多个,则依据各个kubernetes集群标识对应的模板标识,检测第一存储区域中是否存在各个kubernetes集群标识对应的应用模板;若存在各个kubernetes集群标识对应的应用模板,则将该应用模板发送至与其对应的kubernetes集群中;若存在部分kubernetes集群标识对应的模板,则将该部分kubernetes集群标识对应的模板发送至与其对应的kubernetes集群中,并继续在第二存储区域中,获取其余部分的kubernetes集群标识对应的应用模板。也可以直接获取各个应用模板的存储路径信息,以在第二存储区域中获取各个应用模板。
应用本发明实施例提供的方法,将预先生成的应用模板缓存在第一缓存区域中,即客户端主机的内存中,可以提高目标应用的创建效率。
本发明实施例提供的方法中,基于上述的实施过程,具体的,所述获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板,包括:
基于所述模板标识遍历预先建立的模板路径信息存储表,以获取所述应用模板的路径信息;
基于所述路径信息访问所述第二存储区域,得到与所述部署指令相对应的应用模板。
本发明实施例提供的方法中,该模板路径信息存储表中包含各个已生成的应用模板的路径信息,可以通过该路径信息在第二存储区域中获取应用模板;每个应用模板都可以具有一个路径信息。
本发明实施例提供的方法中,按预设的编排方式对各个容器组件进行编排,以生成应用模板时,将应用模板存放在第二存储区域中,并记录该应用模板的存储路径信息,当需要该应用模板创建应用时,可以依据该存储路径信息获取该应用模板,以创建应用。该应用模板能进行复用,有效的提高了的目标应用的创建效率,能避免因容器组件过多照成的编排错误。
本发明实施例提供的方法中,基于上述的实施过程,具体的,所述对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,如图2所示,可以包括:
S201:对所述应用模板按预设的格式转换规则进行格式转换。
本发明实施例提供的方法中,可以将taz格式的应用模板进行格式转换,使得kubernetes集群能够依据格式转换后的应用模板装载目标应用。
S202:基于kubernetes集群标识在预先建立的kubernetes集群集合中,确定与所述部署指令相对应的kubernetes集群。
本发明实施例提供的方法中,该kubernetes集群集合中包含各个kubernetes集群的地址VIP信息;通过kubernetes集群标识可以在该kubernetes集群集合中进行匹配,得到该kubernetes集群标识对应的地址VIP信息。该地址VIP信息指向的kubernetes集群为与所述部署指令相对应的kubernetes集群。
S203:将所述格式转换后的应用模板调度至与所述部署指令相对应的kubernetes集群。
本发明实施例提供的方法中,基于该地址VIP信息将该应用模板调度至与所述部署指令相对应的kubernetes集群。
应用本发明实施例提供的方法,将应用模板调度至与部署指令对应的kubernetes集群中,客户端主机能够为多个kubernetes集群发送调度模板,使得技术人员能够实现高效的对各个kubernetes集群进行调整,提供工作效率。
本发明实施例提供的方法中,基于上述的实施过程,具体的,所述kubernetes集群依据所述应用模板装载目标应用的过程,包括:
依据所述应用模板中的配置信息文件包含各个应用参数及环境变量文件中的入参信息创建目标应用;
基于所述应用模板中的服务暴露文件设定所述目标应用的访问方式,以实现所述kubernetes集群装载所述目标应用。
本发明实施例在实际应用过程中,具体的,可以包括如下步骤:
步骤a1、编写应用模板,所有文件编写完毕后,将应用模板打包成taz格式,便于传输、管理。
应用模板有固定的文件目录结构且用yaml格式编写的文件,通常包含应用的基本信息文件chart.yaml、配置信息文件Resource.yaml、服务暴露文件Service.yaml、环境变量文件values.yaml。
其中,基本信息文件chart.yaml包含了应用的版本、创建时间、编写人等信息;配置信息文件Resource.yaml包含了资源的详细描述,该文件通常包含了kubernetes的deployment、statefulset等标准组件,定义了cpu、内存、标签、容器镜像等信息,该文件主要是用来创建应用;服务暴露文件Service.yaml包含了资源访问的端口及访问方式,当应用部署完毕后并不是一个可以访问到的应用,而是需要通过service暴露出去,通过主机IP及端口的方式访问服务;环境变量文件values.yaml包含了应用创建所需要的入参,在配置信息文件Resource.yaml中cpu、内存可以不指定,而是通过环境变量的方式映射到应用中,从而控制目标应用的配置。
步骤a2、创建应用仓库。通过该应用仓库存放应用模板,该应用仓库可以是一个ftp服务器,也可以是任何一个可达的文件存储服务器。
步骤a3、在客户端主机中存储应用仓库的地址及各个应用模板的存放路径信息,客户端主机根据仓库地址及应用模板的存放路径信息可以下载相应版本的应用模板到客户端主机,当接收到应用部署指令时,解析该应用模板,然后将解析后的应用模板调度到指定kubernetes集群上,通过kubernetes的标准命令执行该模板,从而创建应用,应用创建完毕好后,Resource.yaml、Service.yaml中定义的deployment、statefulset、service等标准组件会按照values.yaml中定义的入参创建。为提高应用的创建效率,应用模板以提前缓存到客户端主机的内存中。
如图3所示,为本发明实施例提供的一示例图,该示例图示出了客户端主机301、应用仓库302及kubernetes集群303的架构图。客户端主机301可以与多个kubernetes集群303通信,客户端主机301通过在应用仓库302中获取应用模板,并通过指定kubernetes集群303的VIP,然后在相应的集群中创建应用。
可选的,同一个应用仓库可以被多个客户端所访问。
需要说明的是,同一个应用的模板可以存在多个版本,客户端可以选择任意的版本进行应用的创建。可以通过不同版本的应用模板进行目标应用的更新或升级。
上述各个具体的实现方式,及各个实现方式的衍生过程,均在本发明保护范围内。
与图1所述的方法相对应,本发明实施例还提供了一种应用部署装置,用于对图1中方法的具体实现,本发明实施例提供的应用部署装置可以应用计算机终端或各种移动设备中,其结构示意图如图4所示,具体包括:
接收单元401,用于接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,所述应用模板是按预设的编排方式对各个容器组件进行编排生成的,所述应用模板包含基本信息文件、配置信息文件、服务暴露文件及环境变量文件;
获取单元402,用于当所述第一存储区域中不存在所述应用模板时,获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板;
调度单元403,用于对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,使所述kubernetes集群依据所述应用模板装载目标应用。
本发明实施例提供的应用部署装置,通过接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,所述应用模板是按预设的编排方式对各个容器组件进行编排生成的,所述应用模板包含基本信息文件、配置信息文件、服务暴露文件及环境变量文件;若所述第一存储区域中不存在所述应用模板,则获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板;对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,使所述kubernetes集群依据所述应用模板装载目标应用。能够获取预先生成的应用模板,并将该模板发送至相应的Kubernetes集群中进行应用安装,能够提高容器组件的安装效率,且能有效的避免组件安装错误带来的风险。
本发明实施例提供的装置中,所述接收单元401,可以包括:
接收子单元,用于接收用户依据预先设置的可视化页面发送的应用部署指令时,解析所述应用部署指令,得到所述应用部署指令的指令信息,所述指令信息包含kubernetes集群标识,及与所述kubernetes集群标识相对应的模板标识;
检测子单元,用于依据所述模板标识检测所述第一存储区域中是否存在与所述部署指令相对应的应用模板。
本发明实施例提供的装置中,所述获取单元402,包括:
第一获取子单元,用于依据所述模板标识遍历预先建立的模板路径信息存储表,以获取所述应用模板的路径信息;
第二获取子单元,用于依据所述路径信息访问所述第二存储区域,得到与所述部署指令相对应的应用模板。
本发明实施例提供的装置中,所述调度单元403,包括:
格式转换子单元,用于对所述应用模板按预设的格式转换规则进行格式转换;
确定子单元,用于依据kubernetes集群标识在预先建立的kubernetes集群集合中,确定与所述部署指令相对应的kubernetes集群;
调度子单元,用于将所述格式转换后的应用模板调度至与所述部署指令相对应的kubernetes集群。
本发明实施例提供的装置中,还包括:
创建单元,用于依据所述应用模板中的配置信息文件包含各个应用参数及环境变量文件中的入参信息创建目标应用;
设定单元,用于依据所述应用模板中的服务暴露文件设定所述目标应用的访问方式,以实现所述kubernetes集群装载所述目标应用。
本发明实施例还提供了一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行上述应用部署方法。
本发明实施例还提供了一种电子设备,其结构示意图如图5所示,具体包括存储器501,以及一个或者一个以上的指令502,其中一个或者一个以上指令502存储于存储器501中,且经配置以由一个或者一个以上处理器503执行所述一个或者一个以上指令502进行以下操作:
接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,所述应用模板是按预设的编排方式对各个容器组件进行编排生成的,所述应用模板包含基本信息文件、配置信息文件、服务暴露文件及环境变量文件;
若所述第一存储区域中不存在所述应用模板,则获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板;
对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,使所述kubernetes集群依据所述应用模板装载目标应用。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种应用部署方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种应用部署方法,其特征在于,包括:
接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,所述应用模板是按预设的编排方式对各个容器组件进行编排生成的,所述应用模板包含基本信息文件、配置信息文件、服务暴露文件及环境变量文件;
若所述第一存储区域中不存在所述应用模板,则获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板;
对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,使所述kubernetes集群依据所述应用模板装载目标应用。
2.根据权利要求1所述的方法,其特征在于,所述接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,包括:
接收用户依据预先设置的可视化页面发送的应用部署指令时,解析所述应用部署指令,得到所述应用部署指令的指令信息,所述指令信息包含kubernetes集群标识,及与所述kubernetes集群标识相对应的模板标识;
依据所述模板标识检测所述第一存储区域中是否存在与所述部署指令相对应的应用模板。
3.根据权利要求2所述的方法,其特征在于,所述获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板,包括:
基于所述模板标识遍历预先建立的模板路径信息存储表,以获取所述应用模板的路径信息;
基于所述路径信息访问所述第二存储区域,得到与所述部署指令相对应的应用模板。
4.根据权利要求2所述的方法,其特征在于,所述对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,包括:
对所述应用模板按预设的格式转换规则进行格式转换;
基于kubernetes集群标识在预先建立的kubernetes集群集合中,确定与所述部署指令相对应的kubernetes集群;
将所述格式转换后的应用模板调度至与所述部署指令相对应的kubernetes集群。
5.根据权利要求1所述的方法,其特征在于,所述kubernetes集群依据所述应用模板装载目标应用的过程,包括:
依据所述应用模板中的配置信息文件包含各个应用参数及环境变量文件中的入参信息创建目标应用;
基于所述应用模板中的服务暴露文件设定所述目标应用的访问方式,以实现所述kubernetes集群装载所述目标应用。
6.一种应用部署装置,其特征在于,包括:
接收单元,用于接收到应用部署指令时,检测预先建立的第一存储区域中是否存在与所述部署指令对应的应用模板,所述应用模板是按预设的编排方式对各个容器组件进行编排生成的,所述应用模板包含基本信息文件、配置信息文件、服务暴露文件及环境变量文件;
获取单元,用于当所述第一存储区域中不存在所述应用模板时,获取所述应用模板的存储路径信息,依据所述存储路径信息在预先建立的第二存储区域中获取所述应用模板;
调度单元,用于对所述应用模板进行解析,并将解析后的所述应用模板调度至与所述部署指令相对应的kubernetes集群,使所述kubernetes集群依据所述应用模板装载目标应用。
7.根据权利要求6所述的装置,其特征在于,所述接收单元,包括:
接收子单元,用于接收用户依据预先设置的可视化页面发送的应用部署指令时,解析所述应用部署指令,得到所述应用部署指令的指令信息,所述指令信息包含kubernetes集群标识,及与所述kubernetes集群标识相对应的模板标识;
检测子单元,用于依据所述模板标识检测所述第一存储区域中是否存在与所述部署指令相对应的应用模板。
8.根据权利要求7所述的装置,其特征在于,所述获取单元,包括:
第一获取子单元,用于依据所述模板标识遍历预先建立的模板路径信息存储表,以获取所述应用模板的路径信息;
第二获取子单元,用于依据所述路径信息访问所述第二存储区域,得到与所述部署指令相对应的应用模板。
9.根据权利要求7所述的装置,其特征在于,所述调度单元,包括:
格式转换子单元,用于对所述应用模板按预设的格式转换规则进行格式转换;
确定子单元,用于依据kubernetes集群标识在预先建立的kubernetes集群集合中,确定与所述部署指令相对应的kubernetes集群;
调度子单元,用于将所述格式转换后的应用模板调度至与所述部署指令相对应的kubernetes集群。
10.根据权利要求6所述的装置,其特征在于,还包括:
创建单元,用于依据所述应用模板中的配置信息文件包含各个应用参数及环境变量文件中的入参信息创建目标应用;
设定单元,用于依据所述应用模板中的服务暴露文件设定所述目标应用的访问方式,以实现所述kubernetes集群装载所述目标应用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910734844.1A CN110515628A (zh) | 2019-08-09 | 2019-08-09 | 应用部署方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910734844.1A CN110515628A (zh) | 2019-08-09 | 2019-08-09 | 应用部署方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110515628A true CN110515628A (zh) | 2019-11-29 |
Family
ID=68624616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910734844.1A Withdrawn CN110515628A (zh) | 2019-08-09 | 2019-08-09 | 应用部署方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110515628A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110990025A (zh) * | 2019-12-06 | 2020-04-10 | 无锡华云数据技术服务有限公司 | 一种实例部署方法及系统 |
CN111142881A (zh) * | 2019-12-27 | 2020-05-12 | 浪潮云信息技术有限公司 | 一种基于kubernetes的编排charts自动化部署的系统及方法 |
CN111159162A (zh) * | 2019-12-31 | 2020-05-15 | 中国联合网络通信集团有限公司 | 数据库配置方法及设备 |
CN111596927A (zh) * | 2020-05-15 | 2020-08-28 | 北京金山云网络技术有限公司 | 服务部署方法、装置及电子设备 |
CN112181720A (zh) * | 2020-09-11 | 2021-01-05 | 济南浪潮数据技术有限公司 | 一种基于云管理平台的虚拟数据中心备份方法及装置 |
CN112256348A (zh) * | 2020-10-23 | 2021-01-22 | 北京浪潮数据技术有限公司 | 一种云服务平台创建方法、系统及电子设备和存储介质 |
CN113312083A (zh) * | 2020-07-14 | 2021-08-27 | 阿里巴巴集团控股有限公司 | 应用生成方法、装置及设备 |
CN113722045A (zh) * | 2021-07-26 | 2021-11-30 | 浪潮通用软件有限公司 | 集群的应用部署方法和装置 |
CN115204136A (zh) * | 2022-09-13 | 2022-10-18 | 江苏博云科技股份有限公司 | 基于DevOps的简化yaml操作复杂度的方法、装置、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017045424A1 (zh) * | 2015-09-18 | 2017-03-23 | 乐视控股(北京)有限公司 | 一种应用程序部署系统及部署方法 |
CN107391239A (zh) * | 2016-03-11 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 一种基于容器服务的调度方法和设备 |
CN108958744A (zh) * | 2018-06-21 | 2018-12-07 | 北京京东金融科技控股有限公司 | 大数据分布式集群的部署方法、装置、介质及电子设备 |
-
2019
- 2019-08-09 CN CN201910734844.1A patent/CN110515628A/zh not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017045424A1 (zh) * | 2015-09-18 | 2017-03-23 | 乐视控股(北京)有限公司 | 一种应用程序部署系统及部署方法 |
CN107391239A (zh) * | 2016-03-11 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 一种基于容器服务的调度方法和设备 |
CN108958744A (zh) * | 2018-06-21 | 2018-12-07 | 北京京东金融科技控股有限公司 | 大数据分布式集群的部署方法、装置、介质及电子设备 |
Non-Patent Citations (1)
Title |
---|
阿里云•开发者社区•店家小二: ""基于Helm和Operator的K8S应用管理的分享"", 《HTTPS://DEVELOPER.ALIYUN.COM/ARTICLE/679147》 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110990025B (zh) * | 2019-12-06 | 2024-02-06 | 无锡华云数据技术服务有限公司 | 一种实例部署方法及系统 |
CN110990025A (zh) * | 2019-12-06 | 2020-04-10 | 无锡华云数据技术服务有限公司 | 一种实例部署方法及系统 |
CN111142881A (zh) * | 2019-12-27 | 2020-05-12 | 浪潮云信息技术有限公司 | 一种基于kubernetes的编排charts自动化部署的系统及方法 |
CN111142881B (zh) * | 2019-12-27 | 2023-10-27 | 浪潮云信息技术股份公司 | 一种基于kubernetes的编排charts自动化部署的系统及方法 |
CN111159162A (zh) * | 2019-12-31 | 2020-05-15 | 中国联合网络通信集团有限公司 | 数据库配置方法及设备 |
CN111596927B (zh) * | 2020-05-15 | 2023-08-18 | 北京金山云网络技术有限公司 | 服务部署方法、装置及电子设备 |
CN111596927A (zh) * | 2020-05-15 | 2020-08-28 | 北京金山云网络技术有限公司 | 服务部署方法、装置及电子设备 |
CN113312083A (zh) * | 2020-07-14 | 2021-08-27 | 阿里巴巴集团控股有限公司 | 应用生成方法、装置及设备 |
CN113312083B (zh) * | 2020-07-14 | 2024-01-23 | 阿里巴巴集团控股有限公司 | 应用生成方法、装置及设备 |
CN112181720A (zh) * | 2020-09-11 | 2021-01-05 | 济南浪潮数据技术有限公司 | 一种基于云管理平台的虚拟数据中心备份方法及装置 |
CN112256348A (zh) * | 2020-10-23 | 2021-01-22 | 北京浪潮数据技术有限公司 | 一种云服务平台创建方法、系统及电子设备和存储介质 |
CN112256348B (zh) * | 2020-10-23 | 2023-12-22 | 北京浪潮数据技术有限公司 | 一种云服务平台创建方法、系统及电子设备和存储介质 |
CN113722045B (zh) * | 2021-07-26 | 2023-06-16 | 浪潮通用软件有限公司 | 集群的应用部署方法和装置 |
CN113722045A (zh) * | 2021-07-26 | 2021-11-30 | 浪潮通用软件有限公司 | 集群的应用部署方法和装置 |
CN115204136A (zh) * | 2022-09-13 | 2022-10-18 | 江苏博云科技股份有限公司 | 基于DevOps的简化yaml操作复杂度的方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110515628A (zh) | 应用部署方法及装置 | |
CN109714449A (zh) | 服务域名的动态配置方法、装置、设备及存储介质 | |
CN103841134B (zh) | 基于api发送、接收信息的方法、装置及系统 | |
US10972586B2 (en) | Reusable message flow between applications of a message broker integrated systems environment | |
CN106383786A (zh) | 一种接口压力性能测试方法、装置及电子设备 | |
US9912759B2 (en) | Dynamically generating solution stacks | |
US9459897B2 (en) | System and method for providing data analysis service in cloud environment | |
JP2021509498A (ja) | コンピューティング・デバイス | |
CN102946415B (zh) | 一种移动终端本地应用的实现方法和装置 | |
US11960578B2 (en) | Correspondence of external operations to containers and mutation events | |
US11165585B2 (en) | Token repository and integration | |
CN110058864A (zh) | 微服务的部署方法及装置 | |
US20170134531A1 (en) | Generation and distribution of named, definable, serialized tokens | |
US10055393B2 (en) | Distributed version control of orchestration templates | |
CN112347325A (zh) | 网络爬虫平台 | |
US20180234329A1 (en) | Test building for testing server operation | |
CN106873970A (zh) | 一种操作系统的安装方法和装置 | |
CN111866129B (zh) | 基于云平台的服务可用性指标的确定方法及装置、介质 | |
US10200271B2 (en) | Building and testing composite virtual services using debug automation | |
US10554770B2 (en) | Dynamic cognitive optimization of web applications | |
CN109885472A (zh) | 测试管理方法及系统和计算机可读存储介质 | |
KR102685492B1 (ko) | 3세대 파트너쉽 프로젝트(3gpp) 라이브 업링크 스트리밍용 프레임워크(flus) 싱크 능력 결정 | |
US11410082B2 (en) | Data loss machine learning model update | |
CN103744687B (zh) | 输入/输出端口的访问方法和装置 | |
Sodhi et al. | Appification of web applications: Architectural aspects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20191129 |