手动代码上线 及个人优化调整

第一步:上传变更代码包

登录分发服务器 (此处看具体是哪个服务器,按实际出发)

创建上传文件夹
mkdir -p /app/upload/“服务分支”/“日期” (这里的服务分支具体看公司分得模块,日期是当前的日期具体到年月日)

上传需要上线的代码包文件到 刚刚创建好的文件夹
/app/upload/“服务分支”/“日期”

注意:此处传完用md5sum检测与开发给的值对比防止上传丢包

第二步:代码备份(旧包备份,方便回滚)

登录服务器 ssh

创建备份文件夹以日期命名
mkdir /app/“服务分支”/backup/“日期”

备份线上的代码包
cp 路径是线上的路径 上面创建的备份路径

创建变更代码包文件夹
mkdir /app/“服务分支”/upload/“日期”/

第三步:上传代码包到应用服务器

这里通过分发服务器分发,登录分发服务器

scp /app/upload/“服务分支”/“日期”/新包 用户@应用服务器IP:/app/“服务分支”/upload/“日期”/

优化调用脚本

iplist.txt 所要分发服务器的IP地址
user.txt 存放对应IP的密码

#!/bin/bash
echo "拷贝情况如下:" > /root/test.log
n=`cat /root/iplist.txt | wc -l` #分发的ip数量
for (( i=1; i<=$n; i++ ))
do
	passwd=`cat /root/user.txt|head -$i|tail -1`#第i个IP地址的密码

    ip=`cat /root/iplist.txt|head -$i|tail -1`#第i个IP地址
    echo $ip
##自动交互
/usr/bin/expect <<EOF
spawn scp /app/upload/“服务分支”/"日期"/新包 $ip:/app/“服务分支”/upload/"日期"/
expect "yes/no" {send "yes\n;exp_untinue"}
expect "password" {send "$passwd\n"}
expect eof
EOF
if [ $? -eq 0 ];then
   echo "$ip:成功" >>/root/test.log
else
   echo "$ip:失败" >>/root/test.log

fi        
done

第四步:执行变更,重启服务

登录应用服务器

变更代码包就位
cp /app/“服务分支”/upload/“日期”/新包 线上路径
注意:此处复制之前 进行md5sum检测 对比值

停止服务
sh 脚本路径 stop

确认服务已停止
ps aux | grep 服务名

启动服务
sh 脚本路径 start

查看进程状态,确认服务启动
ps aux | grep 服务名

查看日志,确认服务启动
tail -f 日志路径

注:检查重要操作记录

1,记录下backup里的文件
2,upload里的文件
3,是否用其他用户登陆和启动服务的用户
4,日志和进程的记录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

时倾 | 职业人生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值