一种基于容器管理引擎的应用运维方法和系统技术方案

技术编号:21832037 阅读:26 留言:0更新日期:2019-08-10 17:46
一种基于容器管理引擎的应用运维方法,该方法包括以下步骤:构建微服务镜像;以容器形式规划、编排应用服务架构,形成应用蓝图;对应用蓝图进行部署,并形成以应用为维度的实例;配置应用/服务的健康检查方式;配置应用/服务的告警策略;运维人员收到告警消息后,根据消息提示,采取相应的运维方式处理。

An Application Operation and Maintenance Method and System Based on Container Management Engine

【技术实现步骤摘要】
一种基于容器管理引擎的应用运维方法和系统
本专利技术属于软件运维
,特别涉及一种基于容器管理引擎的应用运维方法和系统。
技术介绍
在当今的Web和移动应用开发过程中,开发者倾向于基于服务去构建应用程序,而不是从车轮造起。一般情况下,这些服务称之为微服务——单用途,API可访问的应用变成了构建大型应用的基石。“微服务”架构是近期软件应用领域非常热门的概念,可以大幅度改善传统应用开发遇到的一些典型问题。例如,使用传统的整体式架构(MonolithicArchitecture)应用开发系统,如CRM、ERP等大型应用,随着新需求的不断增加,企业更新和修复大型整体式应用变得越来越困难。随着移动互联网的发展,企业被迫将其应用迁移至现代化UI界面架构以便能兼容移动设备,这要求企业能实现应用功能的快速上线。基于这种需求,越来越多的企业和行业的复杂系统的构建模式逐渐从传统的单体应用向微服务架构开始改变。这种改变带来的直接后果就是行业业务将从由几个相对独立的大型单体应用构成转变为由大量的相互有关联的微应用构成。这种模式将有力的改善行业业务系统的更新发展方式,推动行业业务应用以互联网的方式以迭代滚动的爆发式增长。这也将为行业业务带来无尽的活力。现在正在逐渐变为热点的DevOps相关的一系列技术以及基于云平台的应用自动化部署和发布等能力的大幅度发展都将有力的推动这一进程。但是这种行业业务系统由大量微应用构成的方式也为系统的运维带来了新的挑战。应用的增加所带来了的运维复杂度将会对运维团队带来巨大的挑战,如何能够使运维团队方便快捷地定位问题、升级应用、并修复问题是目前需要解决的问题。
技术实现思路
本专利技术提供一种基于容器管理引擎的应用运维方法和系统,目的在于解决运维团队对微服务架构体系应用的运维问题。本专利技术实施例之一,一种基于容器管理引擎的应用运维方法,该方法包括以下步骤:构建微服务镜像;以容器形式规划、编排应用服务架构,形成应用蓝图;对应用蓝图进行部署,并形成以应用为维度的实例;配置应用/服务的健康检查方式;配置应用/服务的告警策略;运维人员收到告警消息后,根据消息提示,采取相应的运维方式处理。本专利技术针对应用通过微服务方式改造后,微服务过多及结构复杂所带来的运维难题,从各个维度去分析环境和应用的健康状态,包含计算节点、应用所包含的微服务、构成微服务的容器等,通过设置告警策略、站内信等方式通知运维人员,进行运维操作。本专利技术提出一种以应用蓝图编排,并以应用实例为中心的运维管理,能够通过告警策略和消息通知等形式通知运维人员,并提供一套针对应用/服务/容器的生命周期管理操作来完成应用的运维,达到应用运维的自动化和结构清晰的应用架构体系管理。附图说明通过参考附图阅读下文的详细描述,本专利技术示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本专利技术的若干实施方式,其中:图1根据本专利技术实施例之一的运维管理功能结构图。具体实施方式根据一个或者多个实施例之一,如图1所示,以功能模块构成的形式描述了构成本专利方法提到的运维架构体系,可以通过附图中的功能模块实现一套完整的软件运维系统。镜像管理,通过调用镜像构建服务器将应用程序包生成容器镜像,并储存在镜像仓库内。编排管理,将构成应用架构的服务进行架构编配,配置相互之间的引用关系,并设置好访问入口、环境变量及告警策略和弹性伸缩策略等。应用管理,负责将编排好的应用架构,通过调用容器管理引擎服务器提供的API,将应用服务以容器的形式部署在容器管理引擎计算节点中。应用运维,负责提供应用的迭代升级,状态查看等。监控告警,负责将应用的运行状态以消息或邮件的形式反馈给用户或运维人员。容器管理引擎,提供了面向应用的容器集群部署和管理系统。一种基于容器管理引擎的应用运维方法,包括如下步骤:(1)制作组成应用的微服务镜像。用户可以通过持续集成的方式制作构成微服务的容器镜像,持续集成的起点可以是完成编译构建的具体的应用运行程序包(如java应用的war包和jar包),也可以是从代码库的源代码开始,提供Dockerfile的构建输入,通过镜像构建服务器完成容器镜像的构建。(2)按应用的组织架构,编排微服务镜像。按照应用的组织架构依赖方式,编排服务,构成服务的主体是题哦你通过持续集成方式生成的容器镜像,并对镜像提供了镜像运行所需要的环境变量、配置文件、端口映射和访问入口等依赖;通过对构成应用的所有服务进行配置,最终生成容器部署引擎能够识别的编排文件(如kubernetes能够失败的yaml和json文件)。(3)配置微服务的健康检查方式、告警策略以及弹性伸缩条件。应用的构建过程中,我们可以利用容器管理引擎提供的健康检查的探针,以及服务资源的使用率的监控,并通过回调函数的方式提供告警通知功能;甚至还可以通过对资源使用率的监控,利用容器管理引擎的弹性伸缩功能,完成弹性伸缩的配置。最终以容器部署引擎能识别的编排文件进行部署。(4)通过容器部署引擎,部署由微服务构建的应用。通过容器部署引擎提供的API,部署通过应用编排步骤生成的编排文件,生成容器部署引擎管理的资源信息,其中包含配置文件、访问入口、存储资源、容器container及弹性伸缩和告警策略的监控资源。(5)通过告警消息及监控报警,定位应用的健康状况。运维人员通过接受容器部署引擎配置的回调的告警通知得知应用及服务的运行状态,及存在的问题,进而很好的定位整个环境的问题所在。(6)通过调整微服务资源及负载来修复应用的告警状况。运维人员在对告警监控信息进行分析后,确定是否是微服的配置存在问题、是否是资源利用的问题及部署管理引擎的计算节点等问题,再通过调整配置、增加资源或恢复计算节点等方式来修复应用。(7)通过升级手动完成应用的迭代更新。用户可以通过持续集成构建的镜像版本,选择不同的升级方式进行迭代更新升级(含有滚动升级、蓝绿升级和灰度升级)。根据一个或者多个实施例之一,如图1所示,一种基于容器管理引擎的应用运维系统,该系统包括镜像管理模块、编排管理模块、应用管理模块、应用运维模块,还包括镜像构建服务器及镜像仓库,与镜像管理模块连接,容器管理引擎控制节点,包括负责维护集群状态的控制器、负责资源调度的编排器、API服务器和数据库,API服务器连接镜像管理模块、编排管理模块、应用管理模块和应用运维模块,监控告警管理模块与API服务器连接,容器管理引擎计算节点资源池包括多个计算节点,每个计算节点包括容器管理引擎客户端,容器管理引擎客户端与API服务器相连。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多本文档来自技高网
...

【技术保护点】
1.一种基于容器管理引擎的应用运维方法,其特征在于,该方法包括以下步骤:构建微服务镜像;以容器形式规划、编排应用服务架构,形成应用蓝图;对应用蓝图进行部署,并形成以应用为维度的实例;配置应用/服务的健康检查方式;配置应用/服务的告警策略;运维人员收到告警消息后,根据消息提示,采取相应的运维方式处理。

【技术特征摘要】
1.一种基于容器管理引擎的应用运维方法,其特征在于,该方法包括以下步骤:构建微服务镜像;以容器形式规划、编排应用服务架构,形成应用蓝图;对应用蓝图进行部署,并形成以应用为维度的实例;配置应用/服务的健康检查方式;配置应用/服务的告警策略;运维人员收到告警消息后,根据消息提示,采取相应的运维方式处理。2.一种基于容器管理引擎的应用运维方法,其特征在于,制作组成应用的微服务镜像;按应用的组织架构,编排微服务镜像;配置微服务的健康检查方式、告警策略以及弹性伸缩条件;通过容器部署引擎,部署由微服务构建的应用;通过告警消息及监控报警,定位应用的健康状况;通过调整微...

【专利技术属性】
技术研发人员:陈昊王鹏姜玉峰于会游黄飞滕姿杨志林许文宝夏维虎丁帆孙文登刘航杜浩
申请(专利权)人:中电科嘉兴新型智慧城市科技发展有限公司中电科华云信息技术有限公司
类型:发明
国别省市:浙江,33

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

1