AWS 에서 Amazon Linux Nginx TCP Stream Proxy 설정

  • 아마존 리눅스에서 nginx 설치
    • sudo amazon-linux-extras install nginx1
  • tcp stream 모듈은 Default 설치가 아니라서 추가 설치 필요
    • sudo yum install nginx-mod-stream

stream 설정

stream {
    # target
    upstream upstream_pass {
        server 10.20.30.40:10001;
    }

    # tcp
    server {
        listen 10001;
        proxy_pass upstream_pass;
        proxy_connect_timeout 1s;
    }
}

이때 기본적으로 ngx_stream_module.so 이 load 가 되어 있지 않기 때문에 load_module 로 해당 모듈을 등록해줘야만 stream 키워드가 사용가능하다. 이때 위에 yum 으로 설치한 경로와 기본 경로가 다를 수 있으므로 해당 경로에 링크를 걸어주거나 아래와 같이 절대 경로를 적어줘야 한다.

load_module /usr/lib64/nginx/modules/ngx_stream_module.so;