Nginx 건강 검진 모듈

4717 단어
이 소절 에서 우 리 는 Nginx 가 백 엔 드 UpStream 클 러 스 터 노드 의 건강 상태 검 사 를 위 한 제3자 모듈 을 소개 합 니 다: nginxupstream_check_module(https://github.com/yaoweibin/nginx_upstream_check_module)。이 모듈 은 TaoBao 팀 이 개발 한 자료 가 있 는데 제 가 GitHua 에서 증 거 를 구 하려 고 했 을 때 직접적인 증 거 를 찾 지 못 했 습 니 다.
여기 서 설명 해 야 할 것 은 현재 많은 Nginx 모듈 이 Nginx 가 백 엔 드 클 러 스 터 노드 에 대한 건강 검 측 을 실현 하고 nginx 뿐만 아니 라upstream_check_module。Nginx 공식 모듈 helhchecknginx_upstreams 도 백 엔 드 노드 에 대한 건강 모니터링 (https://github.com/cep21/healthcheck_nginx_upstreams자세 한 설치 및 사용 설명 이 있 음)
우 리 는 nginx 로 돌아간다upstream_check_module 의 설명 입 니 다. 이 제3자 모듈 을 사용 하려 면 먼저 다운로드 가 필요 합 니 다. 그리고 patch 명령 을 통 해 패 치 를 기 존의 Nginx 소스 코드 에 입력 하고 다시 컴 파일 하여 설치 해 야 합 니 다.다음은 이 모듈 의 설치 와 사용 에 대해 중점적으로 설명 하 겠 습 니 다.
다운로드 nginxupstream_check_모듈 모듈:
wget https://codeload.github.com/yaoweibin/nginx_upstream_check_module/zip/master

       GitHua     ,    linux     git      。

압축 해제 설치 및 패 치 Nginx 소스 코드 입력
# unzip ./nginx_upstream_check_module-master.zip

        Nginx  ,  Nginx     :

# cd ./nginx-1.6.2

# patch -p1 < ../nginx_upstream_check_module-master/check_1.5.12+.patch

        ,           :
patching file src/http/modules/ngx_http_upstream_ip_hash_module.c
patching file src/http/modules/ngx_http_upstream_least_conn_module.c
patching file src/http/ngx_http_upstream_round_robin.c
patching file src/http/ngx_http_upstream_round_robin.h

     : nginx_upstream_check_module        ,           :
If you use nginx-1.2.1 or nginx-1.3.0, the nginx upstream round robin
module changed greatly. You should use the patch named
'check_1.2.1.patch'.
If you use nginx-1.2.2+ or nginx-1.3.1+, It added the upstream
least_conn module. You should use the patch named 'check_1.2.2+.patch'.
If you use nginx-1.2.6+ or nginx-1.3.9+, It adjusted the round robin
module. You should use the patch named 'check_1.2.6+.patch'.
If you use nginx-1.5.12+, You should use the patch named
'check_1.5.12+.patch'.
If you use nginx-1.7.2+, You should use the patch named
'check_1.7.2+.patch'.

     Nginx    1.6.2,       check_1.5.12+.patch    

 
Nginx 설치 다시 컴 파일 하기:
      Nginx,   add-module              :

# ./configure --prefix=/usr/nginx-1.6.2/ --add-module=../nginx_upstream_check_module-master/

# make && make install

이상 의 절 차 를 통 해 제3자 nginxupstream_check_모듈 모듈 은 Nginx 에서 준 비 됐 습 니 다.다음은 이 모듈 을 어떻게 사용 하 는 지 설명 하 겠 습 니 다.우선 upstream 설정 정 보 를 보 겠 습 니 다:
upstream cluster {
    # simple round-robin
    server 192.168.0.1:80;
    server 192.168.0.2:80;

    check interval=5000 rise=1 fall=3 timeout=4000;

    #check interval=3000 rise=2 fall=5 timeout=1000 type=ssl_hello;
    #check interval=3000 rise=2 fall=5 timeout=1000 type=http;
    #check_http_send "HEAD / HTTP/1.0\r
\r
"; #check_http_expect_alive http_2xx http_3xx; }

위의 코드 에서 check 부분 은 nginx 를 호출 합 니 다.upstream_check_module 모듈 의 문법:
check interval=milliseconds [fall=count] [rise=count]
[timeout=milliseconds] [default_down=true|false]
[type=tcp|http|ssl_hello|mysql|ajp|fastcgi]

interval: 필요 한 매개 변수, 요청 한 간격 을 검사 합 니 다.
fall: 검사 실패 횟수 가 fall 을 초과 하면 이 서비스 노드 는 다운 상태 가 됩 니 다.
rise: 검사 성공 횟수 가 rise 를 초과 하면 이 서비스 노드 는 up 상태 가 됩 니 다.
timeout: 시간 초과 요청, 대기 시간 초과 후 이번 검 사 는 실패 합 니 다.
default_다운: 백 엔 드 서버 의 초기 상태 입 니 다.기본적으로 검사 기능 은 Nginx 가 시 작 될 때 모든 백 엔 드 노드 의 상 태 를 다운 으로 설정 하고 검사 가 성공 하면 up 으로 설정 합 니 다.
type: 통신 을 검사 하 는 프로 토 콜 형식 입 니 다. 기본 값 은 http 입 니 다.이상 유형 은 검사 기능 이 지원 하 는 모든 프로 토 콜 형식 입 니 다.
check_http_send http_packet

http_packet      :"GET / HTTP/1.0\r
\r
"

check_http_send 설정, 이 설정 은 검사 모듈 이 검사 할 때마다 백 엔 드 노드 에 어떤 정 보 를 보 내 는 지 설명 합 니 다.
check_http_expect_alive [ http_2xx | http_3xx | http_4xx | http_5xx ]

 
이 상태 코드 들 은 서버 의 HTTP 응답 이 OK 이 고 백 엔 드 노드 가 사용 가능 하 다 는 것 을 나타 낸다.기본 상황 설정: http2xx | http_3xx
설정 요구 에 따라 모듈 설정 을 검사 한 후, 먼저 nginx - t 명령 을 사용 하여 설정 파일 이 사용 가능 한 지 확인 한 다음, nginx - s reload 로 nginx 를 다시 시작 하 십시오.
1.4, 언급 하지 않 을 수 없 는 tengine
텐 진 은 타 오 바 오 에서 시 작 된 웹 서버 프로젝트 입 니 다.이 는 Nginx 를 바탕 으로 큰 방문 사이트 의 수요 에 따라 고급 기능 과 특성 을 많이 추가 했다.텐 진의 성능 과 안정성 은 이미 대형 사이트 인 타 오 바 오, 티몰 등에 서 좋 은 검 사 를 받 았 다.그의 최종 목 표 는 효율 적 이 고 안정 적 이 며 안전 하 며 사용 하기 쉬 운 웹 플랫폼 을 만 드 는 것 이다 (http://tengine.taobao.org/)。
당신 은 알 아야 합 니 다. 저 는 당신 이 업무 의 실제 상황 에 따라 적시에 생산 환경 에 Tengine 을 도입 하 는 것 을 건의 합 니 다.그러나 본 블 로그 에 게 시 될 때 텐 진의 2. X 버 전이 불안정 하기 때문에 1.5.2 의 안정 적 인 버 전 을 사용 하 는 것 을 권장 합 니 다.Tengine 은 승 독 을 거 쳐 개 조 된 Nginx 라 는 것 을 기억 하 세 요.
다음으로 전송:https://www.cnblogs.com/felixzh/p/9016116.html

좋은 웹페이지 즐겨찾기