自动化远程部署shell脚本

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

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

1. 定义常变量

2. 远程登录方法

3. 备份上个服务包方法

4. 上传方法

5. 部署方法

6. 服务包判断

7. 发包流程控制

 

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

转载于:https://www.cnblogs.com/zjfjava/p/11286256.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值