一种部署微服务的生产环境的方法和装置制造方法及图纸

技术编号:32974005 阅读:19 留言:0更新日期:2022-04-09 11:47
本申请公开了一种部署微服务的生产环境的方法和装置,该方法包括以下步骤:构建生产环境所需的软件包,并将所述软件包发布至生产环境发布资源池;从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,并根据所述配置文件,对所述各个微服务进行升级;在升级完毕后,重启所述各个微服务。本申请实施例对上线部署流程进行固定,能够确保部署操作标准统一,从而提高了部署效率,提升了上线部署质量,节约了软件开发成本,最大程度地减少了运维人员对业务服务器的直接操作,降低了运维人员部署过程中误操作的风险。维人员部署过程中误操作的风险。维人员部署过程中误操作的风险。

【技术实现步骤摘要】
一种部署微服务的生产环境的方法和装置


[0001]本申请属于计算机
,具体涉及一种部署微服务的生产环境的方法和装置。

技术介绍

[0002]微服务(Microservices)是一种软件架构风格,是以专注于单一责任与功能的小型功能区块(Small Building Blocks)为基础,利用模块化的方式组合出复杂的大型应用程序,各功能区块使用与语言无关的API集相互通信。
[0003]但伴随着微服务架构而来的,是服务众多和维护工作量增加。在部署微服务架构的过程中,如果采用纯手动人工部署的方式,不仅效率低下,且操作流程不能标准化、流程化、可视化,部署上线的质量和效率完全取决于运维人员的技能水平一旦部署出现问题,不容易追溯。
[0004]申请内容
[0005]本申请实施例的目的是提供一种部署微服务的生产环境的方法和装置,以解决现有技术采用纯手动人工部署的方式效率低下的缺陷。
[0006]为了解决上述技术问题,本申请是这样实现的:
[0007]第一方面,提供了一种部署微服务的生产环境的方法,包括以下步骤:
[0008]构建生产环境所需的软件包,并将所述软件包发布至生产环境发布资源池;
[0009]从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,并根据所述配置文件,对所述各个微服务进行升级;
[0010]在升级完毕后,重启所述各个微服务。
[0011]第二方面,提供了一种部署微服务的生产环境的装置,包括:
[0012]构建模块,用于构建生产环境所需的软件包,并将所述软件包发布至生产环境发布资源池;
[0013]升级模块,用于从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,并根据所述配置文件,对所述各个微服务进行升级;
[0014]重启模块,用于在升级完毕后,重启所述各个微服务。
[0015]本申请实施例对上线部署流程进行固定,能够确保部署操作标准统一,从而提高了部署效率,提升了上线部署质量,节约了软件开发成本,最大程度地减少了运维人员对业务服务器的直接操作,降低了运维人员部署过程中误操作的风险。
附图说明
[0016]图1是本申请实施例提供的一种部署微服务的生产环境的方法流程图;
[0017]图2是本申请实施例提供的部署微服务的生产环境的方法的一种具体实现图;
[0018]图3是本申请实施例提供的一种部署微服务的生产环境的装置的结构示意图。
具体实施方式
[0019]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0020]本申请实施例通过结合ansible脚本和shell脚本,实现微服务生产环境部署过程的标准化、流程化,再结合jenkins的参数化构建功能,实现部署过程的可视化。
[0021]下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的部署微服务的生产环境的方法进行详细地说明。
[0022]如图1所示,为本申请实施例提供的一种部署微服务的生产环境的方法流程图,该方法包括以下步骤:
[0023]步骤101,构建生产环境所需的软件包,并将所述软件包发布至生产环境发布资源池。
[0024]步骤102,从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,并根据所述配置文件,对所述各个微服务进行升级。
[0025]其中,配置文件包括以下文件中的至少一种:remote

config文件、local

config文件和jar文件。
[0026]本实施例中,根据所述配置文件,对所述各个微服务进行升级之前,还可以对所述各个微服务的线上环境进行全量备份。
[0027]此外,根据所述配置文件,对所述各个微服务进行升级之前,还可以将线上在用的配置文件与所述升级所需要的配置文件进行对比,判断所述配置文件中修改的内容是否正确。
[0028]相应地,在所述配置文件中修改的内容正确的情况下,根据所述配置文件,对所述各个微服务进行升级。
[0029]步骤103,在升级完毕后,重启所述各个微服务。
[0030]本实施例中,在升级完毕后,重启所述各个微服务之后,还可以查看服务启动日志,并根据所述服务启动日志判断所述各个微服务是否正常启动,若不能正常启动,则执行回滚服务,并通知开发人员排查。
[0031]此外,在升级完毕后,重启所述各个微服务之后,还可以查看服务启动日志,并根据所述服务启动日志判断所述各个微服务是否正常启动,若正常启动,则清理所述生产环境发布资源池中的配置文件。
[0032]本申请实施例对上线部署流程进行固定,能够确保部署操作标准统一,从而提高了部署效率,提升了上线部署质量,节约了软件开发成本,最大程度地减少了运维人员对业务服务器的直接操作,降低了运维人员部署过程中误操作的风险。
[0033]在本申请实施例中,ansible脚本及shell脚本相结合,实现升级前配置文件的对比、升级前备份、升级后可回滚至指定版本、查看项目启动日志、按需重启指定业务、升级后清理升级文件等升级过程全流程操作的标准化、流程化。此外,与jenkins的参数化构建功能相结合,可将部署的全过程进行可视化。
[0034]如图2所示,为本申请实施例提供的部署微服务的生产环境的方法的一种具体实
现图,该实现流程具体包括:建生产环境所需的软件包并发布至生产环境发布资源池;级前对线上环境进行全量备份;判断每个服务升级所需要的升级文件,包括:remote

config、local

config、jar;如果需要升级配置文件,则将线上在用的配置文件与升级的配置文件进行对比,判断修改的内容是正确;对服务进行升级,包括:remote

config、local

config、jar;查看服务启动日志,判断服务是否正常启动,如果不能正常启动则进行回滚后通知开发人员排查;升级成功后清理发布资源池中的升级文件,避免误操作。
[0035]通过采用上述实现流程,可以在部署过程中实现获取升级代码、升级前备份、对比配置文件、选择升级内容(jar包或配置)、查看项目启动日志、代码回滚等操作,还能够将部署的全流程进行记录,以便于后续的追溯和复盘,实现了部署过程的标准化、可视化、流程化。
[0036]如图3所示,为本申请实施例提供的一种部署微服务的生产环境的装置的结构示意图,包括:
[0037]构建模块310,用于构建生产环境所需的软件包,并将所述软件包发布至生产环境发布资源池。
[0038]升级模块320,用于从所述生产环境发布资源池中获取各个微服本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种部署微服务的生产环境的方法,其特征在于,包括以下步骤:构建生产环境所需的软件包,并将所述软件包发布至生产环境发布资源池;从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,并根据所述配置文件,对所述各个微服务进行升级;在升级完毕后,重启所述各个微服务。2.根据权利要求1所述的方法,其特征在于,所述根据所述配置文件,对所述各个微服务进行升级之前,还包括:对所述各个微服务的线上环境进行全量备份。3.根据权利要求1所述的方法,其特征在于,所述配置文件包括以下文件中的至少一种:remote

config文件、local

config文件和jar文件;所述根据所述配置文件,对所述各个微服务进行升级之前,还包括:将线上在用的配置文件与所述升级所需要的配置文件进行对比,判断所述配置文件中修改的内容是否正确;所述根据所述配置文件,对所述各个微服务进行升级,具体包括:在所述配置文件中修改的内容正确的情况下,根据所述配置文件,对所述各个微服务进行升级。4.根据权利要求1所述的方法,其特征在于,所述在升级完毕后,重启所述各个微服务之后,还包括:查看服务启动日志,并根据所述服务启动日志判断所述各个微服务是否正常启动,若不能正常启动,则执行回滚服务,并通知开发人员排查。5.根据权利要求4所述的方法,其特征在于,所述在升级完毕后,重启所述各个微服务之后,还包括:查看服务启动日志,并根据所述服务启动日志判断所述各个微服务是否正常启动,若正常启动,则清理所述...

【专利技术属性】
技术研发人员:董宏元史墨轩
申请(专利权)人:北京易华录信息技术股份有限公司
类型:发明
国别省市:

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

1