linux多台服务器部署脚本,多服务器自动化部署脚本

自动化部署脚本使用说明:

前置要求:使用expect实现自动交互,所以要求每台服务器都需要安装expect软件,通过命令which expect查看是否安装。如果发现没有安装,使用yum install expect安装。

关于登陆:1. 直接使用root账号  2. 无法获取root密码,可以使用自己的账号(有sudo权限)。 3. 配置ssh互信,无密码登陆。

这里采用第2种方式,首先会将需要拷贝的文件[中转]复制到目的服务器/home/liudewei/目录下,然后登陆到目的服务器通过shell命令sudo拷贝到指定目录下。

详细步骤:

1. 修改servers.conf 服务器IP及账号配置

10.126.32.89 liudewei xxx

...

2. 修改transfer_file.conf 需要拷贝到多台服务器上的文件配置

#需要拷贝的脚本,目标服务器中转目录,目标服务器实际目录

/data/bin/performance.py /home/liudewei/performance.py /data/bin

3. batch_exec.sh和deploy.sh 批量执行脚本, deploy.sh基本不用改动。

文件拷贝到目标服务器后,我们需要做个校验是否拷贝成功,或者执行一些其他命令,比如验证并重启nginx等。

可以修改batch_exec.sh脚本:

# custom execute command

exec_command="sudo cp -r $dest_file $real_dest_file; /data/bin/./show.sh"

注意:假设在A主机上执行脚本,需要在目标服务器上开通A主机白名单访问,否则会提示:ssh_exchange_identification: Connection closed by remote host。

以上都搞定后直接执行./batch_exec.sh,执行日志记录到nowdate-deploy.log。

日志2015-07-27-deploy.log:

########################开始部署时间: 2015-07-27 11:38:44##########################

--------->No:1 deploy host IP:10.126.32.89

scp file is ok

deploy 10.126.32.89 is ok

########################结束部署时间: 2015-07-27 11:38:49##########################

点击这里下载脚本

posted on 2015-07-29 13:48 David1228 阅读(5438) 评论(0)  编辑  收藏 所属分类: Linux 、云计算、虚拟化

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值