一种容器化部署大企业私有云的方法和系统的制作方法_2

文档序号:9814338阅读:来源:国知局
信息;
所述的销毁过程为去除自身提供服务的能力;所述的销毁过程包括删除配置文件,清除参数和还原环境变量。
[0018]容器作为应用和服务的独立、隔离的空间,承载着计算工作,根据服务的生命周期,规划了容器的生命周期过程,为以下几个部分:构建镜像过程、创建容器实例过程、启动容器过程、停止容器过程和删除容器过程;
所述的构建镜像过程为基于镜像元数据配置,创建容器镜像的过程;所述的构建镜像过程:包括镜像配置标识计算,镜像查询,生成镜像构建文件,构建镜像和上传镜像到镜像仓库;
所述的创建容器实例过程为生成镜像的容器实例的过程;所述的创建容器实例过程包括:下载镜像,配置数据卷,配置环境变量和创建容器;
所述的启动容器过程为容器实例由停止状态到运行状态的过程;
所述的停止容器过程为停止的容器实例运行的过程;
所述的删除容器过程为删除容器实例的过程。
[0019]如图2所示的,通过对容器的控制实现对服务生命周期的控制,最终实现了对应用和服务的生命周期过程的控制,具体地如下:
(1)容器的构建镜像过程会调用服务生命周期的创建和绑定过程;
(2)启动容器过会程默认调用服务生命周期的启动脚本;
(3)应用的更新、状态及监控过程通过容器访问的入口点完成;
(4)停止容器过程调用了服务生命周期的停止过程;
(5)删除容器过程调用了服务生命周期的解除绑定和删除过程。
[0020]进一步,容器生命周期过程覆盖了服务生命周期过程。
[0021]如图3所示的部署的过程,从总体上看,便是根据应用配置,分解成不同的部署任务并执行,所有任务完成后发布应用。这些任务从类型上依次为构建镜像任务、创建容器任务和启动运行容器任务。镜像具有一次构建,多次使用的特点,即每次构建的镜像,都存放到镜像仓库中,可以被其它的部署过程重复使用。镜像与容器是一对多的关系。镜像构建成功后,便可以基于镜像创建容器实例。最后,将创建出的容器实例启动,完成应用的发布工作。
[0022]如图4所示的根据实例配置,分解成具体任务,即镜像构建任务,创建容器实例任务和启动容器实例任务。同一类型的镜像只需要构建一次,资源调度中心选择一个合适的节点,执行镜像构建任务。根据服务的节点分布情况,在对应节点执行容器实例创建任务和容器实例启动任务。任务之间有依赖关系,容器创建任务依赖对应的镜像构建任务,而容器实例启动任务则依赖对应的容器创建任务。
[0023]如图5所示的构建镜像过程流程图,为最大化的重用镜像,镜像根据软件及配置进行标识。对于需要部署的服务,根据元数据中定义的软件类型,以及用户的配置参数,进行摘要计算,并把计算结果保存为镜像的标识。根据此标识,在本地镜像系统中进行查找,如果找到,直接完成镜像构建工作。反之,如果找不到对应的镜像,则到远程镜像仓库中查找,如果还是没有找到,则表示需要构建此种类型的镜像。构建过程需要构建描述文件,描述文件包含该镜像需要安装的软件列表及其配置参数,生成镜像构建描述文件后,基于文件完成镜像构建并上传到镜像仓库中。
[0024]如图6所示的创建容器实例时需要容器的镜像,首先从镜像仓库将镜像下载到本地,镜像文件中包含了服务所需要的软件信息,并加入生命周期脚本对应的入口点。容器创建时,根据每个服务器的不同配置,将配置信息转化成属性文件,传递给容器实例,该属性配置文件用于框架于容器进行信息交换的承载体,同时还要发布容器实例的数据卷和端口信息,最后完成容器的创建过程。
[0025]对于有状态的企业应用,需要能够支持配置更新。生命周期控制器接收到配置更新的请求,解析出新的配置信息,将新的配置信息更新到容器对服务的配置属性文件中。进入到当前容器实例的空间中,运行入口点,传入更新命令。入口点命令最终调用了服务生命周期的更新脚本,完成服务配置修改。对于需要重启的配置修改,需要停止容器,并重新运行。
[0026]【具体实施方式】,以ERP系统为例,阐述本发明的其中一种应用场景。
[0027]如图7和8所示的,首先,部署一个混合集群,部署ERP应用,具有8个应用服务器(mwl...mw8),一个数据库服务(dbl)和负载均衡服务(Ibl)。
[0028]然后,分配后拓扑结构如下图所示:其中,mwl为主节点,Ibl分布在vml上,mwl-mw3在 vm2 上,vm4_vm6 在 vm3 上,dbl 在 vm4 上。
[0029]最后,根据应用配置主要信息,分解成13个任务,其中tl_t3并发执行;t4完成后,七6411并发执行。所有都完成后48执行。〖4依赖〖142依赖〖12 413依赖七3。
[0030]在生产系统中,如果之前构建过WAS镜像,可以直接重用该镜像,S卩tl任务无需消耗资源,其它镜像同理。因此,在最理想情况下,无需创建镜像,而是直接下载仓库中现有的镜像创建容器实例并启动,极大的缩短了部署时间。
[0031]以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。
【主权项】
1.一种容器化部署大企业私有云的方法,其特征在于:设有一应用服务生命周期模型,所述的应用服务生命周期模型融合到容器的生命周期过程中,通过动态构建镜像实现对应用服务运行所需软件环境的封装和配置,所述的应用服务运行与容器中,通过对容器的控制实现对服务生命周期的控制。2.根据权利要求1所述的一种容器化部署大企业私有云的方法,其特征在于:服务生命周期过程包括:创建过程、绑定过程、启动过程、更新过程、状态过程、监控过程、停止过程、解除绑定过程和销毁过程; 所述的创建过程为从软件或目录转化成为能够提供服务能力的过程,所述的创建过程包括配置文件生成,一些目录的创建,参数的初始化,环境变量的设置; 所述的绑定过程为将其它服务纳入到本系统中,共同组成一个整体对外提供服务的过程;所述的绑定过程包括获取被绑定一方的服务信息,并基于这些信息对自身系统进一步配置,进而可以使用这些服务; 所述的启动过程为开始对外提供服务的过程;所述的启动过程会启动一个或多个进程来提供服务; 所述的更新过程为对系统的配置进行改变以调整其服务行为的过程;所述的更新过程包括修改配置文件,系统的参数; 所述的状态过程为获取服务状态的过程;所述的状态过程一般检查服务状态,返回检查结果; 所述的停止过程为停止对外提供服务的过程;所述的停止过程一般会停止一个或多个进程; 所述的解除绑定过程为将本系统中的服务去除出去的过程;所述的解除绑定过程一般会修改系统的配置信息; 所述的销毁过程为去除自身提供服务的能力;所述的销毁过程包括删除配置文件,清除参数和还原环境变量。3.根据权利要求1所述的一种容器化部署大企业私有云的方法,其特征在于:容器生命周期过程包括:构建镜像过程、创建容器实例过程、启动容器过程、停止容器过程和删除容器过程; 所述的构建镜像过程为基于镜像元数据配置,创建容器镜像的过程;所述的构建镜像过程:包括镜像配置标识计算,镜像查询,生成镜像构建文件,构建镜像和上传镜像到镜像仓库; 所述的创建容器实例过程为生成镜像的容器实例的过程;所述的创建容器实例过程包括:下载镜像,配置数据卷,配置环境变量和创建容器; 所述的启动容器过程为容器实例由停止状态到运行状态的过程; 所述的停止容器过程为停止的容器实例运行的过程; 所述的删除容器过程为删除容器实例的过程。4.根据权利要求1或2或3所述的一种容器化部署大企业私有云的方法,其特征在于:通过对容器的控制实现对服务生命周期的控制,最终实现了对应用和服务的生命周期过程的控制;包括如下过程: (I)容器的构建镜像过程会调用服务生命周期的创建和绑定过程; (2)启动容器过会程默认调用服务生命周期的启动脚本; (3)应用的更新、状态及监控过程通过容器访问的入口点完成; (4)停止容器过程调用了服务生命周期的停止过程; (5)删除容器过程调用了服务生命周期的解除绑定和删除过程。5.根据权利要4所述的一种容器化部署大企业私有云的方法,其特征在于:容器生命周期过程覆盖了服务生命周期过程。6.—种容器化部署大企业私有云的系统,其特征在于,包括:镜像仓库、镜像管理器、任务中心、容器控制器和生命周期控制器; 所述的镜像仓库用于存放基础镜像和系统运行过程中动态创建的镜像; 所述的镜像管理器用于根据所需环境和配置,构建镜像,上传到镜像仓库; 所述的任务中心用于根据任务的依赖关系调度任务的执行,查询任务的执行状态; 所述的容器控制器用于创建容器实例,控制容器的状态,对容器配置进行更新和监控;所述的生命周期控制器用于应用服务的生命周期控制,对不同的控制请求,分解成任务列表,进而调度执行。
【专利摘要】本发明涉及一种容器化部署大企业私有云的方法和系统,设有一应用服务生命周期模型,所述的应用服务生命周期模型融合到容器的生命周期过程中,通过动态构建镜像实现对应用服务运行所需软件环境的封装和配置,所述的应用服务运行与容器中,通过对容器的控制实现对服务生命周期的控制。本发明将应用系统和服务部署到容器中运行,能够极大的加快部署速度,提高隔离性和安全性,降低资源的消耗,并且对于有状态的企业应用,能够对其进行配置和监控等运维工作。
【IPC分类】H04L29/08
【公开号】CN105577779
【申请号】CN201510962751
【发明人】赵国滨
【申请人】用友网络科技股份有限公司
【公开日】2016年5月11日
【申请日】2015年12月21日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1