栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

nginx不中断升级

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

nginx不中断升级

定位旧版本nginx的二进制执行文件和PID文件位置,例如 /usr/local/nginx/sbin/nginx和/usr/local/nginx/logs/nginx.pid

查询旧版本nginx的master进程的PID,记录为 OldMasterPID

我们采用官方命令

ps axw -o pid,ppid,user,%cpu,vsz,wchan,command | egrep '(nginx|PID)

(截图待补充)

将新版本的nginx覆盖掉旧版本,对旧版本的二进制文件进行备份的操作是可选的,后边将会说到为什么可以不用备份

执行命令 kill -s USR2 OldMasterPID

执行成功后,可以发现nginx已经自动备份了旧版本的pid文件和二进制文件,二进制文件会备份为 /usr/local/nginx/sbin/nginx.old (这就是为什么前面提到可以不用备份),PID文件会备份为 /usr/local/nginx/logs/nginx.pid.oldbin,而且此时新旧两个版本的nginx共同运行

(截图待补充)

执行命令 kill -s WINCH OldMasterPID,将会优雅关闭旧版本的worker进程,此时所有的请求将全部转到新版本的worker进程进行处理

如果测试有问题需要回滚

查询新版本nginx的master进程的PID,记录为NewMasterPID

ps axw -o pid,ppid,user,%cpu,vsz,wchan,command | egrep '(nginx|PID)

执行命令 kill -s HUP OldMasterPID

执行命令 kill -s TERM NewMasterPID

如果测试没有问题,则执行命令 kill -s QUIT OldMasterPID

参考文档

http://nginx.org/en/docs/control.html

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/311182.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号