nginx 버 전의 부 드 러 운 업그레이드



   nginx 버 전의 부 드 러 운 업그레이드
    며칠 전에 제 동료 가 저녁 에 당직 을 서고 일이 없 을 때 회사 고객 의 nginx 서버 를 업 그 레이 드 했 습 니 다. 이런 조작 을 저 는 해 본 적 이 없고 궁금 합 니 다. 오늘 은 한가 할 때 인터넷 에서 비슷 한 문 서 를 찾 아 조작 을 했 고 그 과정 을 기록 하 였 습 니 다.
1. 자신의 서버 nginx 버 전과 최초 로 자신 이 컴 파일 하고 설치 한 인 자 를 봅 니 다.

  
  
  
  
  1. [root@localhost ~]# /usr/local/nginx/sbin/nginx -V 
  2.  nginx version: nginx/1.2.1 
  3.  built by gcc 4.1.2 20080704 (Red Hat 4.1.2-46) 
  4.  TLS SNI support disabled 
  5.  configure arguments: --prefix=/usr/local --sbin-path=/usr/sbin/nginx \
  6. --conf-path=/usr/local/nginx/conf/nginx.conf \
  7. --error-log-path=/var/log/nginx/error.log \
  8. --http-log-path=/var/log/nginx/access.log \
  9. --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock \
  10. --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module \
  11. --with-http_stub_status_module --with-http_gzip_static_module \
  12. --http-client-body-temp-path=/var/tmp/nginx/client/ \
  13. --http-proxy-temp-path=/var/tmp/nginx/proxy/ \
  14. --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \
  15. --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
  16. --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre 

2. 여기 있다http://nginx.org/en/download.html최신 nginx 버 전 을 찾 아 서버 에 다운로드 합 니 다.
3. 새 버 전 을 압축 해제 하고 컴 파일 합 니 다. 설치 디 렉 터 리 는 원래 와 같 아야 하지만 새로운 인 자 를 추가 할 수 있 습 니 다.

  
  
  
  
  1. [root@localhost ~]# tar xvf nginx-1.2.4.tar.gz   
  2. [root@localhost ~]# cd nginx-1.2.4 
  3. [root@localhost nginx-1.2.4]# ./configure --prefix=/usr/local \ 
  4.   --sbin-path=/usr/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf \ 
  5.   --error-log-path=/var/log/nginx/error.log \ 
  6.   --http-log-path=/var/log/nginx/access.log \ 
  7.   --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock \ 
  8.   --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module \ 
  9.   --with-http_stub_status_module --with-http_gzip_static_module \ 
  10.   --http-client-body-temp-path=/var/tmp/nginx/client/ \ 
  11.   --http-proxy-temp-path=/var/tmp/nginx/proxy/ \ 
  12.   --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \ 
  13.   --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \ 
  14.   --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre 

4. make 명령 만 실행, make install 필요 없 음

  
  
  
  
  1. [root@localhost nginx-1.2.4]# make 

5. nginx 의 바 이 너 리 파일 교체

  
  
  
  
  1. [root@localhost nginx-1.2.4]# mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak  
  2. [root@localhost nginx-1.2.4]# cp objs/nginx /usr/local/nginx/sbin/ 

6. 성공 여부 테스트 진행

  
  
  
  
  1. [root@localhost nginx-1.2.4]# /usr/local/nginx/sbin/nginx -t 
  2.  nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok 
  3.  nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful 

7. 명령 을 실행 하여 부 드 러 운 업 그 레이 드 를 진행 합 니 다.

  
  
  
  
  1. [root@localhost nginx-1.2.4]# make upgrade
  2.  /usr/sbin/nginx -t 
  3.  nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok 
  4.  nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful 
  5.  kill -USR2 `cat /var/run/nginx/nginx.pid` 
  6.  sleep 1 
  7.  test -f /var/run/nginx/nginx.pid.oldbin 
  8.  kill -QUIT `cat /var/run/nginx/nginx.pid.oldbin` 

make upgrade 명령 을 실행 한 후에 표 시 된 정 보 는 몇 개의 명령 을 실 행 했 는 지, 그 kill 명령 을 수 동 으로 실행 할 수 있 는 지 보 여 줍 니 다.
8. 다음 버 전 정보 보기

  
  
  
  
  1. [root@localhost nginx-1.2.4]# /usr/local/nginx/sbin/nginx -V  
  2.  nginx version: nginx/1.2.4 
  3.  built by gcc 4.1.2 20080704 (Red Hat 4.1.2-46) 
  4.  TLS SNI support disabled 
  5.  configure arguments: --prefix=/usr/local --sbin-path=/usr/sbin/nginx 
  6. --conf-path=/usr/local/nginx/conf/nginx.conf \
  7. --error-log-path=/var/log/nginx/error.log \
  8. --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid \
  9. --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx \
  10. --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module \
  11. --with-http_gzip_static_module \
  12. --http-client-body-temp-path=/var/tmp/nginx/client/ 
  13. --http-proxy-temp-path=/var/tmp/nginx/proxy/ \
  14. --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \
  15. --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
  16. --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre 

nginx 승급 완료!

좋은 웹페이지 즐겨찾기