• Nginx在线服务状态下平滑升级或新增模块的详细操作


    今天应开发的需求,需要在Nginx增加一个模块,并不能影响现有的业务,所以就必须要平滑升级Nginx,好了,不多说了

    1:查看现有的nginx编译参数

      /usr/local/nginx/sbin/nginx -V

    2:按照安装nginx的方法进行安装,只需要到make,千万不要make install

    3: 备份旧版本的nginx可执行文件(期间nginx不会停止服务)

      mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old

    4:复制新的nginx二进制文件,进入新的nginx源码包

        cp objs/nginx /usr/local/nginx/sbin/

    5: 测试新版本的nginx是否正常

        /usr/local/nginx/sbin/nginx -t

    6: 给nginx发送平滑迁移信号(若不清楚pid路径,请查看nginx配置文件)

       kill -USR2 `cat /var/run/nginx.pid`

    7:查看nginx pid,会出现一个nginx.pid.oldbin

    8:从容关闭旧的Nginx进程

     kill -WINCH `cat /var/run/nginx.pid.oldbin`

    9:此时不重载配置启动旧的工作进程

      kill -HUP `cat /var/run/nginx.pid.oldbin`

    10:结束工作进程,完成此次升级

       kill -QUIT `cat /var/run/nginx.pid.oldbin`

    11:验证Nginx是否升级成功

       /usr/local/nginx/sbin/nginx -V

      

     

     

  • 相关阅读:
    OO第一单元总结
    [软件工程]提问回顾与个人总结
    结对项目-最长单词链总结
    [软件工程]第一次阅读作业
    [软件工程] 第0次作业
    提问回顾与个人总结
    结对作业博客
    软工第1次个人作业
    软工第0次个人作业
    OO第四次总结
  • 原文地址:https://www.cnblogs.com/happlyp/p/6090409.html
Copyright © 2020-2023  润新知