• 欢迎访问圣洁的白莲!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧
  • 厚德载物,自强不息!

nginx的管理和升级

Linux 菜根譚 4个月前 (03-10) 78次浏览 已收录 0个评论 扫描二维码
文章目录[隐藏]

1.平滑启动nginx

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

或者

nginx -s reload

平滑启动的意思是在不停止nginx的情况下,重启nginx,重新加载配置文件,启动新的工作线程,完美停止旧的工作线程。

2.平滑停止nginx

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

3.快速停止nginx

kil -TERM `cat /var/run/nginx.pid`

或者

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

4.完美停止工作进程(主要用于平滑升级)

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

5.强制停止nginx

pkill -9 nginx

检查nginx.conf文件的配置是否正确

nginx -t

6.停止nginx

nginx -s stop

或者

pkill nginx

7.查看nginx版本

nginx -v 
nginx -V    # 查看编译参数

8.升级nginx

make过后不需要执行make install

1).备份nginx

注意:先备份旧版本的nginx可执行文件,再复制新版本的nginx可执行文件。

旧版nginx

nginx -v
nginx version: nginx/1.14.2

新版nginx

nginx -v
nginx version: nginx/1.16.1
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old
cp objs/nginx /usr/local/nginx/sbin/

2).测试新版本nginx是否正常

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

3).平滑重启升级nginx

kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`

旧版本nginx的pid变为oldbin,这时旧版本和新版本的nginx同时运行,过一段时间等旧nginx处理完用户请求后,执行下面操作从容关闭旧版本的nginx进程。

可以看到有两个nginx master 进程

ps -ef | grep nginx
root      32586      1  0 21:09 ?        00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx     32587  32586  0 21:09 ?        00:00:00 nginx: worker process
root      32600  32586  0 21:11 ?        00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx     32601  32600  0 21:11 ?        00:00:00 nginx: worker process
kill -WINCH `cat /usr/local/nginx/logs/nginx.pid.oldbin`

决定是否升级到新版的nginx

kill -HUP `cat /usr/local/nginx/logs/nginx.pid.oldbin`
# nginx在不重载配置文件启动工作进程
kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`
# 关闭旧版nginx

可以看到旧版的nginx管理进程已经关闭

ps -ef | grep nginx
root      32600      1  0 21:11 ?        00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx     32601  32600  0 21:11 ?        00:00:00 nginx: worker process
nginx     32609      1  0 21:16 ?        00:00:00 nginx: worker process

只有旧版nginx worker进程暂时还在处理任务。


圣洁的白莲 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:nginx的管理和升级
喜欢 (0)
[]
分享 (0)
菜根譚
关于作者:
浩瀚学海,虔诚分享!

您必须 登录 才能发表评论!