[发明专利]一种分布式软件升级系统及其实现方法在审
申请号: | 201711292472.9 | 申请日: | 2017-12-08 |
公开(公告)号: | CN108052336A | 公开(公告)日: | 2018-05-18 |
发明(设计)人: | 邓玉芳;季统凯 | 申请(专利权)人: | 国云科技股份有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F8/71;G06F11/14 |
代理公司: | 北京科亿知识产权代理事务所(普通合伙) 11350 | 代理人: | 汤东凤 |
地址: | 523808 广东省东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 软件 升级 系统 及其 实现 方法 | ||
本发明涉及软件升级技术领域,特别是一种分布式软件升级系统及其实现方法。本发明所述方法包括升级包服务端、控制端和代理端三部分,升级包服务端主要负责代码更新编译、制作打包与发布;控制端主要负责版本检测和平台所有节点服务的升级流程,代理端安装在平台的每个节点上,包括数据库升级插件工具、配置文件插件工具、环境依赖插件工具,根据控制端的调用执行相应操作。本发明适用于分布式异构软件系统的升级与更新,以独立插件工具的方式运行在各异构软件系统中,可以多种方式灵活配置升级相应的模块。
技术领域
本发明涉及软件升级技术领域,特别是一种分布式软件升级系统及其实现方法。
背景技术
随着虚拟化的发展,越来越多的云平台诞生。在云平台快速迭代开发的同时,更新客户的云平台环境通常会遇到以下问题:某产品经过多个版本迭代,系统架构变化较大;相关人员离职,新来人员对业务不熟悉。要对旧有客户环境升级,通常需要维护人员手工升级各节点组件,评估客户的原有环境、升级的难度以及升级后会不会带来其他问题等。这样的做法往往造成维护难度大,升级耗时长,升级成功率不高,不便于需求变更的快速响应,增加了系统的维护成本。
发明内容
本发明解决的技术问题在于提供一种分布式软件升级系统及其实现方法,以便在即使不熟悉客户环境、不熟悉产品版本特性的情况下都能很容易的做到快速成功升级云平台。
本发明解决上述技术问题的技术方案是:
所述的系统包括升级包服务端、控制端和代理端三部分;
所述的升级包服务端实现:
一键发布功能,包括代码更新编译、打包制作、上传发布;
版本信息管理,包括升级版本特性、说明和注意事项等;
对外提供升级包版本信息接口;
对外提供升级包下载接口;
所述的控制端实现:
定时检测是否有新版本;
升级包下载;
一键升级;
根据配置好的升级步骤,并发远程对平台各节点进行服务升级;
所述的安装在平台的每个节点上的代理端包括数据库升级插件工具、配置文件升级插件工具和环境依赖插件工具;根据当前组件服务版本与发布的版本进行版本差升级,根据升级还是降级来判断需要执行哪些文件。
所述的代理端数据库升级插件工具,只有被控制端调用时才触发数据库升级过程,并提供数据库升级日志查看工具供控制端调用;
所述的代理端配置项升级插件工具,只有被控制端调用时才触发配置项升级过程,并提供配置项升级日志查看工具供控制端调用;
所述的代理端环境依赖升级插件工具,只有被控制端调用时才触发环境依赖升级过程,并提供配置项升级日志查看工具供控制端调用。
所述的方法是:
下载升级包;
判断所有节点升级是否完成,是则进行平台服务检测、关键功能检测;如无错误则结束;如检测出错,则判断此次升级失败,并记录失败原因;然后回滚;回滚后结束;
如有节点升级未完成,则获取一个未升级的节点;判断是否需要回滚,如需要回滚,则回滚操作后结束;如不需要回滚,则进行一键升级;
一键升级包括停止服务、备份、代码升级、数据库升级、配置文件升级、依赖库升级;
如升级过程中出现异常;则判断此次升级失败,并记录失败原因;然后回滚;回滚后结束;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国云科技股份有限公司,未经国云科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711292472.9/2.html,转载请声明来源钻瓜专利网。