本发明涉及虚拟化平台,特别涉及一种基于shell脚本的前后端工程的部署方式。
背景技术:
1、系统涉及多节点、多进程部署时,如手动备份节点信息,并将系统版本包更新到各节点服务器进行重启,流程冗长,出错风险较高且发版效率较低。
2、因此有必要提供一种基于shell脚本的前后端工程的部署方式,使用shell脚本进行配置化统一管理,分节点部署,有效降低部署流程,提升部署效率。
技术实现思路
1、本发明的目的在于提供一种基于shell脚本的前后端工程的部署方式,使用shell脚本进行配置化统一管理,分节点部署,有效降低部署流程,提升部署效率。
2、为了解决现有技术中存在的问题,本发明提供了一种基于shell脚本的前后端工程的部署方式,包括以下步骤:
3、选定任一节点服务器为主换版节点服务器;
4、所述主换版节点服务器到剩余节点服务器做免密处理,换版脚本仅在所述主换版节点服务器执行;
5、将版本包和待换版的节点信息存入所述主换版节点服务器内;
6、依据待换版的节点信息执行所述版本包,完成部署。
7、可选的,在所述基于shell脚本的前后端工程的部署方式中,对版本包的目录结构进行规范处理。
8、可选的,在所述基于shell脚本的前后端工程的部署方式中,规范处理的方式如下:
9、html为静态页面资源路径;
10、sbin为脚本及配置文件路径;
11、lib为后端版本jar包路径;
12、shell为数据库脚本变更路径;
13、shellprod.lst为脚本路径及顺序配置文件;
14、versionpord.lst为需进行换版的进程配置文件;
15、格式为:模块名|旧版本号|新版本号|模块类型,若为新增模块,只配置新版本号,旧版本号不进行配置;若不涉及版本变更,只进行重启,旧版本号和新版本号配置一致;静态页面类新旧版本号无需配置。
16、可选的,在所述基于shell脚本的前后端工程的部署方式中,执行所述版本包时,依次执行shellprod.lst中配置的所有脚本,进行数据库变更。
17、可选的,在所述基于shell脚本的前后端工程的部署方式中,进行数据库变更后,还包括以下步骤:
18、将变更信息输出到控制台。
19、可选的,在所述基于shell脚本的前后端工程的部署方式中,执行所述版本包时,还包括以下步骤:更换版本并启停进程。
20、可选的,在所述基于shell脚本的前后端工程的部署方式中,更换版本并启停进程的步骤如下:
21、根据进程类型对进程进行划分;
22、对不同节点进行换版任务的拆分,并分节点进行重启;
23、读取versionpord.lst中配置的变更进程列表,并根据进程名称在所述主换版节点服务器中获取待换版的节点信息,通过远程连接命令跳转到对应节点,根据versionpord.lst中配置的版本号信息依次执行备份、换版及进程重启命令,执行完成后,退出远程连接命令。
24、可选的,在所述基于shell脚本的前后端工程的部署方式中,在执行备份、换版及进程重启命令之前,还包括以下步骤:
25、判断是否需要执行备份命令,若不需要,则不执行备份命令;
26、判断是否需要执行换版命令,若不需要,则不执行换版命令;
27、判断是否需要执行进程重启命令,若不需要,则不执行进程重启命令。
28、可选的,在所述基于shell脚本的前后端工程的部署方式中,远程连接命令为ssh命令。
29、可选的,在所述基于shell脚本的前后端工程的部署方式中,执行所述版本包之前,还包括以下步骤:对版本包的规范性、后台任务执行情况进行检查;
30、若所述版本包规范,且后台没有任务正在执行,则执行所述版本包。
31、在本发明所提供的基于shell脚本的前后端工程的部署方式中,通过使用shell脚本进行配置化统一管理,分节点部署,有效降低部署流程,提升部署效率。
1.一种基于shell脚本的前后端工程的部署方式,其特征在于,包括以下步骤:
2.如权利要求1所述的基于shell脚本的前后端工程的部署方式,其特征在于,对版本包的目录结构进行规范处理。
3.如权利要求2所述的基于shell脚本的前后端工程的部署方式,其特征在于,规范处理的方式如下:
4.如权利要求3所述的基于shell脚本的前后端工程的部署方式,其特征在于,执行所述版本包时,依次执行shellprod.lst中配置的所有脚本,进行数据库变更。
5.如权利要求4所述的基于shell脚本的前后端工程的部署方式,其特征在于,进行数据库变更后,还包括以下步骤:
6.如权利要求3所述的基于shell脚本的前后端工程的部署方式,其特征在于,执行所述版本包时,还包括以下步骤:更换版本并启停进程。
7.如权利要求6所述的基于shell脚本的前后端工程的部署方式,其特征在于,更换版本并启停进程的步骤如下:
8.如权利要求7所述的基于shell脚本的前后端工程的部署方式,其特征在于,在执行备份、换版及进程重启命令之前,还包括以下步骤:
9.如权利要求7所述的基于shell脚本的前后端工程的部署方式,其特征在于,远程连接命令为ssh命令。
10.如权利要求1所述的基于shell脚本的前后端工程的部署方式,其特征在于,执行所述版本包之前,还包括以下步骤:对版本包的规范性、后台任务执行情况进行检查;