nginx 부 드 러 운 업그레이드
2961 단어 nginx부 드 러 운 업그레이드상용 서비스
실행 중인 Nginx 를 업그레이드 하려 면 서 비 스 를 중단 하지 않 고 진행 할 수 있 습 니 다. 구체 적 인 절 차 는 다음 과 같 습 니 다.
1. 새로운 Nginx 를 다운로드 하여 이전 버 전의 설치 경로 로 다시 컴 파일 합 니 다.다시 컴 파일 하기 전에 오래된 실행 가능 한 파일 을 백업 하 세 요.
2. 원래 설치 설정 정보 조회
# netstat -unlatp | grep nginx
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 2410/nginx
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 2410/nginx
# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.8.1built by gcc 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module
3. 새로운 버 전 컴 파일 (현재 최신 안정 판 은 1.10.3)
# tar -xvf nginx-1.10.2.tar.gz # cd nginx-1.10.23 ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module4 make
# mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx-low #원본 버 전 백업
# cp objs/nginx /usr/local/nginx/sbin/ #sbin 디 렉 터 리 로 cp 새 시작 프로그램
# make upgrade #업그레이드 실행
# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
# kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`
# sleep 1
# test -f /usr/local/nginx/logs/nginx.pid.oldbin
# kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`
주: kill - USR 2 명령 을 실행 합 니 다. 이전 버 전의 메 인 프로 세 스 ID 가 저 장 된 파일 의 이름 을. oldbin 으로 바 꿉 니 다.
명령 형식: kill - USR 2 이전 버 전의 Nginx 주 프로 세 스 번호
일반적으로 다음 과 같 습 니 다: kill - USR 2 ` cat / usr / local / nginx / nginx. pid `
4. 새 버 전의 설치 디 렉 터 리 인증 에 들 어가 새로운 Nginx 프로그램 을 시작 합 니 다.
# ./sbin/nginx -V
nginx version: nginx/1.10.2
……………………
# ulimit -SHn 65535
# /usr/local/nginx/sbin/nginx
5. 이때 신 구 버 전의 Nginx 가 동시에 실행 되 고 요청 을 공동으로 처리 합 니 다.이전 버 전의 Nginx 를 점차 중단 하려 면 이전 메 인 프로 세 스에 WINCH 신 호 를 보 내야 합 니 다.그리고 나 서 그의 업무 진행 은 여 유 롭 게 끝 날 것 이다.
\ # kill - winCH 이전 버 전의 Nginx 메 인 프로 세 스 번호
6. 한 동안 오래된 작업 프로 세 스 가 모든 요청 을 처리 한 후에 종료 하고 새로운 프로 세 스 만 입력 요청 을 처리 합 니 다.다음 명령 으로 보기:
# ps -ef | grep nginx
7. 현재 새 버 전 을 사용 할 지, 아니면 이전 버 전 으로 복원 할 지 결정 할 수 있 습 니 다.
kill - UP 오래된 주 프로 세 스 번호: Nginx 는 설정 파일 을 다시 불 러 오지 않 은 상태 에서 작업 프로 세 스 를 시작 합 니 다.
kill - QUIT 새 주 프로 세 스 번호: 작업 프로 세 스 를 여 유 롭 게 닫 습 니 다.
kill - TERM 새 주 프로 세 스 번호: 강제 종료
kill 새 주 프로 세 스 번호 나 오래된 주 프로 세 스 번호: 어떤 이유 로 새로운 작업 프로 세 스 가 종료 되 지 않 으 면 kill 신 호 를 보 냅 니 다.
새 메 인 프로 세 스 가 종료 되면 오래된 메 인 프로 세 스 는. oldbin 접 두 사 를 제거 하고 그의. pid 파일 로 복원 합 니 다. 그러면 모든 것 이 업그레이드 전 으로 복 원 됩 니 다.업그레이드 에 성공 하고 새 버 전 을 유지 하려 고 할 때 QUIT 신 호 를 오래된 메 인 프로 세 스에 보 내 서 종료 시 키 고 새로운 프로 세 스 만 남 길 수 있 습 니 다: kill - QUIT 옛 메 인 프로 세 스 번호
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.