공유할 서비스 선택

TECH


TECH

Middleware (Nginx-4) Nginx 사용하는 옵션 정리 4_(sticky, upstream, ip hash)

페이지 정보

작성자 미들웨어 아이디로 검색 전체게시물 댓글 0건 조회 5,214회 좋아요 2회 작성일 20-06-06 09:37

본문

이번에는 요즘 많이 사용되고 있는 Nginx에 대해 설치 부터 튜닝까지 방법에 대해 진행해보겠습니다.

이번엔 두 번째로 Nginx에서 자주 사용하는 proxy_pass 에 대해 설명해드리겠습니다.

 

진행 순서는 1~8까지 가이드를 준비하고 있습니다.

  1. Nginx 설치 및 컴파일 방법_(모듈설치)
  2. Nginx 사용하는 옵션정리_proxy_pass
  3. Nginx 사용하는 옵션정리_upstream
  4. Nginx 사용하는 옵션정리_health-check
  5. Nginx 사용하는 옵션정리_sticky
  6. Nginx 사용하는 옵션정리_upstream, ip hash
  7. Nginx 사용하는 옵션정리_X-Forwarded-For
  8. Nginx 사용하는 옵션정리_php-fpm & zabbix 모니터링

nginx sticky 을 사용하고자 할때는 몇가지 방법이 필요합니다.

apache 경우는 mod_jk 설정을 하고 jkmount 적용해주면 자연스럽게 sticky 세션이 적용됩니다.

그러나,  nginx 에서 sticky 옵션을 사용하고자 할때는 상용 nginx를 사용하셔야 하는데, 무료 버전에서도 사용 할 수 있는 방법이 있습니다.

 

 

1. sticky 설정 할 수 있도록 컴파일이 필요하다.

./configure ... --add-module=/absolute/path/to/nginx-sticky-module-ng
make
make install

 


2. stickey 한줄만 추가해주면 된다.
(단, backup 옵션과 함께는 사용하지 못함)

upstream {
  sticky;
  server 127.0.0.1:9000;
  server 127.0.0.1:9001;
  server 127.0.0.1:9002;
}


3. upstream, ip hash옵션

upstream

 

cluster 구성시 필수로 사용하는 옵션이다.

cluster 에 참여하는 서버 정보와 포트를 upstream 지시자로 설정하며 첫 번째 설정한 서버가 우선적으로 응답을 처리한다.

http {
    server_names_hash_bucket_size 64;
    # server_name_in_redirect off;

    include /etc/nginx/mime.types;

    ##
    upstream phpserver {
        ## LB method
        # least_conn, ip_hash;

        ## fastcgi 를 사용하는 경우
        #server unix:/var/run/php/php7.0-fpm.sock;
        #server fpm-server-ip:9000;

        ## proxy 를 사용하는 경우
        server was1-ip:1234;
        server was2-ip:1234;
    }

 

ip hash

클라이언트 IP 를 hash 해서 특정 클라이언트는 특정 서버로 연결하는 설정.
session clustering 이 구성되지 않은 경우 유용하다.

upstream backend {
    ip_hash;

    server was1-ip:8080 slow_start=30s;
    server was2-ip:1234;
    server 192.0.0.1 backup;
}

여기서 중요한건 ip hash는  sticky 세션 방식이 아닙니다.

ip hash를 사용하면 client ip를 지정한 서버로 연결은 가능하나, jboss 에서 세션클러스터링이 구성 된 경우 세션이 뺑뺑이 돌수 있습니다.

ip hash 방식과 sticky 세션 방식을 함께 사용하는것은 권고하지 않습니다.

 

많은 다른 브라우저가 동일한 IP주소 (프록시 뒤에서) 사용해서 로드밸런싱이 잘 안될 확률이 있으니, 적절한 방법으로 적용해서 사용해주세요.


 

댓글목록

등록된 댓글이 없습니다.

TECH 목록
번호 제목 작성자 작성일 조회수
148 Middleware 미들웨어 아이디로 검색 전체게시물 04-24 740
(오픈소스 활용-18) VSCODE 설치 및 GIT 활용 연동 가이드

카테고리 : Middleware

740 0
작성자 : 미들웨어 23/04/24
147 Middleware 미들웨어 아이디로 검색 전체게시물 04-05 1044
(오픈소스 활용-17) 로컬 및 URL 호출 테스트 옵션 (curl, ab 옵션으로 부하주기)

카테고리 : Middleware

1,044 0
작성자 : 미들웨어 23/04/05
146 Middleware 미들웨어 아이디로 검색 전체게시물 03-20 571
(오픈소스 활용-16) Jstack을 활용하여 CPU급등한 프로세스 파일로 떨구기

카테고리 : Middleware

571 0
작성자 : 미들웨어 23/03/20
145 OS leechanho 아이디로 검색 전체게시물 03-15 1937
[쉘스크립트] 리눅스 시스템 정보수집 스크립트

카테고리 : OS

1,937 1
작성자 : leechanho 23/03/15
144 Middleware 미들웨어 아이디로 검색 전체게시물 03-08 1015
(Monitoring) Jennifer & Slack 연동 구성방법 (이벤트 발생 확인)

카테고리 : Middleware

1,015 0
작성자 : 미들웨어 23/03/08
143 Middleware 미들웨어 아이디로 검색 전체게시물 02-20 940
Coherence란 무엇인가?

카테고리 : Middleware

940 0
작성자 : 미들웨어 23/02/20
142 Middleware 미들웨어 아이디로 검색 전체게시물 02-08 1475
TP-monitor 란 무엇인가?

카테고리 : Middleware

1,475 0
작성자 : 미들웨어 23/02/08
141 Middleware 미들웨어 아이디로 검색 전체게시물 01-25 473
(weblogic 활용) Weblogic을 마켓에서 구매후 클릭으로 설치 -2

카테고리 : Middleware

473 0
작성자 : 미들웨어 23/01/25
140 Middleware 미들웨어 아이디로 검색 전체게시물 01-12 579
(weblogic 활용) Weblogic을 마켓에서 구매후 클릭으로 설치 -1

카테고리 : Middleware

579 0
작성자 : 미들웨어 23/01/12
139 Middleware 미들웨어 아이디로 검색 전체게시물 12-21 933
(오픈소스 활용-15) DB연동 테스트 샘플jsp (DBtest.jsp)

카테고리 : Middleware

933 0
작성자 : 미들웨어 22/12/21
Total 198건
게시물 검색

주식회사 클럭스| 대표 : 이찬호| 사업자등록번호 : 107-87-27655
주소 : 서울특별시 영등포구 국회대로 800, 여의도파라곤
E-mail : sales@chlux.co.kr
Copyright © 클럭스 www.chlux.co.kr All rights reserved.
상단으로Top