业务场景
由于之前发布web应用更新都是一些解压、替换文件等的一些重复操作,用脚本进行替代手动操作会减少出错也没那么繁琐。
系统架构
是基于weblogic分布式部署的web应用,总共8台服务器(linux虚拟机)。
脚本实现功能
- 选择其中一台服务器上传,本次发布的更新文件,可在启动脚本后,自动上传至其他服务器
-
发布方式为“逐一重启”,既一台一台的发布,保证其它服务器正常运行,发布期间不会对用户使用有太多影响
实现一:
run_.sh:
#!bin/bash
# 服务器ip
server1_ip='10.1.121.141'
server2_ip='10.1.121.142'
server3_ip='10.1.121.143'
server4_ip='10.1.121.144'
server5_ip='10.1.121.145'
server6_ip='10.1.121.146'
server7_ip='10.1.121.147'
server8_ip='10.1.121.148'
# 服务器端口
server_port='xx'
# 更新包上传路径
updatefile_upload_path='/applications/pjname/update'
# ssh命令,autodeploy.sh 后面会提到
command='sh /applications/pjname/scripts/autodeploy.sh'
#假设第一台服务器即