CN115826996A - 基于两库模式的轻型跨平台分布式的系统自动化部署工具 - Google Patents
基于两库模式的轻型跨平台分布式的系统自动化部署工具 Download PDFInfo
- Publication number
- CN115826996A CN115826996A CN202211470635.9A CN202211470635A CN115826996A CN 115826996 A CN115826996 A CN 115826996A CN 202211470635 A CN202211470635 A CN 202211470635A CN 115826996 A CN115826996 A CN 115826996A
- Authority
- CN
- China
- Prior art keywords
- server
- program
- maintenance
- remote
- package
- 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
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了基于两库模式的轻型跨平台分布式的系统自动化部署工具,包括运维助手和运维系统两部分组成,包括以下步骤,P1,运维助手通过安装程序部署在客户端,运维系统通过运维助手部署在远程服务器;P2,运维助手从远程中央仓库拉取授权的程序包至客户端本地仓库,运维助手上传程序包至远程服务器;P3,在运维助手访问运维系统服务端,通过运维系统服务端部署打包程序并进行实时监控;P4,通过运维系统对服务器中程序包进行持久化操作。本发明通过轻量级:自动化部署使用简单,有效管理应用程序包,使得更新回滚更快捷,一键式按钮操作,上手更方便,大大提高产品部署效率,并且有效的减少人为失误。
Description
技术领域
本发明涉及DevOps技术领域,具体为基于两库模式的轻型跨平台分布式的系统自动化部署工具。
背景技术
随着我国软件产业在快速的发展,软件产品要正常运行使用,必须先进行部署上线;以前都是靠人工手动部署,难免会人为出差错,更新发布管控困难并且重复繁琐;当需要同时部署多台服务器时,手工部署效率低下、严重影响系统上线时间,这时就需要用到自动化部署工具,解决生产环境中基于java开发的分布式系统的部署复杂度,通过自动化部署很大的提高了部署效率节约时间成本,通过配置应用中心界面配置后,向业务服务器传递配置的最新状态,配置变更可以实时更新应用的配置,通知配置应用客户端进行解析、加载、生效,基于字典文件,模板文件生成最终的目标配置文件,进行应用程序的自动化安装,解决统一管理软件安装包,对于生产环境可以实时升级,回滚,实时监控以及重要数据的自动化备份,日志管理保障生产环境的安全,而目前现有技术系统复杂、使用难度大、初始化配置内容过多,需要花费时间学习各种脚本技术,对实施运维人员技术水平要求较高,增大学习成本和人力成本。
现有的系统自动化部署工具存在的缺陷是:
1、现有的系统自动化部署工具操作过于复杂,使用步骤比较繁琐,不方便操作;
2、现有技术没有实现全面监测,造成无法准确了解各类资源使用情况的信息,容易出现问题;
3、现有技术中,缺少自动保存文件和数据备份的功能,设备在出现问题是,容易造成数据丢失的情况;
4、现有技术中各种程序包、配置管理比较分散,造成难于集中管理程序包、配置信息。
发明内容
本发明的目的在于提供基于两库模式的轻型跨平台分布式的系统自动化部署工具,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:基于两库模式的轻型跨平台分布式的系统自动化部署工具,包括运维助手和运维系统两部分组成,
包括以下步骤,
P1,运维助手通过安装程序部署在客户端,运维系统通过运维助手部署在远程服务器;
P2,运维助手从远程中央仓库拉取授权的程序包至客户端本地仓库,运维助手上传程序包至远程服务器;
P3,在运维助手访问运维系统服务端,通过运维系统服务端部署打包程序并进行实时监控;
P4,通过运维系统对服务器中程序包进行持久化操作。
优选的,所述运维助手,包括远程仓库、本地仓库、服务器信息管理、数据库信息管理和两部署。
优选的,所述运维系统结构如下,包括部署中心、配置中心、本地备份、远程备份、监控。
优选的,所述远程仓库:第三方高性能分布式对象存储服务器,在项目中主要作用是集中存储软件安装包,运维助手从中拉取应用程序包,再推送到远程服务器;
其中的程序包所在的目录结构是按项目按版本简单清晰明了,同步远程目录层级结构到本地。
优选的,所述本地仓库:运维助手程序部署的服务器磁盘,在项目中用于存放远程仓库下载的程序,实现可跨网络进行上传部署应用程序。
优选的,所述服务器信息管理:在项目中用于对项目环境的服务器进行管理控制,通过SSH网络安全协议,通过加密和认证机制实现安全的访问和文件传输上传部署程序至此服务器。
优选的,所述数据库信息管理:在项目中用于对项目环境的数据库进行管理控制。
优选的,所述两部署:通过Java代码配合网络安全协议建立服务器与服务器之间的连接,传送程序包至远程服务器,对服务器上的程序包进行部署、安装、启动、停止、卸载、升级、回滚操作。
优选的,所述部署中心:添加需要部署产品的服务器信息,配置中间件参数,自动化部署中间件,在程序管理可获取程序对应版本进行安装升级回滚,在产品管理里生成配置自动化部署产品。
优选的,所述配置中心:添加应用程序运行所需要的属性值和数据源以及事件管理,数据源是程序环境运行节点,事件管理是应用程序对数据的生产与消费。
优选的,所述本地备份:可对数据库数据进行自动导出成sql文件进行备份,对程序java包进行定时任务copy备份至本地。
优选的,所述远程备份:通过Java技术集成ssh协议执行数据备份命令进行自动化备份。
优选的,所述监控包括服务器性能状态监控、应用程序运行状态监控、中间件稳定状态监控:
所述服务器性能状态监控:内存、cpu、磁盘、线程数、网络io;
所述应用程序运行状态监控:pid进程、使用内存情况、接口探测存活;
所述中间件稳定状态监控:数据接发信息、磁盘io。
与现有技术相比,本发明的有益效果是:
1、本发明通过轻量级:自动化部署使用简单,有效管理应用程序包,使得更新回滚更快捷,一键式按钮操作,上手更方便,大大提高产品部署效率,并且有效的减少人为失误。
2、本发明通过监控全面:对服务器资源消耗性能状态进行监控,服务器核心功能的状态,它可以协助确定服务器操作调整、硬件更换和性能优化,物理检查可能包括CPU利用率、内存可用性和磁盘容量等,服务器性能监测对于识别风险和优化服务器性能非常重要,在实际生产中,我们经常需要做一些监控脚本来监控网站服务或API服务是否健康,包括它们是否可用、响应速度等,传统的方法是通过一些网站监控平台进行监控和报警服务,这些监控平台的原理是通过用户自己设置需要监控的网站和预期的时间阈值,定期发起请求,通过监控平台在不同地区部署的服务器来判断网站或服务的可用性,实现对IT资源的全面监控和管理,如负载平衡设备、网络设备、服务器、存储设备、安全设备、数据库、中间件和应用软件。
3、本发明通过实时自动备份数据库重要数据,消除了可能受到人为错误影响的复杂任务,安全稳定保障数据不会丢失,而且可以节省大量时间,一旦设置好了选项,软件就会在无需人工干预的情况下自动备份系统和数据。
4、本发明通过集中管理:在软件行业中程序包尤为重要,在分布式项目中程序包颇多,且项目迭代中会产生很多程序包,本发明中对程序包放在中央仓库集中管理,清晰的目录结构以及集中化程序包管理使用简单便捷,并且通过项目授权机制更加安全可靠。
附图说明
图1:为本发明的运维助手与各部件连接关系示意图;
图2:为本发明的运维系统内部运行示意图;
图3:为本发明的运维系统内部组件包含模块示意图;
图4:为本发明的两库的配置页面
图5:为本发明的远程仓库拉取程序到本地仓库
图6:为本发明的安装和配置运维工具。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“上”、“下”、“内”、“外”“前端”、“后端”、“两端”、“一端”、“另一端”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“设置有”、“连接”等,应做广义理解,例如“连接”,可以是固定连接,也可以是可拆卸连接,或一体的连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
请参阅图1、图2、图3、图4、图5和图6,本发明提供的一种实施例:基于两库模式的轻型跨平台分布式的系统自动化部署工具,包括运维助手和运维系统两部分组成,
包括以下步骤,
P1,运维助手通过安装程序部署在客户端,运维系统通过运维助手部署在远程服务器;
P2,运维助手从远程中央仓库拉取授权的程序包至客户端本地仓库,运维助手上传程序包至远程服务器;
P3,在运维助手访问运维系统服务端,通过运维系统服务端部署打包程序并进行实时监控;
P4,通过运维系统对服务器中程序包进行持久化操作。
所述运维助手,包括远程仓库、本地仓库、服务器信息管理、数据库信息管理和两部署。
所述运维系统结构如下,包括部署中心、配置中心、本地备份、远程备份、监控。
所述远程仓库:第三方高性能分布式对象存储服务器,在项目中主要作用是集中存储软件安装包,运维助手从中拉取应用程序包,再推送到远程服务器;
其中的程序包所在的目录结构是按项目按版本简单清晰明了,同步远程目录层级结构到本地。
所述本地仓库:运维助手程序部署的服务器磁盘,在项目中用于存放远程仓库下载的程序,实现可跨网络进行上传部署应用程序。
所述服务器信息管理:在项目中用于对项目环境的服务器进行管理控制,通过SSH网络安全协议,通过加密和认证机制实现安全的访问和文件传输上传部署程序至此服务器。
所述数据库信息管理:在项目中用于对项目环境的数据库进行管理控制。
所述两部署:通过Java代码配合网络安全协议建立服务器与服务器之间的连接,传送程序包至远程服务器,对服务器上的程序包进行部署、安装、启动、停止、卸载、升级、回滚操作。
所述部署中心:添加需要部署产品的服务器信息,配置中间件参数,自动化部署中间件,在程序管理可获取程序对应版本进行安装升级回滚,在产品管理里生成配置自动化部署产品。
所述配置中心:添加应用程序运行所需要的属性值和数据源以及事件管理,数据源是程序环境运行节点,事件管理是应用程序对数据的生产与消费。
所述本地备份:可对数据库数据进行自动导出成sql文件进行备份,对程序java包进行定时任务copy备份至本地。
所述远程备份:通过Java技术集成ssh协议执行数据备份命令进行自动化备份。
所述监控包括服务器性能状态监控、应用程序运行状态监控、中间件稳定状态监控:
所述服务器性能状态监控:内存、cpu、磁盘、线程数、网络io;
所述应用程序运行状态监控:pid进程、使用内存情况、接口探测存活;
所述中间件稳定状态监控:数据接发信息、磁盘io。
实施例一,根据图1所示:
运维助手从公司远程仓库拉取授权的程序包至客户端本地仓库,通过添加服务器和数据库相关连接信息后通过Java代码配合SSH协议建立连接,再把本地仓库中的程序包以及运维系统和配置总线推送到客户远程服务器,部署应用程序和运行系统进行对服务的实时监控以及数据备份,具体实施步骤如下:
1.在实施人员或运维人员电脑中初始化运行运维助手,选择一个文件夹做为本地仓库用于存放程序包,配置远程仓库地址,以及账号密码建立连接之后可以获得远程仓库目录结构以及授权的所有程序包。
2.从中央仓库下载经授权的本项目需要部署的程序包到本地仓库同时本地仓库会同步远程仓库的目录结构。
3.添加需要部署的服务器、数据库相关连接信息,支持Linux,windows服务器,支持Oracle、MySQL、SQLServer、PostgreSQL、ClickHouse数据库。
4.分别把需要部署的程序包推送至相应服务器中,单独选一个父程序所在的服务器推送配置总线和运维系统,运行配置总线,推送成功后可一键运行运维系统和配置总线,执行相关数据库脚本、启动程序。支持升级,回滚操作。
实施例二,根据图2所示:
运维系统,对所运行的服务器进行监控以及数据备份,并且对分布式部署中的项目进行服务器管理,具体工作流程如下:
1.通过运维助手初始化运维系统,在系统管理中通过添加需要监测的服务器相关连接信息,首页则可以展示对服务器资源的监控信息。
2.通过数据库管理中配置数据库连接信息,与数据库建立连接,添加需要备份的表,进行自动化备份。
3.在程序管理中添加程序相关信息,如程序所需要安装的服务器信息,以及所安装在服务中盘符路径等,填写之后即可对程序安装,启动,升级回滚操作,在产品管理中创建产品时选择多个或一个程序组成产品,在中间件管理中添加中间件相关信息则可以在服务器信息管理中,对其它服务器运行的中间件进行自动部署,同时支持升级、回滚。
产品的部署,步骤如下:新增产品,选择一个程序为主程序,子程序可以选择多个,即可对产品进行安装操作,以下操作的前提是安装并运行了配置总线monkey,选择服务器以及盘符路径,点击安装产品,首先会进行运行环境安装,然后执行脚本配置服务器系统变量,部署依赖程序和子程序检查数据库服务是否开启,连接数据库,执行初始化脚本,根据配置的安装路径在服务器创建java程序文件夹推送程序包包括前端文件至文件夹下,减压前端文件,修改前端文件的权限.修改启动脚本中的环境变量,配置nginx代理添加配置修改ip地址改为程序所在的服务器地址,通过SSH对服务器执行启动脚本命令,当子程序启动成功,则开始执行主程序,步骤相同,运维工具通过发送http请求访问主程序判断是否启动成功
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
Claims (10)
1.基于两库模式的轻型跨平台分布式的系统自动化部署工具,其特征在于:包括运维助手和运维系统两部分组成,
包括以下步骤,
P1,运维助手通过安装程序部署在客户端,运维系统通过运维助手部署在远程服务器;
P2,运维助手从远程中央仓库拉取授权的程序包至客户端本地仓库,运维助手上传程序包至远程服务器;
P3,在运维助手访问运维系统服务端,通过运维系统服务端部署打包程序并进行实时监控;
P4,通过运维系统对服务器中程序包进行持久化操作。
2.根据权利要求1所述的基于两库模式的轻型跨平台分布式的系统自动化部署工具,其特征在于:所述运维助手,包括远程仓库、本地仓库、服务器信息管理、数据库信息管理和两部署。
3.根据权利要求1所述的基于两库模式的轻型跨平台分布式的系统自动化部署工具,其特征在于:所述运维系统结构如下,包括部署中心、配置中心、本地备份、远程备份、监控。
4.根据权利要求2所述的基于两库模式的轻型跨平台分布式的系统自动化部署工具,其特征在于:所述远程仓库:第三方高性能分布式对象存储服务器,在项目中主要作用是集中存储软件安装包,运维助手从中拉取应用程序包,再推送到远程服务器;
其中的程序包所在的目录结构是按项目按版本简单清晰明了,同步远程目录层级结构到本地。
5.根据权利要求2所述的基于两库模式的轻型跨平台分布式的系统自动化部署工具,其特征在于:所述本地仓库:运维助手程序部署的服务器磁盘,在项目中用于存放远程仓库下载的程序,实现可跨网络进行上传部署应用程序。
6.根据权利要求2所述的基于两库模式的轻型跨平台分布式的系统自动化部署工具,其特征在于:所述服务器信息管理:在项目中用于对项目环境的服务器进行管理控制,通过SSH网络安全协议,通过加密和认证机制实现安全的访问和文件传输上传部署程序至此服务器;
所述数据库信息管理:在项目中用于对项目环境的数据库进行管理控制;
所述两部署:通过Java代码配合网络安全协议建立服务器与服务器之间的连接,传送程序包至远程服务器,对服务器上的程序包进行部署、安装、启动、停止、卸载、升级、回滚操作。
7.根据权利要求3所述的基于两库模式的轻型跨平台分布式的系统自动化部署工具,其特征在于:所述部署中心:添加需要部署产品的服务器信息,配置中间件参数,自动化部署中间件,在程序管理可获取程序对应版本进行安装升级回滚,在产品管理里生成配置自动化部署产品。
8.根据权利要求3所述的基于两库模式的轻型跨平台分布式的系统自动化部署工具,其特征在于:所述配置中心:添加应用程序运行所需要的属性值和数据源以及事件管理,数据源是程序环境运行节点,事件管理是应用程序对数据的生产与消费。
9.根据权利要求3所述的基于两库模式的轻型跨平台分布式的系统自动化部署工具,其特征在于:所述本地备份:可对数据库数据进行自动导出成sql文件进行备份,对程序java包进行定时任务copy备份至本地。
所述远程备份:通过Java技术集成ssh协议执行数据备份命令进行自动化备份。
10.根据权利要求3所述的基于两库模式的轻型跨平台分布式的系统自动化部署工具,其特征在于:所述监控包括服务器性能状态监控、应用程序运行状态监控、中间件稳定状态监控:
所述服务器性能状态监控:内存、cpu、磁盘、线程数、网络io;
所述应用程序运行状态监控:pid进程、使用内存情况、接口探测存活;
所述中间件稳定状态监控:数据接发信息、磁盘io。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211470635.9A CN115826996A (zh) | 2022-11-23 | 2022-11-23 | 基于两库模式的轻型跨平台分布式的系统自动化部署工具 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211470635.9A CN115826996A (zh) | 2022-11-23 | 2022-11-23 | 基于两库模式的轻型跨平台分布式的系统自动化部署工具 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115826996A true CN115826996A (zh) | 2023-03-21 |
Family
ID=85530472
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211470635.9A Pending CN115826996A (zh) | 2022-11-23 | 2022-11-23 | 基于两库模式的轻型跨平台分布式的系统自动化部署工具 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115826996A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116647434A (zh) * | 2023-07-24 | 2023-08-25 | 国网瑞嘉(天津)智能机器人有限公司 | 运维服务部署方法、装置及运维系统 |
-
2022
- 2022-11-23 CN CN202211470635.9A patent/CN115826996A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116647434A (zh) * | 2023-07-24 | 2023-08-25 | 国网瑞嘉(天津)智能机器人有限公司 | 运维服务部署方法、装置及运维系统 |
CN116647434B (zh) * | 2023-07-24 | 2023-10-20 | 国网瑞嘉(天津)智能机器人有限公司 | 运维服务部署方法、装置及运维系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11914486B2 (en) | Cloning and recovery of data volumes | |
KR101891506B1 (ko) | 하나 이상의 클라우드 시스템 상에 애플리케이션들을 이식 가능하게 배치하기 위한 방법들 및 시스템들 | |
US7904900B2 (en) | Method in a network of the delivery of files | |
JP5535484B2 (ja) | 自動ソフトウェアテストフレームワーク | |
US8321549B2 (en) | Action execution management for service configuration items | |
US9118538B1 (en) | Method and system for configuring resources to enable resource monitoring | |
CN112328456B (zh) | 一种基于服务发现的集群资源监控系统 | |
US9900212B2 (en) | Installation of an arbitrary server as an extension of a computing platform | |
CN105653329A (zh) | 一种应用管理的方法、装置及系统 | |
EP1611509A2 (en) | Non-invasive automatic offsite patch fingerprinting and updating system and method | |
CN111324599B (zh) | 一种区块链实验系统及管理方法 | |
CN115826996A (zh) | 基于两库模式的轻型跨平台分布式的系统自动化部署工具 | |
CN110063042A (zh) | 一种数据库故障的响应方法及其终端 | |
EP1275222A2 (en) | A method for controlling data collection, manipulation and storage on a network with service assurance capabilities | |
US20240118884A1 (en) | Automated deployment method for upgrading client's internal business software systems | |
CN110162312B (zh) | 一种基于IML的BeeGFS配置方法与装置 | |
WO2023185136A1 (zh) | 一种边缘节点的处理方法、装置及介质 | |
US20230066698A1 (en) | Compute instance warmup operations | |
US20240061725A1 (en) | Regeneration audit log | |
US20230409454A1 (en) | System and method for updating a non-persistent collector deployed in a compute environment | |
CN113448819A (zh) | 一种自适应的数据采集方法、装置及系统 | |
CN115065583A (zh) | 一种基于kubernetes的监控告警方法 | |
Data | User's Guide | |
CN117707893A (zh) | 一种部署跨架构的大数据集群监控系统的方法及系统 | |
WO2010039993A2 (en) | Automation for virtualized it environments |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230904 Address after: Floor 13, No. 9 Shangqingsi Road, Yuzhong District, Chongqing, 400000 Applicant after: Chongqing Senxinju Intelligent Technology Co.,Ltd. Address before: 401147 Building 1, Hualian International Building, 88 Hongshi Road, Yubei District, Chongqing Applicant before: CHONGQING SNT TECHNOLOGY Co.,Ltd. |