nginx 平滑升级

nginx平滑升级

目标: 旧版本 升级 新版本nginx


# wget nginx.tgz && tar zxvf nginx.tgz

# cd nginx

# ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-http_mp4_module --with-openssl=/opt/tools/openssl-1.0.2l/ --with-pcre-jit --with-ld-opt=-ljemalloc --with-debug --add-module=/opt/tools/nginx-module-vts-master/ --add-module=/opt/tools/nginx_upstream_check_module-master/ --add-module=/opt/tools/ngx_cache_purge-2.3/

# make

#mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.backup

# mv objs/nginx  /usr/local/nginx/sbin/nginx

# kill -USR2 `cat /var/run/nginx.pid`              将旧版本Nginx的主进程将重命名为nginx.pid.oldbin,并执行新版本的Nginx可执行程序,启动新的主进程和新的工作进程,再次生成新的nginx.pid文件

# kill -WINCH `cat /var/run/nginx.pid.oldbin`      平缓停止worker process(此步骤可省略)

# kill -QUIT `cat /var/run/nginx.pid.oldbin`       平缓停止旧的Nginx服务进程

补充

Nginx支持的信号


TERM,INT——快速关闭

QUIT          平滑关闭

HUP           平滑重启,重新加载配置文件

USR1          重新打开日志文件

USR2          平滑升级可执行程序

WINCH         平滑关闭工作进程

原文地址:https://www.cnblogs.com/Qing-840/p/11502520.html