CN112379934A - 一种云计算平台的部署方法及装置、存储介质 - Google Patents

一种云计算平台的部署方法及装置、存储介质 Download PDF

Info

Publication number
CN112379934A
CN112379934A CN201910690943.4A CN201910690943A CN112379934A CN 112379934 A CN112379934 A CN 112379934A CN 201910690943 A CN201910690943 A CN 201910690943A CN 112379934 A CN112379934 A CN 112379934A
Authority
CN
China
Prior art keywords
component
cloud computing
computing platform
file
deployment
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.)
Granted
Application number
CN201910690943.4A
Other languages
English (en)
Other versions
CN112379934B (zh
Inventor
徐磊
苗玉良
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, China Mobile Suzhou Software Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201910690943.4A priority Critical patent/CN112379934B/zh
Publication of CN112379934A publication Critical patent/CN112379934A/zh
Application granted granted Critical
Publication of CN112379934B publication Critical patent/CN112379934B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Abstract

本发明实施例公开了一种云计算平台的部署方法,该方法包括:制作至少一个云计算平台组件对应的至少一个组件镜像;生成至少一个云计算平台组件对应的至少一个资源模板文件和至少一个配置文件;利用至少一个资源模板文件拉取至少一个组件镜像进行容器化部署,生成组件容器集群;通过启动组件容器集群,安装至少一个云计算平台组件提供的各个服务,并拉取至少一个配置文件进行相关配置,完成云计算平台的部署。通过实施上述方案,不仅降低了存储资源的消耗,还提高了部署效率。

Description

一种云计算平台的部署方法及装置、存储介质
技术领域
本发明涉及云计算技术领域,尤其涉及一种云计算平台的部署方法及装置、存储介质。
背景技术
开源的云计算平台(OpenStack)作为可以支持几乎所有类型云环境的平台,由认证(Keystone)、计算(Nova)、网络(Neutron),以及存储(Cinder)等管理组件组成,通过将这些管理组件进行组合可以实现各种具体的工作。
目前,采用容器化的方式进行云计算平台部署时,一方面,以各个服务为主体进行容器化,生成容器镜像数目过多,在组件多、服务器,以及版本多的线上环境,存储资源消耗过大,另一方面,以初始化服务方法来写脚本进行服务部署,难以进行服务后续的滚动升级、回退,以及弹性伸缩等高级服务,效率较低。
发明内容
为解决上述技术问题,本发明实施例期望提供一种云计算平台的部署方法、装置及存储介质,基于组成云计算平台的各个组件进行镜像制作,并且利用资源模板进行云计算平台的部署,从而不仅降低了存储资源的消耗,还提高了部署效率。
本发明的技术方案是这样实现的:
本发明实施例提供了一种云计算平台的部署方法,所述方法包括:
制作至少一个云计算平台组件对应的至少一个组件镜像;
生成所述至少一个云计算平台组件对应的至少一个资源模板文件和至少一个配置文件;
利用所述至少一个资源模板文件拉取所述至少一个组件镜像进行容器化部署,生成组件容器集群;
通过启动所述组件容器集群,安装所述至少一个云计算平台组件提供的各个服务,并拉取所述至少一个配置文件进行配置,完成云计算平台的部署。
在上述方案中,所述制作至少一个云计算平台组件对应的至少一个组件镜像,包括:
获取基础云计算平台部署文件,并根据所述基础云计算平台部署文件制作所述至少一个云计算平台组件对应的至少一个第一镜像生成文件;
针对所述至少一个云计算平台组件中每一个组件,制作对应提供的每一个服务相应的入口脚本,并写入所述至少一个第一镜像生成文件中对应的文件中,获得至少一个第二镜像生成文件;
根据所述至少一个第二镜像生成文件,生成所述至少一个组件镜像。
在上述方案中,所述生成所述至少一个云计算平台组件对应的至少一个资源模板文件,包括:
获取所述至少一个云计算平台组件中每一个组件提供的服务类型;
基于所述服务类型,确定所述至少一个云计算平台组件对应的至少一组资源信息;
基于所述至少一组资源信息,生成所述至少一个资源模板文件。
在上述方案中,所述至少一组资源信息中,每一组信息的信息类型至少包括:容器组种类、重启策略、环境变量、拉取策略,以及入口脚本。
在上述方案中,所述利用所述至少一个资源模板文件拉取所述至少一个组件镜像进行容器化部署,生成组件容器集群,包括:
将所述至少一个资源模板文件同步到控制节点;
通过所述控制节点利用所述至少一个资源模板文件发起创建请求,以拉取所述至少一个组件至所述工作节点进行容器化部署,生成所述组件容器集群。
在上述方案中,所述完成云计算平台的部署之后,所述方法还包括:
利用集群管理工具,对所述组件容器集群进行集群管理;所述集群管理至少包括删除、滚动升级,以及弹性伸缩中的一种或者多种。
本发明实施例提供一种云计算平台的部署装置,所述装置包括:
镜像制作模块,用于制作至少一个云计算平台组件对应的至少一个组件镜像;
文件生成模块,用于生成所述至少一个云计算平台组件对应的至少一个资源模板文件和至少一个配置文件;
部署管理模块,用于利用所述至少一个资源模板文件拉取所述至少一个组件镜像进行容器化部署,生成组件容器集群;通过启动所述组件容器集群,安装所述至少一个云计算平台组件提供的各个服务,并拉取所述至少一个配置文件进行配置,完成云计算平台的部署。
在上述部署装置中,所述镜像制作模块,具体用于获取基础云计算平台部署文件,并根据所述基础云计算平台部署文件制作所述至少一个云计算平台组件对应的至少一个第一镜像生成文件;针对所述至少一个云计算平台组件中每一个组件,制作提供的每一个服务相应的入口脚本,并写入所述至少一个第一镜像生成文件中对应的文件中,获得至少一个第二镜像生成文件;根据所述至少一个第二镜像生成文件,生成所述至少一个组件镜像。
在上述部署装置中,所述文件生成模块,具体用于获取所述至少一个云计算平台组件中每一个组件提供的服务类型;基于所述服务类型,确定所述至少一个云计算平台组件对应的至少一组资源信息;基于所述至少一组资源信息,生成所述至少一个资源模板文件。
在上述部署装置中,所述至少一组资源信息中,每一组信息的信息类型至少包括:容器组种类、重启策略、环境变量、拉取策略,以及入口脚本。
在上述部署装置中,所述部署管理模块,具体用于将所述至少一个资源模板文件同步到控制节点;通过所述控制节点利用所述至少一个资源模板文件发起创建请求,以拉取所述至少一个组件至所述工作节点进行容器化部署,生成所述组件容器集群。
在上述部署装置中,所述部署管理模块,还用于利用集群管理工具,对所述组件容器集群进行集群管理;所述集群管理至少包括删除、滚动升级,以及弹性伸缩中的一种或者多种。
本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可以被一个或者多个处理器执行,以实现上述云计算平台的部署方法。
本发明实施例提供了一种云计算平台的部署方法,制作至少一个云计算平台组件对应的至少一个组件镜像;生成至少一个云计算平台组件对应的至少一个资源模板文件和至少一个配置文件;利用至少一个资源模板文件拉取至少一个组件镜像进行容器化部署,生成组件容器集群;通过启动组件容器集群,安装至少一个云计算平台组件提供的各个服务,并拉取至少一个配置文件进行配置,完成云计算平台的部署。也就是说,相比于现有技术中通常直接制作云计算平台的组件提供的每一个服务的镜像,并以特定的部署工具部署平台,本发明实施例提供的技术方案,基于组成云计算平台的各个组件进行镜像制作,减少了镜像的冗余度,从而降低了存储资源的消耗,此外,利用资源模板进行云计算平台的容器化部署,可以实现一键部署,快速生成服务,灵活管理服务,从而提高了部署效率。
附图说明
图1为本发明实施例提供的一种云计算平台的部署方法的流程示意图一;
图2为本发明实施例提供的一种示例性的制作云计算平台组件的组件镜像示意图;
图3为本发明实施例提供的一种云计算平台的部署方法的流程示意图二;
图4为本发明实施例提供的一种示例性的部署云计算平台的结构示意图;
图5为本发明实施例提供的一种云计算平台的部署装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
实施例一
本发明实施例提供了一种云计算平台的部署方法。图1为本发明实施例提供的一种云计算平台的部署方法的流程示意图一。如图1所示,主要包括以下步骤:
S101、制作至少一个云计算平台组件对应的至少一个组件镜像。
在本发明的实施例中,云计算平台的部署装置需要先制作出至少一个云计算平台组件对应的至少一个组件镜像。
需要说明的是,在本发明的实施例中,云计算平台组件可以为多个,用于组成云计算平台,部署装置对于每一个云计算平台组件,将分别制作其对应的组件镜像,以推送到镜像仓库。具体的云计算平台组件可以根据实际部署云计算平台的需求所确定,具体的云计算平台组件的数量本发明实施例不作限定。
示例性的,在本发明的实施例中,具体有4个云计算平台组件,分别为Keystone组件、Nova组件、Neutron组件,以及Cinder组件,部署装置将一一制作每一个组件对应的组件镜像,从而获得Keystone组件镜像、Nova组件镜像、Neutron组件镜像,以及Cinder组件镜像。可以理解的是,在本发明的实施例中,触发制作至少一个云计算平台组件对应的至少一个组件镜像,可以由操作者实现,例如,操作者可以通过触控等操作向部署装置发送制作镜像的请求,部署装置在接收到该请求之后,即可开始制作至少一个云计算平台组件对应的至少一个组件镜像。
具体的,在本发明的实施例中,部署装置制作云计算平台组件对应的组件镜像,包括:获取基础云计算平台部署文件,并根据基础云计算平台部署文件制作至少一个云计算平台组件对应的至少一个第一镜像生成文件;针对至少一个云计算平台组件中每一个组件,制作提供的每一个服务相应的入口脚本,并写入至少一个第一镜像生成文件中对应的文件中,获得至少一个第二镜像生成文件;根据至少一个第二镜像生成文件,生成至少一个组件镜像。
需要说明的是,在本发明的实施例中,部署装置中预先存储有基础云计算平台部署文件,部署装置可以直接获取该文件,并根据该文件分别进行源的导入及软件包管理器(Red-Hat Package Manager,RPM)包的安装等,从而制作出至少一个云计算平台组件对应的至少一个第一镜像生成文件(DockerFile1),即每一个云计算平台组件对应的DockerFile1。
需要说明的是,在本发明的实施例中,一个云计算平台组件实际上可以实现多个具体的服务,对于云计算平台组件的每一个服务,部署装置均可以制作出相应的入口脚本,而在入口脚本中,实际上还包括了相应的初始化数据库(bootstrap)脚本,此外,在入口脚本中,还可以根据实际需求添加相应的注册认证信息(post)脚本,具体的入口脚本包括的信息本发明实施例不作限定。
需要说明的是,在本发明的实施例中,在入口脚本包括bootstrap和post时,实际上入口脚本即负责了拉取对应的配置文件、初始化数据库、注册认证信息,以及拉起对应服务。
可以理解的是,在本发明的实施例中,部署装置在制作出一个云计算平台组件对应的DockerFile1,以及其提供的每一个服务相应的入口脚本之后,进一步将这些入口脚本写入对应的DockerFile1中,从而获得对应的第二镜像生成文件(DockerFile2)。
以下为一个云计算平台组件的DockerFile2的解析示例:
FROM XXX/base:0.1导入基础镜像
ADD openstack repo/etc/yum.repos.d/添加源
RUN yum install该云计算平台组件代码包及依赖包
……其他配置
ADD xxx-bootstrap.sh/root/keystone-bootstrap.sh
ADD xxx-api.sh/root/keystone-api.sh
ADD xxx-post.sh/root/keystone-post.sh拷贝入口脚本
可以理解的是,在本发明的实施例中,部署装置在获得了每一个云计算平台组件的DockerFile2之后,具体可以根据每一个DockerFile2进行编译安装等处理,从而获得至少一个云计算平台组件对应的至少一个组件镜像。
需要说明的是,在本发明的实施例中,部署装置在制作出至少一个云计算平台组件对应的至少一个组件镜像之后,可以将这至少一个组件镜像推送至远端仓库,当然,远端仓库包括在部署装置中,可以存储推送到的至少一个组件镜像。
图2为本发明实施例提供的一种示例性的制作云计算平台组件的组件镜像示意图。如图2所示,对于至少一个云计算平台组件中的每一个组件,部署装置先生成对应的DockerFile2,之后,根据DockerFile2进行编译安装等处理,生成组件镜像,最后,可以将组件镜像推送至远端仓库进行存储。
可以理解的是,在现有技术中,通常是针对云计算平台组件提供的服务进行镜像制作,即以各个服务为主体进行容器化,因此,针对组件多、服务多的情况,往往需要制作出大量的镜像进行存储,镜像冗余度较大,造成存储资源消耗过多,而在本发明的实施例中,基于各个云计算平台组件进行镜像制作,从而减少了镜像的冗余度,降低了存储资源的消耗。
S102、生成至少一个云计算平台组件对应的至少一个资源模板文件和至少一个配置文件。
在本发明的实施例中,部署装置在制作出至少一个云计算平台组件对应的至少一个组件镜像之后,可以再生成至少一个云计算平台组件对应的至少一个资源模板文件和至少一个配置文件。
具体的,在本发明的实施例中,部署装置生成至少一个云计算平台组件对应的至少一个资源模板文件,包括:获取至少一个云计算平台组件中每一个组件提供的服务类型;基于服务类型,确定至少一个云计算平台组件对应的至少一组资源信息;基于至少一组资源信息,生成至少一个资源模板文件。
需要说明的是,在本发明的实施例中,部署装置根据每一个云计算平台组件提供的服务类型,可以按照不同的模式构建资源模板文件,具体的资源模板文件本发明实施例不作限定。
需要说明的是,在本发明的实施例中,每一组资源信息的信息类型至少包括:容器组种类、重启策略、环境变量、拉取策略,以及入口脚本。具体的资源信息本发明实施例不作限定。
具体的,在本发明的实施例中,针对云计算平台组件的容器组种类,bootstrap和post服务使用容器组(Pod)类型,组件应用程序编程接口(Application ProgrammingInterface,API)服务使用守护进程(DaemonSet)类型,组件远程过程调用(RemoteProcedure Call,RPC)服务使用部署调度(Deplopyment)类型。
具体的,在本发明的实施例中,针对云计算平台组件的重启策略,bootstrap和post对应的重启策略为Never,即当其对应的容器终止退出,不再重启容器,API服务和RPC服务对应的重启策略为OnFailure,即当其对应的容器异常退出时,重启容器。
具体的,在本发明的实施例中,拉取策略可以选择IfNotPresent。
具体的,在本发明的实施例中,环境变量中具体配置与服务类型相应的消息队列、认证信息、数据库信息、缓存信息,以及虚拟IP信息等。
具体的,在本发明的实施例中,对于同一云计算平台组件的不同的服务,根据服务类型还可以配置不同的入口脚本以进行区分。
以下为一个云计算平台组件的资源模板文件的解析示例:
apiVersion:extensions/v1beta1
kind:DaeminSet守护进程模式
……
Restart Policy:OnFailure重启策略
spec:
containers:
-name:xxx-api Pod名称
image:library/xxx-api:3.8.0组件镜像
imagePullPolicy:IfNotPresent拉取策略
env:
环境变量配置
hostNetwork:true host网络模式
……
需要说明的是,在本发明的实施例中,部署装置为每一组资源信息的信息类型还可以包括其它信息,可以根据实际需求进行设置,本发明实施例不作具体限定。
需要说明的是,在本发明的实施例中,至少一个云计算平台组件对应的至少一个配置文件,可以由操作者根据实际配置需求,提供给部署装置每一个云计算平台组件对应的配置参数等配置信息,部署装置即可生成对应的配置文件,具体的配置文件本发明实施例不作限定。
S103、利用至少一个资源模板文件拉取至少一个组件镜像进行容器化部署,生成组件容器集群。
在本发明的实施例中,部署装置在生成至少一个云计算平台组件对应的至少一个资源模板文件之后,即可利用至少一个资源模板文件拉取至少一个组件镜像进行容器化部署,生成组件容器集群。
可以理解的是,在本发明的实施例中,至少一个资源模板文件中的每一个资源模板均包含了对应云计算平台组件的相关资源信息,例如上述拉取策略,环境变量等,因此,部署装置利用至少一个资源模板文件即可拉取至少一个组件镜像进行容器化部署。
具体的,在本发明的实施例中,部署装置利用至少一个资源模板文件拉取至少一个组件镜像进行容器化部署,生成组件容器集群,包括:将至少一个资源模板文件同步到控制节点;通过控制节点利用至少一个资源模板文件发起创建请求,以拉取至少一个组件至工作节点进行容器化部署,生成组件容器集群。
需要说明的是,在本发明的实施例中,部署装置实际上包括有工作节点和控制节点,其中工作节点为多个,控制节点为一个,具体的工作节点和控制节点本发明实施例不作限定。
需要说明的是,在本发明的实施例中,工作节点和控制节点均可以为服务器等设备,具体的工作节点和控制节点,以及工作节点的数量可以根据实际部署需求预先设置,本发明实施例不作限定。
S104、通过启动组件容器集群,安装至少一个云计算平台组件提供的各个服务,并拉取至少一个配置文件进行配置,完成云计算平台的部署。
在本发明的实施例中,部署装置在生成组件容器集群之后,可以进一步启动组件容器集群,安装至少一个云计算平台组件提供的各个服务,并拉取至少一个配置文件进行配置,完成云计算平台的部署。
需要说明的是,在本发明的实施例中,部署装置启动组件容器集群时,安装至少一个云计算平台组件提供的各个服务,拉起每一个云计算平台组件对应的各个容器,安装每一个云计算平台组件提供的每一个服务。
需要说明的是,在本发明的实施例中,至少一个云计算平台组件中至少包括keystone组件,keystone组件的keystone服务的安装流程与其它组件的服务安装流程有所差异。
具体的,在本发明的实施例中,对于keystone组件提供的keystone服务,部署装置可以先拉起keystone组件对应的bootstrap任务容器,以创建keystone数据库,同步keystone表,生成fernet密钥,完成这些任务后,bootstrap任务容器的生命周期结束,之后,部署装置拉起其对应的服务容器,以部署keystone服务,最后,部署装置拉起其对应的post任务容器,从而初始化project、user、endpoint信息,并在初始化完成之后,该post任务容器生命周期结束。
具体的,在本发明的实施例中,对于其它云计算平台组件提供的服务,部署装置先拉起该组件对应的bootstrap任务容器,从而创建对应的数据库,同步数据库,之后,部署装置拉起该组件提供的每一个服务对应的服务容器,从而完成每一个服务的部署。
需要说明的是,在本发明的实施例中,对于其它非keystone组件的云计算平台组件,在步骤S101中,生成组件镜像的过程中,其入口脚本中实际上不需要添加post脚本。
可以理解的是,在本发明的实施例中,部署装置在启动组件容器集群,按照至少一个云平台组件提供的各个服务过程中,实际上需要进行相关参数等信息的配置,因此,此时可以拉取对应的配置文件获取需要配置的信息,进行配置,从而完成云计算平台的部署。
图3为本发明实施例提供的一种云计算平台的部署方法的流程示意图二。如图3所示,部署装置完成云计算平台的部署之后,还可以执行以下
S105、利用集群管理工具,对组件容器集群进行集群管理;集群管理至少包括删除、滚动升级,以及弹性伸缩中的一种或者多种。
在本发明的实施例中,部署装置完成云计算平台的部署之后,还可以进一步对组件容器集群进行集群管理。
需要说明的是,在本发明的实施例中,集群管理至少包括删除、滚动升级,以及弹性伸缩中的一种或者多种,具体的集群管理本发明实施例不作限定。
需要说明的是,在本发明的实施例中,部署装置中,通过工作节点经过部署实际上已经生成了组件容器集群,通过控制节点具体可以利用集群管理工具中的删除接口对组件容器集群中的容器进行删除,即删除相应的云计算平台组件,也可以利用集群管理工具中的滚动升级接口对组件容器集群中的容器进行升级,即升级相应的云计算平台组件,还可以利用集群管理工具中的比例接口对组件容器集群中的容器进行弹性伸缩。
图4为本发明实施例提供的一种示例性的部署云计算平台的结构示意图。如图4所示,主要包括以下步骤:
S401、制作组件镜像。
需要说明的是,在本发明的实施例中,部署装置分别制作每一个云计算平台组件对应的组件镜像,具体过程与步骤S101完全相同,在此不再赘述。
S402、将组件镜像推送到远端仓库。
S403、生成资源模板文件和配置文件。
需要说明的是,在本发明的实施例中,部署装置分别制作每一个云计算平台组件对应的资源模板文件和配置文件,具体过程与步骤S102完全相同,在此不再赘述。
S404、将资源模板文件同步到控制节点。
S405、由控制节点发起创建请求,利用资源模板文件从远端仓库拉取组件镜像至工作节点,生成组件容器集群。
S406、启动组件容器集群,拉取配置文件进行配置,完成部署。
S407、通过控制节点对组件容器集群进行管理。
本发明实施例提供了一种云计算平台的部署方法,制作至少一个云计算平台组件对应的至少一个组件镜像;生成至少一个云计算平台组件对应的至少一个资源模板文件和至少一个配置文件;利用至少一个资源模板文件拉取至少一个组件镜像进行容器化部署,生成组件容器集群;通过启动组件容器集群,安装至少一个云计算平台组件提供的各个服务,并拉取至少一个配置文件进行配置,完成云计算平台的部署。也就是说,相比于现有技术中通常直接制作云计算平台的组件提供的每一个服务的镜像,并以特定的部署工具部署平台,本发明实施例提供的技术方案,基于组成云计算平台的各个组件进行镜像制作,减少了镜像的冗余度,从而降低了存储资源的消耗,此外,利用资源模板进行云计算平台的容器化部署,可以实现一键部署,快速生成服务,灵活管理服务,从而提高了部署效率。
实施例二
本发明实施例提供了一种云计算平台的部署装置。图5为本发明实施例提供的一种云计算平台的部署装置的结构示意图。如图5所示,所述装置包括:
镜像制作模块501,用于制作至少一个云计算平台组件对应的至少一个组件镜像;
文件生成模块502,用于生成所述至少一个云计算平台组件对应的至少一个资源模板文件和至少一个配置文件;
部署管理模块503,用于利用所述至少一个资源模板文件拉取所述至少一个组件镜像进行容器化部署,生成组件容器集群;通过启动所述组件容器集群,安装所述至少一个云计算平台组件提供的各个服务,并拉取所述至少一个配置文件进行配置,完成云计算平台的部署。
可选的,所述镜像制作模块501,具体用于获取基础云计算平台部署文件,并根据所述基础云计算平台部署文件制作所述至少一个云计算平台组件对应的至少一个第一镜像生成文件;针对所述至少一个云计算平台组件中每一个组件,制作提供的每一个服务相应的入口脚本,并写入所述至少一个第一镜像生成文件中对应的文件中,获得至少一个第二镜像生成文件;根据所述至少一个第二镜像生成文件,生成所述至少一个组件镜像。
可选的,所述文件生成模块502,具体用于获取所述至少一个云计算平台组件中每一个组件提供的服务类型;基于所述服务类型,确定所述至少一个云计算平台组件对应的至少一组资源信息;基于所述至少一组资源信息,生成所述至少一个资源模板文件。
可选的,所述至少一组资源信息中,每一组信息的信息类型至少包括:容器组种类、重启策略、环境变量、拉取策略,以及入口脚本。
可选的,所述部署管理模块503,具体用于将所述至少一个资源模板文件同步到控制节点;通过所述控制节点利用所述至少一个资源模板文件发起创建请求,以拉取所述至少一个组件至所述工作节点进行容器化部署,生成所述组件容器集群。
可选的,所述部署管理模块503,还用于利用集群管理工具,对所述组件容器集群进行集群管理;所述集群管理至少包括删除、滚动升级,以及弹性伸缩中的一种或者多种。
本发明实施例提供了一种云计算平台的部署装置,制作至少一个云计算平台组件对应的至少一个组件镜像;生成至少一个云计算平台组件对应的至少一个资源模板文件和至少一个配置文件;利用至少一个资源模板文件拉取至少一个组件镜像进行容器化部署,生成组件容器集群;通过启动组件容器集群,安装至少一个云计算平台组件提供的各个服务,并拉取至少一个配置文件进行配置,完成云计算平台的部署。也就是说,相比于现有技术中通常直接制作云计算平台的组件提供的每一个服务的镜像,并以特定的部署工具部署平台,本发明实施例提供的部署装置,基于组成云计算平台的各个组件进行镜像制作,减少了镜像的冗余度,从而降低了存储资源的消耗,此外,利用资源模板进行云计算平台的容器化部署,可以实现一键部署,快速生成服务,灵活管理服务,从而提高了部署效率。
本发明实施例还提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可以被一个或者多个处理器执行,以实现上述云计算平台的部署方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (10)

1.一种云计算平台的部署方法,其特征在于,所述方法包括:
制作至少一个云计算平台组件对应的至少一个组件镜像;
生成所述至少一个云计算平台组件对应的至少一个资源模板文件和至少一个配置文件;
利用所述至少一个资源模板文件拉取所述至少一个组件镜像进行容器化部署,生成组件容器集群;
通过启动所述组件容器集群,安装所述至少一个云计算平台组件提供的各个服务,并拉取所述至少一个配置文件进行配置,完成云计算平台的部署。
2.根据权利要求1所述的方法,其特征在于,所述制作至少一个云计算平台组件对应的至少一个组件镜像,包括:
获取基础云计算平台部署文件,并根据所述基础云计算平台部署文件制作所述至少一个云计算平台组件对应的至少一个第一镜像生成文件;
针对所述至少一个云计算平台组件中每一个组件,制作对应提供的每一个服务相应的入口脚本,并写入所述至少一个第一镜像生成文件中对应的文件中,获得至少一个第二镜像生成文件;
根据所述至少一个第二镜像生成文件,生成所述至少一个组件镜像。
3.根据权利要求1所述的方法,其特征在于,所述生成所述至少一个云计算平台组件对应的至少一个资源模板文件,包括:
获取所述至少一个云计算平台组件中每一个组件提供的服务类型;
基于所述服务类型,确定所述至少一个云计算平台组件对应的至少一组资源信息;
基于所述至少一组资源信息,生成所述至少一个资源模板文件。
4.根据权利要求1所述的方法,其特征在于,所述利用所述至少一个资源模板文件拉取所述至少一个组件镜像进行容器化部署,生成组件容器集群,包括:
将所述至少一个资源模板文件同步到控制节点;
通过所述控制节点利用所述至少一个资源模板文件发起创建请求,以拉取所述至少一个组件至所述工作节点进行容器化部署,生成所述组件容器集群。
5.根据权利要求1所述的方法,其特征在于,所述完成云计算平台的部署之后,所述方法还包括:
利用集群管理工具,对所述组件容器集群进行集群管理;所述集群管理至少包括删除、滚动升级,以及弹性伸缩中的一种或者多种。
6.一种云计算平台的部署装置,其特征在于,所述装置包括:
镜像制作模块,用于制作至少一个云计算平台组件对应的至少一个组件镜像;
文件生成模块,用于生成所述至少一个云计算平台组件对应的至少一个资源模板文件和至少一个配置文件;
部署管理模块,用于利用所述至少一个资源模板文件拉取所述至少一个组件镜像进行容器化部署,生成组件容器集群;通过启动所述组件容器集群,安装所述至少一个云计算平台组件提供的各个服务,并拉取所述至少一个配置文件进行配置,完成云计算平台的部署。
7.根据权利要求6所述的装置,其特征在于,
所述镜像制作模块,具体用于获取基础云计算平台部署文件,并根据所述基础云计算平台部署文件制作所述至少一个云计算平台组件对应的至少一个第一镜像生成文件;针对所述至少一个云计算平台组件中每一个组件,制作提供的每一个服务相应的入口脚本,并写入所述至少一个第一镜像生成文件中对应的文件中,获得至少一个第二镜像生成文件;根据所述至少一个第二镜像生成文件,生成所述至少一个组件镜像。
8.根据权利要求6所述的装置,其特征在于,
所述文件生成模块,具体用于获取所述至少一个云计算平台组件中每一个组件提供的服务类型;基于所述服务类型,确定所述至少一个云计算平台组件对应的至少一组资源信息;基于所述至少一组资源信息,生成所述至少一个资源模板文件。
9.根据权利要求6所述的装置,其特征在于,
所述部署管理模块,具体用于将所述至少一个资源模板文件同步到控制节点;通过所述控制节点利用所述至少一个资源模板文件发起创建请求,以拉取所述至少一个组件至所述工作节点进行容器化部署,生成所述组件容器集群;
或者,所述部署管理模块,还用于利用集群管理工具,对所述组件容器集群进行集群管理;所述集群管理至少包括删除、滚动升级,以及弹性伸缩中的一种或者多种。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可以被一个或者多个处理器执行,以实现权利要求1-5任一项所述的方法。
CN201910690943.4A 2019-07-29 2019-07-29 一种云计算平台的部署方法及装置、存储介质 Active CN112379934B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910690943.4A CN112379934B (zh) 2019-07-29 2019-07-29 一种云计算平台的部署方法及装置、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910690943.4A CN112379934B (zh) 2019-07-29 2019-07-29 一种云计算平台的部署方法及装置、存储介质

Publications (2)

Publication Number Publication Date
CN112379934A true CN112379934A (zh) 2021-02-19
CN112379934B CN112379934B (zh) 2022-12-13

Family

ID=74585976

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910690943.4A Active CN112379934B (zh) 2019-07-29 2019-07-29 一种云计算平台的部署方法及装置、存储介质

Country Status (1)

Country Link
CN (1) CN112379934B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113708971A (zh) * 2021-08-30 2021-11-26 济南浪潮数据技术有限公司 一种Openstack云平台的部署方法及相关装置
CN114422618A (zh) * 2021-12-31 2022-04-29 北京千方科技股份有限公司 基于云原生的iot平台协议适配方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878385A (zh) * 2016-12-30 2017-06-20 新华三技术有限公司 私有云部署方法及装置
CN109634621A (zh) * 2018-11-30 2019-04-16 武汉烽火信息集成技术有限公司 Openstack平台部署方法、存储介质、电子设备及系统
CN109687987A (zh) * 2017-10-19 2019-04-26 北京金山云网络技术有限公司 一种云平台部署方法、装置、电子设备及可读存储介质
CN109739616A (zh) * 2018-12-05 2019-05-10 国云科技股份有限公司 一种云平台容器镜像批量制作方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878385A (zh) * 2016-12-30 2017-06-20 新华三技术有限公司 私有云部署方法及装置
CN109687987A (zh) * 2017-10-19 2019-04-26 北京金山云网络技术有限公司 一种云平台部署方法、装置、电子设备及可读存储介质
CN109634621A (zh) * 2018-11-30 2019-04-16 武汉烽火信息集成技术有限公司 Openstack平台部署方法、存储介质、电子设备及系统
CN109739616A (zh) * 2018-12-05 2019-05-10 国云科技股份有限公司 一种云平台容器镜像批量制作方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113708971A (zh) * 2021-08-30 2021-11-26 济南浪潮数据技术有限公司 一种Openstack云平台的部署方法及相关装置
CN114422618A (zh) * 2021-12-31 2022-04-29 北京千方科技股份有限公司 基于云原生的iot平台协议适配方法、装置、设备及介质
CN114422618B (zh) * 2021-12-31 2024-01-02 北京千方科技股份有限公司 基于云原生的iot平台协议适配方法、装置、设备及介质

Also Published As

Publication number Publication date
CN112379934B (zh) 2022-12-13

Similar Documents

Publication Publication Date Title
CN110768833B (zh) 基于kubernetes的应用编排部署方法及装置
CN112214330A (zh) 集群中主节点的部署方法、装置及计算机可读存储介质
CN101840346B (zh) 云主机部署的方法及系统
RU2417415C2 (ru) Способ и система развертывания программного обеспечения, сервер развертывания программного обеспечения и пользовательский сервер
US9250672B2 (en) Cloning target machines in a software provisioning environment
CN110752947A (zh) 一种k8s集群部署方法及装置,一种部署平台
CN112585919A (zh) 利用基于云的应用管理技术来管理应用配置状态的方法
WO2019060228A1 (en) SYSTEMS AND METHODS FOR SERVICE INSTANCATION ON SERVICES
CN111930521A (zh) 用于部署应用的方法、装置、电子设备及可读存储介质
CN112230942A (zh) 一种支持多种国产化操作系统的自动化部署方法与系统
CN108984272A (zh) OpenStack云计算管理平台的控制方法和装置
CN112379934B (zh) 一种云计算平台的部署方法及装置、存储介质
US20220385532A1 (en) Adding host systems to existing containerized clusters
CN113946323A (zh) 基于微服务体系的在线开发方法、装置、设备及存储介质
CN110275719B (zh) 基于国产cpu和操作系统的云物理主机操作系统部署方法
CN111786810A (zh) 一种大规模测试床节点的自动化部署方法及系统
CN116820493A (zh) 一种镜像文件部署方法、系统、设备及存储介质
CN113434283B (zh) 服务调度方法及装置、服务器、计算机可读存储介质
US7177934B2 (en) Method and apparatus for providing application specific strategies to a JAVA platform including start and stop policies
CN110727575B (zh) 一种信息处理方法、系统、装置、以及存储介质
CN113760234A (zh) 一种软件开发方法和系统
CN110782040A (zh) 一种pytorch任务训练方法、装置、设备及介质
CN114035890A (zh) 一种基于容器技术的ci/cd服务部署方法、装置、设备及介质
CN113064698A (zh) 提供产品环境的方法及相应的装置、系统、设备和介质
CN113126961B (zh) 流水线处理方法、装置和存储介质

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
GR01 Patent grant
GR01 Patent grant