这里测试一下nginx的平滑升级,以备不时之需

查看nginx版本号:

[root@zklf-server01 ~]# /application/nginx/sbin/nginx -V
nginx version: nginx/1.14.2
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)

查看nginx的编译时用到了哪些参数

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

(好吧,我承认这里我偷懒了,只给了一个默认路径)

[root@zklf-server01 nginx]# /application/nginx/sbin/nginx -V
nginx version: nginx/1.14.2
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) 
configure arguments: --prefix=/application/nginx

下载新版本,编译,make。这里的编译参数要和原来的参数相同。所有参数都要相同

[root@zklf-server01 application]# wget http://nginx.org/download/nginx-1.15.10.tar.gz
tar zxf nginx-1.15.10.tar.gz

./configure --prefix=/application/nginx

make

mv/application/nginx/sbin/nginx /application/nginx/sbin/nginx.old

cp objs/nginx /application/nginx/sbin/

 

测试新版本的nginx

[root@zklf-server01 nginx-1.15.10]# /application/nginx/sbin/nginx -t
nginx: the configuration file /application/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /application/nginx/conf/nginx.conf test is successful

让nginx把nginx.pid文件修改成nginx.pid.oldbin,随即启动nginx,实现不间断

这里的pid文件可以在nginx.conf配置文件中查看位置

kill -USR2 `cat /application/nginx/logs/nginx.pid`  更新配置文件
kill -QUIT `cat /application/nginx/logs/nginx.pid.oldbin` 优雅的关闭

查看版本号

[root@zklf-server01 ~]# /application/nginx/sbin/nginx -V
nginx version: nginx/1.15.10
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)

差不多就这样了,我的所有nginx安装路径是在/application/nginx  下面。环境变量单独设置在/etc/profile.d/nginx.sh

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄