在大规模互联网网站中,可能存在成千上万台服务器,这些服务器分为不同的应用和模块。每个应用或模块,多则上千台服务器,少则数十台服务器,如何快速并安全的在这些服务器上部署应用和模块,成为一个必须解决的问题。本文简要的介绍一种简单的Linux服务器部署方法。
部署的过程,本文只说明从一个打好包的二进制文件或jar包(这里简称服务器程序压缩文件)到这个服务器程序在所有服务器上运行的过程。
这个过程,可分为如下几个阶段: 1.将服务器程序压缩文件传输到所有的服务器上; 2.在所有的服务器上将服务器程序压缩文件解压到特定的路径; 3.在所有的服务器上执行服务器程序; 4.如果发布的服务器程序出现问题,回滚.
====================================================
这其中,涉及到如下几种需求: 1.免登陆 2.将文件从一台服务器传输到所有的服务器上,实现了这种需求,就可以将服务器程序压缩文件传输到所有的服务器上 3.在一台服务器远程执行命令,使所有的服务器都能够执行该命令,实现了这种需求,就可以在所有的服务器上将服务器程序压缩文件解压到特定的路径,并所有的服务器上执行服务器程序。
1.免登陆由于各种文章和Blog介绍较多,这里就不再涉及。
2.如何将文件从一台服务器传输到所有的服务器上 #! /bin/sh #tf.sh
IPS=(ip地址1 ip地址2 ip地址3 ...)
3.如何在一台服务器其上远程远程执行命令,是的所有的服务器都能够执行该命令 #! /bin/sh #ec.sh
IPS=(ip地址1 ip地址2 ip地址3 ...)
=======================================================
1.将服务器程序压缩文件传输到所有的服务器上; tf.sh /home/admin/server2.0.tar.gz /home/admin/
2.在所有的服务器上将服务器程序压缩文件解压到特定的路径; ec.sh "tar -zxvf /home/admin/server2.0.tar.gz"
3.在所有的服务器上执行服务器程序; ec.sh "sh /home/admin/server2.0/run.sh"
4. 回滚 ec.sh "sh /home/admin/server1.0/rollback.sh"
版权声明:本文为博主原创文章,未经博主允许不得转载。 (此文不代表本网站观点,仅代表作者言论,由此文引发的各种争议,本网站声明免责,也不承担连带责任。) |