自动化远程部署shell脚本


历史原因,有一段时间,项目开发采用一种模式:项目开发及代码版本管理在外网,而主要测试在内网。所以为了同步开发进度,每天会将所有服务在外网jenkins上打包好,然后将服务jar包拷进内网,由于内网服务使用分布式部署,不同服务分布在不同服务器上,因此需要手动将各个服务包放到各个服务器上,并执行启动脚本启动,供内网测试。这种工作每天都要重复进行,而且整个服务发布耗时较长,jenkins自动化部署在内网又不可行,因此选择通过执行脚本来自动化发布服务。

下面演示通过脚本演示通过远程登录服务器 —> 备份要替换的服务包 —> 拷贝服务包到相应服务器的对应目录 —> 发布服务的整个流程。

1. 定义常变量

2. 远程登录方法

3. 备份上个服务包方法

4. 上传方法

5. 部署方法

6. 服务包判断

7. 发包流程控制

 

上面脚本是实现两个服务器上的不同服务包的自动化部署,更多服务包在list中累加,并增加判断逻辑即可,读者也可以根据此脚本拓展编写批量停服脚本,批量起服脚本,自动回滚某个版本脚本等。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM