CN114296832A - 一种部署微服务的生产环境的方法和装置 - Google Patents

一种部署微服务的生产环境的方法和装置 Download PDF

Info

Publication number
CN114296832A
CN114296832A CN202111664955.3A CN202111664955A CN114296832A CN 114296832 A CN114296832 A CN 114296832A CN 202111664955 A CN202111664955 A CN 202111664955A CN 114296832 A CN114296832 A CN 114296832A
Authority
CN
China
Prior art keywords
configuration file
service
upgrading
production environment
micro
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.)
Pending
Application number
CN202111664955.3A
Other languages
English (en)
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.)
Beijing E Hualu Information Technology Co Ltd
Original Assignee
Beijing E Hualu Information 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 Beijing E Hualu Information Technology Co Ltd filed Critical Beijing E Hualu Information Technology Co Ltd
Priority to CN202111664955.3A priority Critical patent/CN114296832A/zh
Publication of CN114296832A publication Critical patent/CN114296832A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

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

Description

一种部署微服务的生产环境的方法和装置
技术领域
本申请属于计算机技术领域,具体涉及一种部署微服务的生产环境的方法和装置。
背景技术
微服务(Microservices)是一种软件架构风格,是以专注于单一责任与功能的小型功能区块(Small Building Blocks)为基础,利用模块化的方式组合出复杂的大型应用程序,各功能区块使用与语言无关的API集相互通信。
但伴随着微服务架构而来的,是服务众多和维护工作量增加。在部署微服务架构的过程中,如果采用纯手动人工部署的方式,不仅效率低下,且操作流程不能标准化、流程化、可视化,部署上线的质量和效率完全取决于运维人员的技能水平一旦部署出现问题,不容易追溯。
申请内容
本申请实施例的目的是提供一种部署微服务的生产环境的方法和装置,以解决现有技术采用纯手动人工部署的方式效率低下的缺陷。
为了解决上述技术问题,本申请是这样实现的:
第一方面,提供了一种部署微服务的生产环境的方法,包括以下步骤:
构建生产环境所需的软件包,并将所述软件包发布至生产环境发布资源池;
从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,并根据所述配置文件,对所述各个微服务进行升级;
在升级完毕后,重启所述各个微服务。
第二方面,提供了一种部署微服务的生产环境的装置,包括:
构建模块,用于构建生产环境所需的软件包,并将所述软件包发布至生产环境发布资源池;
升级模块,用于从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,并根据所述配置文件,对所述各个微服务进行升级;
重启模块,用于在升级完毕后,重启所述各个微服务。
本申请实施例对上线部署流程进行固定,能够确保部署操作标准统一,从而提高了部署效率,提升了上线部署质量,节约了软件开发成本,最大程度地减少了运维人员对业务服务器的直接操作,降低了运维人员部署过程中误操作的风险。
附图说明
图1是本申请实施例提供的一种部署微服务的生产环境的方法流程图;
图2是本申请实施例提供的部署微服务的生产环境的方法的一种具体实现图;
图3是本申请实施例提供的一种部署微服务的生产环境的装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例通过结合ansible脚本和shell脚本,实现微服务生产环境部署过程的标准化、流程化,再结合jenkins的参数化构建功能,实现部署过程的可视化。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的部署微服务的生产环境的方法进行详细地说明。
如图1所示,为本申请实施例提供的一种部署微服务的生产环境的方法流程图,该方法包括以下步骤:
步骤101,构建生产环境所需的软件包,并将所述软件包发布至生产环境发布资源池。
步骤102,从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,并根据所述配置文件,对所述各个微服务进行升级。
其中,配置文件包括以下文件中的至少一种:remote-config文件、local-config文件和jar文件。
本实施例中,根据所述配置文件,对所述各个微服务进行升级之前,还可以对所述各个微服务的线上环境进行全量备份。
此外,根据所述配置文件,对所述各个微服务进行升级之前,还可以将线上在用的配置文件与所述升级所需要的配置文件进行对比,判断所述配置文件中修改的内容是否正确。
相应地,在所述配置文件中修改的内容正确的情况下,根据所述配置文件,对所述各个微服务进行升级。
步骤103,在升级完毕后,重启所述各个微服务。
本实施例中,在升级完毕后,重启所述各个微服务之后,还可以查看服务启动日志,并根据所述服务启动日志判断所述各个微服务是否正常启动,若不能正常启动,则执行回滚服务,并通知开发人员排查。
此外,在升级完毕后,重启所述各个微服务之后,还可以查看服务启动日志,并根据所述服务启动日志判断所述各个微服务是否正常启动,若正常启动,则清理所述生产环境发布资源池中的配置文件。
本申请实施例对上线部署流程进行固定,能够确保部署操作标准统一,从而提高了部署效率,提升了上线部署质量,节约了软件开发成本,最大程度地减少了运维人员对业务服务器的直接操作,降低了运维人员部署过程中误操作的风险。
在本申请实施例中,ansible脚本及shell脚本相结合,实现升级前配置文件的对比、升级前备份、升级后可回滚至指定版本、查看项目启动日志、按需重启指定业务、升级后清理升级文件等升级过程全流程操作的标准化、流程化。此外,与jenkins的参数化构建功能相结合,可将部署的全过程进行可视化。
如图2所示,为本申请实施例提供的部署微服务的生产环境的方法的一种具体实现图,该实现流程具体包括:建生产环境所需的软件包并发布至生产环境发布资源池;级前对线上环境进行全量备份;判断每个服务升级所需要的升级文件,包括:remote-config、local-config、jar;如果需要升级配置文件,则将线上在用的配置文件与升级的配置文件进行对比,判断修改的内容是正确;对服务进行升级,包括:remote-config、local-config、jar;查看服务启动日志,判断服务是否正常启动,如果不能正常启动则进行回滚后通知开发人员排查;升级成功后清理发布资源池中的升级文件,避免误操作。
通过采用上述实现流程,可以在部署过程中实现获取升级代码、升级前备份、对比配置文件、选择升级内容(jar包或配置)、查看项目启动日志、代码回滚等操作,还能够将部署的全流程进行记录,以便于后续的追溯和复盘,实现了部署过程的标准化、可视化、流程化。
如图3所示,为本申请实施例提供的一种部署微服务的生产环境的装置的结构示意图,包括:
构建模块310,用于构建生产环境所需的软件包,并将所述软件包发布至生产环境发布资源池。
升级模块320,用于从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,并根据所述配置文件,对所述各个微服务进行升级。
其中,配置文件包括以下文件中的至少一种:remote-config文件、local-config文件和jar文件。
本实施例中,上述装置,还包括:
判断模块,用于将线上在用的配置文件与所述升级所需要的配置文件进行对比,判断所述配置文件中修改的内容是否正确。
相应地,升级模块320,具体用于从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,在所述配置文件中修改的内容正确的情况下,根据所述配置文件,对所述各个微服务进行升级。
重启模块330,用于在升级完毕后,重启所述各个微服务。
本实施例中,上述的装置,还包括:
备份模块,用于对所述各个微服务的线上环境进行全量备份。
查看模块,用于查看服务启动日志,并根据所述服务启动日志判断所述各个微服务是否正常启动。
回滚模块,用于若所述各个微服务不能正常启动,则执行回滚服务,并通知开发人员排查。
清理模块,用于若所述各个微服务正常启动,则清理所述生产环境发布资源池中的配置文件。
本申请实施例对上线部署流程进行固定,能够确保部署操作标准统一,从而提高了部署效率,提升了上线部署质量,节约了软件开发成本,最大程度地减少了运维人员对业务服务器的直接操作,降低了运维人员部署过程中误操作的风险。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述部署微服务的生产环境的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random AccessMemory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

Claims (10)

1.一种部署微服务的生产环境的方法,其特征在于,包括以下步骤:
构建生产环境所需的软件包,并将所述软件包发布至生产环境发布资源池;
从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,并根据所述配置文件,对所述各个微服务进行升级;
在升级完毕后,重启所述各个微服务。
2.根据权利要求1所述的方法,其特征在于,所述根据所述配置文件,对所述各个微服务进行升级之前,还包括:
对所述各个微服务的线上环境进行全量备份。
3.根据权利要求1所述的方法,其特征在于,所述配置文件包括以下文件中的至少一种:remote-config文件、local-config文件和jar文件;
所述根据所述配置文件,对所述各个微服务进行升级之前,还包括:
将线上在用的配置文件与所述升级所需要的配置文件进行对比,判断所述配置文件中修改的内容是否正确;
所述根据所述配置文件,对所述各个微服务进行升级,具体包括:
在所述配置文件中修改的内容正确的情况下,根据所述配置文件,对所述各个微服务进行升级。
4.根据权利要求1所述的方法,其特征在于,所述在升级完毕后,重启所述各个微服务之后,还包括:
查看服务启动日志,并根据所述服务启动日志判断所述各个微服务是否正常启动,若不能正常启动,则执行回滚服务,并通知开发人员排查。
5.根据权利要求4所述的方法,其特征在于,所述在升级完毕后,重启所述各个微服务之后,还包括:
查看服务启动日志,并根据所述服务启动日志判断所述各个微服务是否正常启动,若正常启动,则清理所述生产环境发布资源池中的配置文件。
6.一种部署微服务的生产环境的装置,其特征在于,包括:
构建模块,用于构建生产环境所需的软件包,并将所述软件包发布至生产环境发布资源池;
升级模块,用于从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,并根据所述配置文件,对所述各个微服务进行升级;
重启模块,用于在升级完毕后,重启所述各个微服务。
7.根据权利要求6所述的装置,其特征在于,还包括:
备份模块,用于对所述各个微服务的线上环境进行全量备份。
8.根据权利要求6所述的装置,其特征在于,所述配置文件包括以下文件中的至少一种:remote-config文件、local-config文件和jar文件;
所述装置,还包括:
判断模块,用于将线上在用的配置文件与所述升级所需要的配置文件进行对比,判断所述配置文件中修改的内容是否正确;
所述升级模块,具体用于从所述生产环境发布资源池中获取各个微服务升级所需要的配置文件,在所述配置文件中修改的内容正确的情况下,根据所述配置文件,对所述各个微服务进行升级。
9.根据权利要求6所述的装置,其特征在于,还包括:
查看模块,用于查看服务启动日志,并根据所述服务启动日志判断所述各个微服务是否正常启动;
回滚模块,用于若所述各个微服务不能正常启动,则执行回滚服务,并通知开发人员排查。
10.根据权利要求9所述的装置,其特征在于,还包括:
清理模块,用于若所述各个微服务正常启动,则清理所述生产环境发布资源池中的配置文件。
CN202111664955.3A 2021-12-31 2021-12-31 一种部署微服务的生产环境的方法和装置 Pending CN114296832A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111664955.3A CN114296832A (zh) 2021-12-31 2021-12-31 一种部署微服务的生产环境的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111664955.3A CN114296832A (zh) 2021-12-31 2021-12-31 一种部署微服务的生产环境的方法和装置

Publications (1)

Publication Number Publication Date
CN114296832A true CN114296832A (zh) 2022-04-08

Family

ID=80973297

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111664955.3A Pending CN114296832A (zh) 2021-12-31 2021-12-31 一种部署微服务的生产环境的方法和装置

Country Status (1)

Country Link
CN (1) CN114296832A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106610836A (zh) * 2016-12-23 2017-05-03 国网信息通信产业集团有限公司 一种微服务运行管理工具
CN111309441A (zh) * 2020-02-19 2020-06-19 北京中数智汇科技股份有限公司 一种基于Jenkins实现DevOps的微服务部署方法
CN111352635A (zh) * 2019-04-16 2020-06-30 深圳市鸿合创新信息技术有限责任公司 一种部署微服务的方法及装置、电子设备
CN111708571A (zh) * 2020-06-17 2020-09-25 珠海宏桥高科技有限公司 微服务部署方法、装置、电子设备及存储介质
CN112162753A (zh) * 2020-09-28 2021-01-01 腾讯科技(深圳)有限公司 软件部署方法、装置、计算机设备和存储介质
CN112181439A (zh) * 2020-09-24 2021-01-05 中国建设银行股份有限公司 一种微服务部署方法、装置、电子设备及可读存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106610836A (zh) * 2016-12-23 2017-05-03 国网信息通信产业集团有限公司 一种微服务运行管理工具
CN111352635A (zh) * 2019-04-16 2020-06-30 深圳市鸿合创新信息技术有限责任公司 一种部署微服务的方法及装置、电子设备
CN111309441A (zh) * 2020-02-19 2020-06-19 北京中数智汇科技股份有限公司 一种基于Jenkins实现DevOps的微服务部署方法
CN111708571A (zh) * 2020-06-17 2020-09-25 珠海宏桥高科技有限公司 微服务部署方法、装置、电子设备及存储介质
CN112181439A (zh) * 2020-09-24 2021-01-05 中国建设银行股份有限公司 一种微服务部署方法、装置、电子设备及可读存储介质
CN112162753A (zh) * 2020-09-28 2021-01-01 腾讯科技(深圳)有限公司 软件部署方法、装置、计算机设备和存储介质

Similar Documents

Publication Publication Date Title
CN108920250B (zh) 应用程序容器化的方法及装置
CN110908859B (zh) 应用服务处理方法、装置、终端及存储介质
CN107800783B (zh) 远程监控服务器的方法及装置
WO2017028574A1 (zh) 一种路由器测试方法和测试装置
CN110727575B (zh) 一种信息处理方法、***、装置、以及存储介质
CN111163340A (zh) 一种基于车联网的ivi***远程log上报方法和装置
CN111475390A (zh) 日志采集***部署方法、装置、设备及存储介质
CN115098063A (zh) 项目开发方法、装置和电子设备
CN114666407A (zh) 一种rpa跨端通信方法及设备
CN111339136A (zh) 一种数据检核方法、装置、电子设备及存储介质
CN114296832A (zh) 一种部署微服务的生产环境的方法和装置
CN109960657B (zh) 一种测试环境部署方法及相关装置
CN116450165A (zh) 一种快速搭建环境及部署程序的方法、***、终端及存储介质
WO2016131294A1 (zh) 版本升级处理方法及装置
CN112596750B (zh) 应用测试方法、装置、电子设备及计算机可读存储介质
CN115390861A (zh) 资源部署方法、装置及设备和存储介质
CN114489999A (zh) 流水线任务的处理方法和装置、处理器及电子设备
CN111625256B (zh) 一种应用程序升级方法、***、设备及计算机存储介质
CN111198725B (zh) 应用启动的处理方法、计算设备及计算机存储介质
CN113326052A (zh) 业务组件的升级方法、装置、计算机设备和存储介质
CN112559155A (zh) 批量作业处理方法、***、计算机设备及可读存储介质
CN111400094A (zh) 一种服务器***恢复出厂设置的方法、装置、设备及介质
CN112948195A (zh) 接口测试的方法、装置、电子设备和存储介质
CN117707609B (zh) 一种基于容器编排管理工具管理脚本任务的方法及装置
CN113849364B (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