当前位置: > Linux服务器 > nginx >

Nginx 平滑升级过程详解

时间:2014-10-05 09:25来源:linux.it.net.cn 作者:it

一,准备nginx安装包、编译安装文件。

首先,nginx的官网下载nginx源码。
 

复制代码代码示例:
cd /opt/download/ 
wget -c http://nginx.org/download/nginx-1.0.0.tar.gz 
tar xvzf nginx-1.0.0.tar.gz 
cd nginx-1.0.0

接着,查看编译参数
 

复制代码代码示例:
/opt/nginx/sbin/nginx -V
nginx version: nginx/0.7.67 
built by gcc 3.4.6 20060404 (Red Hat 3.4.6-11) 
configure arguments: --prefix=/opt/app/nginx-0.7.67

开始编译nginx源代码,假设目录结构为:
 /opt/download/nginx-1.0.0 /opt/app/nginx-0.7.67 /opt/nginx –>/opt/app/nginx-0.7.67
要想平滑升级,按照最第一次编译参数进行编译即可,configure之后make,但不要进行make install。

由于想安装/opt/app/nginx-1.0.0,所以修改下安装路径参数,使用--prefix指定:
 

复制代码代码示例:
./configure --prefix=/opt/app/nginx-1.0.0
make

重命名旧版本的nginx执行文件,copy新版本的nginx到目录。
 

复制代码代码示例:
mv /opt/nginx/sbin/nginx /opt/nginx/sbin/nginx.old
cp objs/nginx /opt/nginx/sbin/
cd /opt/app
mkdir /nginx-1.0.0
cp /opt/app/nginx-0.7.67/ nginx-1.0.0/ –r

二,开始平滑升级nginx
cd /opt/download/nginx-1.0.0 make upgrade
出现make错误,查看nginx,已经正常和旧版本的nginx一起工作了。
 /opt/app/nginx-1.0.0/sbin/nginx -t nginx: the configuration file /opt/app/nginx-1.0.0/conf/nginx.conf syntax is ok nginx: configuration file /opt/app/nginx-1.0.0/conf/nginx.conf test is successful kill -USR2 `cat /opt/app/nginx-1.0.0/logs/nginx.pid` sleep 1 test -f /opt/app/nginx-1.0.0/logs/nginx.pid.oldbin make: *** [upgrade] Error 1

找到旧版本的nginx的进程号,kill掉即可。
cat /opt/app/nginx-0.7.67/logs/nginx.pid.oldbin 14004 kill –9 14004即可

添加链接到nginx-1.0.0
ln –s /opt/nginx /opt/app/nginx-1.0.0 sh /opt/nginx/sbin/restart.sh
 
如此,很简单的几步,就完成了nginx平滑升级到1.0.0版本。

(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容