CentOS7.6下Nginx热部署步骤

Nginx热部署步骤
1. 备份旧的nginx二进制可执行文件
    

cp nginx nginx.bak


2. 向Nginx的Master主进程发送SIGUSR2命令,在原来的master和worker子进程上创建新的master和worker进程
    此时,新旧master和worker并行存在
    

kill -s SIGUSR2 $Master_PID


3. 查看进程pid所在目录,此时多了个文件: nginx.pid.oldbin
    查看进程pid目录: 
    

ll /var/run/nginx


    说明: 
    文件nginx.pid.oldbin中存储的就是旧的master进程的pid
    而新产生的文件nginx.pid中存储的是新产生的master进程的pid
4. 向旧的master进程发送命令,退出旧的master进程下的子进程
    

kill -s SIGWINCH $OLD_Master_PID


    执行完成后,此时只会存在旧的master进程,和新的master进程以及新的master进程下的子进程
5. 确认新的进程是否运行正常,同时要确认旧的master进程的任务均已完成,此时,退出旧的master进程
    

kill -s SIGQUIT $OLD_Master_PID


    此时,查看/var/run/nginx下的nginx.pid.oldbin,也已经被删除
6. 回滚方案
    当执行到上面第4步,即当前nginx只剩下旧的master进程和新的master及其子进程时,发现新的待发布的nginx程序有问题,达不到我们的预期,则进行回滚
    在上面第4步执行完成后,执行下面命令,进行旧的子进程回滚:
    

kill -s SIGHUP $OLD_Master_PID


    然后执行下面命令,退出新的master进程及其子进程
    

kill -s SIGQUIT $NEW_Master_PID


    上述两步,即可完成从新的进程回滚到旧的进程
7. 注意:
    热部署过程中,原有的目录结构不能变化,新旧就成切换一定不能更改目录

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值