nginx-平滑升级

背景

一般项目中nginx有很多台,且nginx很容易出漏洞。如果按常规方法升级,不仅操作繁琐,而且需要暂停服务。nginx提供了平滑升级的方式,不关停,不需要倒腾配置文件。

步骤

1 明确nginx的路径

ps -ef | grep nginx (cwd->后面为路径)
ll /proc/进程号

2 备份完整的旧版本

正常只需要备份sbin/nginx 二进制文件,但以防万一,可以把nginx完整文件备份

3 查看现有nginx版本和配置参数

sbin/nginx -V
注意:
V是大写;
配置参数后面要用

4 将新版本升级包放到适当位置(安装目录父目录),配置、编译但不安装

cd 到刚解压的目录
./configure 原来参数
make 不要install
此时目录下会出现objs目录,里面是编译好的内容

5 将旧版本中的sbin/nginx文件备份,然后将新的挪过去

mv 旧版本nginx/sbin/nginx nginx.old.yyyyMMdd
cp 新版本nginx/objs/nginx 旧版本nginx/sbin/nginx

6 执行nginx提供的平滑升级命令

cd 到刚解压的目录
make upgrade
注意:下面代码中只需要执行make upgrade,后面的自动执行

[root@localhost nginx-1.20.1]# make upgrade
/nginx/sbin/nginx -t
nginx: the configuration file /nginx/conf/nginx.conf syntax is ok
nginx: configuration file /nginx/conf/nginx.conf test is successful
kill -USR2 `cat /nginx/logs/nginx.pid`
sleep 1
test -f /nginx/logs/nginx.pid.oldbin
kill -QUIT `cat /nginx/logs/nginx.pid.oldbin`

7 至此,完成平滑升级,不用关停,不用倒腾配文,也就不用重新安装https等功能

验证 sbin/nginx -V

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值