nginx热部署升级

栏目: 服务器 · Nginx · 发布时间: 6年前

内容简介:1、将旧nginx文件换成新的nginx二进制文件(注意备份);2、想master进程发送USR2信号;3、master进程修改pid文件名,加后缀.oldbin;

一、热升级流程

1、将旧nginx文件换成新的nginx二进制文件(注意备份);

2、想master进程发送USR2信号;

3、master进程修改pid文件名,加后缀.oldbin;

4、master进程用新nginx文件后启动新master进程

5、向老master进程发送WINCH信号,关闭老worker进程;

6、回滚:向老master发送HUP信号,向新master发送QUIT;

二、升级过程

#版本

nginx version: nginx/1.12.2

1、查看nginx状态

nginx热部署升级

2、升级nginx版本即升级二进制文件

路径:/nginx/sbin/ nginx

1)备份原来的文件,更换上新的nginx二进制文件

# cp sbin/nginx sbin/nginx.old

2)编译新版本到make后,复制二进制nginx文件( 切记需要编译到同一个目录

# cd nginx-1.14.2/

# ./configure --prefix=/usr/local/nginx12

3make

# cp -r objs/nginx /usr/local/nginx12/sbin/ -f

3)查看二进制文件

cd /usr/local/nginx/sbin/

nginx热部署升级

4)发送升级信号给进程号

# kill -USR2 1501     #master线程

nginx热部署升级

5)优雅关闭老线程

# kill -WINCH 1501

nginx热部署升级

备注:保留旧master线程,可以用作回滚使用,如果确认不需要,可以kill掉

4)查看版本

nginx热部署升级

备注:如果我们升级完后检查有问题,可采取进行下一步操作进行滚回。

3、回滚操作

1)重会备份文件

# cp -f  /usr/local/nginx12/sbin/nginx.old /usr/local/nginx12/sbin/nginx

2)执行平滑造成,生成新的进程

# kill -HUP 4197

# kill -QUIT 4197

nginx热部署升级

master进程回滚到1501,worker进程也重新生成了,检查网站没问题到此完成回滚操作。

3)查看版本

nginx热部署升级


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Head First Design Patterns

Head First Design Patterns

Elisabeth Freeman、Eric Freeman、Bert Bates、Kathy Sierra、Elisabeth Robson / O'Reilly Media / 2004-11-1 / USD 49.99

You're not alone. At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire),......一起来看看 《Head First Design Patterns》 这本书的介绍吧!

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具