zoukankan      html  css  js  c++  java
  • 架构师的成长之路初片~Nginx篇~平滑升级

    进行平滑升级

    1.当前环境

    CentOS-7.x   Nginx:1.12.2

    2.查看当前版本并下载新版本Nginx

    /usr/local/nginx/sbin/nginx -v# nginx version: nginx/1.12.2wget -c http://nginx.org/download/nginx-1.17.6.tar.gz# 下载的版本为nginx-1.17.6

    3.开始平滑升级

    tar -xzf nginx-1.17.6.tar.gz# 解压源码包cd nginx-1.17.6

    ./configure --with-stream --with-http_stub_status_module --with-http_ssl_module

    make# 执行编译,切记不要安装也就是不要去执行 make install

    对Nginx执行文件进行更新

    cd /usr/local/nginx/sbin

    # 进入nginx的执行文件目录内

    mv nginx nginx.old

    # 将旧版本Nignx执行文件备份为nginx.oldcp /root/nginx-1.17.6/objs/nginx .

    # 将新版本Nginx执行文件移动到当前目录内

    进行平滑重启

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

    # 检测新版本Nginx是否正常 正常为 successful

    ps   -ef   |  grep nginx

    # 查看旧版本nginx进程

     kill -USR2 4846# 向主进程发送USR2信号,Nginx会启动一个新版本的master进程和工作进程,和旧版一起处理请求

     此时再次查看Nginx进程就发现有俩Nginx在工作  ^^

     kill -WITCH 4846# 向原Nginx主进程发送WINCH信号,它会逐步关闭旗下的工作进程(主进程不退出),

      这时所有请求都会由新版Nginx处理kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin

    `# 杀死旧版本Nginx主进程或者 kill -9 4846 也可以/usr/local/nginx/sbin/nginx -v

    # ouput:nginx version: nginx/1.17.6

    kill -WITCH 4846

    # 向原Nginx主进程发送WINCH信号,它会逐步关闭旗下的工作进程(主进程不退出),这时所有请求都会由新版Nginx处理

    kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`

    # 杀死旧版本Nginx主进程或者 kill -9 4846 也可以/usr/local/nginx/sbin/nginx -v

    # ouput:nginx version: nginx/1.17.6

    完成以上操作代表升级完成

    总结:在平滑升级的过程中,切记编译完后不要   make install   (安装)

    在升级的过程中,切记尽量不使用 kill  -9  这个命令。

  • 相关阅读:
    005. gitlab安装
    004. github使用
    003. git标签
    TS标红和报错解决(优化项)
    catalog连接数据库与sde权限问题
    博客新生企划
    HDU 7105 Power Sum
    HDU 7131 Nun Heh Heh Aaaaaaaaaaa
    BZOJ 1691 挑剔的美食家
    洛谷 4254 Blue Mary 开公司
  • 原文地址:https://www.cnblogs.com/ahaocloud/p/14645844.html
Copyright © 2011-2022 走看看