pgup12 发表于 2016-12-24 08:46:29

Nginx 平滑升级 安装实验(从0.7.56升级到.8.38)

实验开始:
# groupadd -g 1024 www
# useradd -u 1024 -g nginx -M -s /sbin/nologin www
# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/0.7.56
built by gcc 4.1.2 20080704 (Red Hat 4.1.2-46)
TLS SNI support disabled
configure arguments: --user=www --group=www --prefix=/usr/local/nginx/ --with-http_stub_status_module --with-http_ssl_module
 
1.下载nginx0.8.38
wget http://www.nginx.org/download/nginx-0.8.38.tar.gz
2.解压
tar zxvf nginx-0.8.38.tar.gz
 
3.进入nginx-0.8.38目录
cd nginx-0.8.38/
 
4.编译  ./configure –user=www –group=www –prefix=/usr/local/nginx –with-http_stub_status_module –with-http_ssl_module
  make
  5.备份nginx 原文件
  mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old
  6.复制编译make后的nginx二进制文件覆盖nginx旧版本二进制文件
  cp objs/nginx /usr/local/nginx/sbin/nginx
  7.测试nginx配置文件
  /usr/local/nginx/sbin/nginx -t
the configuration file /usr/local/nginx//conf/nginx.conf syntax is ok
configuration file /usr/local/nginx//conf/nginx.conf test is successful
  8.把nginx.pid 改成nginx.pid.oldbin,然后紧跟着启动新版本的nginx
  kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`

9.退出旧版本的nginx
kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`
10.查看新版本的nginx
lsof -i :80
COMMAND   PID USER   FD   TYPE DEVICE SIZE NODE NAME
nginx   15495 root    6u  IPv4  12577       TCP *:http (LISTEN)
nginx   15496  www    6u  IPv4  12577       TCP *:http (LISTEN)
ps -ef |grep nginx
root     15495     1  0 07:55 ?        00:00:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
www      15496 15495  0 07:55 ?        00:00:00 nginx: worker process                                         
root     15521 11524  0 08:11 pts/0    00:00:00 grep nginx
/usr/local/nginx/sbin/nginx -v
nginx version: nginx/0.8.38
 
OK ,平滑升级完成!!
页: [1]
查看完整版本: Nginx 平滑升级 安装实验(从0.7.56升级到.8.38)