大型项目linux自动化版本发布脚本(shell)之tomcat、nginx服务脚本
最近,又临近博主所负责的一个大型项目的发版了。之前有提到过,该项目涉及到50-60台服务器的发版。且项目客户规定发版需在晚上10-11点左右开始进行,这里博主不得不说每次发布最后都是眼花缭乱。 博主最近想了下,还是决定做些自动化发版的脚本;首先,在批量关闭服务器、批量重启服务器、批量延迟重启服务器、以及批量nginx重启、kill、reload方面都可以做成自动化脚本。当然,还有资源备份、代码备份等等。 自动化脚本来发版后,将一键关闭、重启所有tomcat,一键实现所有Nginx的downline、online、kill,一键备份代码(包括定时任务代码、普通服务器代码、接口服务器代码、消息服务器代码等),一键资源备份,一键数据库备份。当然,在执行自动化脚本之前,服务器必须先配置ssh免密登录。 通过上面的自动化脚本后,我们的整个发版过程就非常简单了: (1)通过增量打包工具patch-generator-desk实现本次版本增量代码打包,具体参照 patch-generator-desk打包软件 (2)使用xftp上传覆盖代码,由于打包出来是可以直接上传实现替换,故此步骤非常简单( 此步骤已经编写自动化脚本实现代码发布,执行上传到脚本所在服务器的专用代码发布目录,执行脚本发布即可 ) (3)一键执行代码备份脚本 (4)执行n_downline_ssh