wdcp v3 在线服务状态下平滑升级Nginx到高版本

大鸟用wdcp比较多,今天准备把nginx1.8.1升级到nginx-1.9.10,这个是不是有点蛋疼,不过也纯粹是为了讲这个教程特地搞了一下,好了,下面看看怎么操作!

执行 nginx -V 查看以前的编译参数。不过呢wdcp不是这个命令

执行:/www/wdlinux/nginx-1.8.1/sbin/nginx -V  看图wdcp v3 在线服务状态下平滑升级Nginx到高版本

这个是被大鸟升级好的可以看到已经是nginx1.9.0的版本了,我们就假装是低版本的nginx1.8.0吧,看下面要怎么做!

一、半自动平滑升级

所谓半自动,其实就是在最后迁移的时候使用源码自带的升级命令:make upgrade来自动完成。

①、按需编译新版本的nginx

根据需求,常规编译新版本nginx,不过只要执行到make就打住,不要make install!

#下载nginx-1.9.10版本并解压

来到 /root 目录

  1. cd /root
  2. wget http://nginx.org/download/nginx-1.9.10.tar.gz
  3. tar xzf nginx-1.9.10.tar.gz
  4. cd nginx-1.9.10
  5. /www/wdlinux/nginx-1.8.1/sbin/nginx -V #查看nginx编译参数
  6. make #####此处不需要install

②、重命名nginx旧版本二进制文件,即sbin目录下的nginx(期间nginx并不会停止服务!):

service nginxd stop

mv /www/wdlinux/nginx-1.8.1/sbin/nginx /www/wdlinux/nginx-1.8.1/sbin/nginx.old
cp objs/www/wdlinux/nginx-1.8.1/sbin/nginx
/www/wdlinux/nginx-1.8.1/sbin/nginx -t
service nginxd start

④、在源码目录执行make upgrade开始升级:

[root@dajiadu nginx-1.9.10]# make upgrade

#下面是make upgrade命令的打印信息:

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

在截图wdcp v3 在线服务状态下平滑升级Nginx到高版本

#最后确认一下nginx进程,可以发现有2个主进程执行[root@dajiadu nginx-1.9.10]# ps aux | grep nginx,并且有正在关闭的进程(shutting down)

wdcp v3 在线服务状态下平滑升级Nginx到高版本

完成后,最后确认一下 /www/wdlinux/nginx-1.8.1/sbin/nginx -V

wdcp v3 在线服务状态下平滑升级Nginx到高版本

大概教程也就是这个样子了,仅供大家参考!


【AD】DMIT,美国CMIN2 VPS,8折优惠,折后$23.10/季(1核2G/20G SSD /[email protected]流量),三网回程CMIN2

【AD】美国洛杉矶CN2 VPS/香港CN2 VPS/日本CN2 VPS推荐,延迟低、稳定性高、免费备份_搬瓦工vps