본문으로 바로가기

NGINX 로 RabbitMQ 로드밸런싱 하기

category 나의 주니어 개발 일기/RabbitMQ 2023. 7. 12. 11:41
728x90
반응형
SMALL

NGINX 로 RabbitMQ 로드밸런싱 하기

nginx 다운

docker pull nginx:latest

/etc/nginx/nginx.conf 수정

events {
 	worker_connections 768;
}
stream {
        # List of upstream AMQP connections
        upstream stream_amqp {
                least_conn;    #알고리즘 적용, 커넥션이 최소인것 선택
                server 192.168.0.190:5673; # 로드밸런스 서버 적용
                server 10.100.0.2:5676;     # 로드밸런스 서버 적용
        }


        # AMQP definition
        server {
                listen 15000; # mq 접근시 단일 접근 포트 설정
                proxy_pass stream_amqp; # forward traffic to this upstream group
                proxy_timeout 3s;
                proxy_connect_timeout 3s;
        }

}

http {
        # List of upstream AMQP connections
        upstream stream_rabbit_http {
                least_conn;
                server 192.168.0.190:15671;  # 로드밸런스 mq 모니터링 정보
                server 10.100.0.2:15676;      # 로드밸런스 mq 모니터링 정보
        }


        # Rabbit HTTP definition
        server {
                listen 80; # the port to listen on this server
                #proxy_timeout 3s;
                #proxy_connect_timeout 3s;
                #proxy_redirect  off;
                location / {
                        proxy_pass http://stream_rabbit_http;
                }

        }

}

도커 실행

docker run -d --name webserver -d -p 8081:80 -p 15000:15000 nginx

 

 

클라이언트에서는 NGINX에서 설정한 단일 진입점포트 15000와 NGINX 가 실행되고 있는 IP주소로 접근한다.

 

Rabbitmq 모니터링 사이트 또한 단일 진입점인` http://NGINX_IP주소:8081` 로 접근 가능하다.

728x90
반응형
LIST