ElasticBeanstalk 로드밸런싱 설정
[ElasticBeanStalk] -> [환경] -> [구성] 으로 이동하면 해당 화면을 만날 수 있다.

리스너
외부에서 들어오는 포트에 대한 설정이라고 생각하면 된다. 그림을 보면 HTTPS 443 포트만 활성화 시켜두었고 HTTP 80 포트는 비활성화 시켜놨다.
프로세스
리스너로 들어온 포트를 어떤 포트로 맵핑 시켜줄지 설정할 수 있다. 그림을 보면 443포트로 들어온 통신을 HTTP 9090 포트로 보내주고 있다.
즉, 로드 밸런서를 통해 프론트 측에서는 리스너 포트(https://api.youdomain:443) 만 알고 있다면 내부적으로 포트가 바뀌어도 프론트가 변경될 일은 없다. 그리고 프록시설정을 함으로써 보안도 강화될 수 있다.
리스너에 HTTP 80포트 → 8080 포트와 연결하고 싶다면 어떻게 해야할까?
프로세스 설정

| 명칭 | 설명 |
| 이름 | 이해하기 쉬운 이름으로 정해준다. |
| 포트 | 원하는 포트로 설정해주자 (예시는 8080포트 지정) |
| 프로토콜 | HTTP, HTTPS 중에 현재 사용하고 있는 프로토콜로 해주자. |
| 상태 검사 | 로드밸런싱이 해당 WAS와 잘 연결되는지 확인하는 용도 이기에 Health Check을 할 수 있는 아무 API를 하나 만들어 두는게 좋다. 만약 시큐리티를 타고 있다면 인증을 전부 열어두어야 한다. 현재 경로 http://mydomain:8080/ 으로 이동하면 200 OK 받을 수 있게 설정해두었다. |
리스너 설정
- [리스너 추가] 클릭
- 포트 입력 [9090]
- HTTP 프로토콜 선택
- [Default process] 선택 ( 어떤 프로세스와 연결할 지 정한다고 생각하면 된다.)
참고
만약 이렇게 설정했는데도 정상작동이 안된다면 ALB 로 이동하여 보안그룹에 지정한 해당 포트가 인바운드 규칙에 포함되어있는지 확인해보자.
그리고 프로덕션 환경에서 사용한다면 ELB 액세스 로그를 활성화 해주는게 좋다.
'AWS' 카테고리의 다른 글
| [AWS] Elastic Beanstalk + Docker 플랫폼 + HTTPS + 로드 밸런싱 (0) | 2023.04.21 |
|---|---|
| [AWS] access Denied for bucket 해결방법 (0) | 2023.04.18 |
| [AWS] Route53 사용하지 않고 SSL 인증서만 사용하는 방법 With NameCheap (0) | 2023.04.18 |
| [Route53] 네임서버 및 SSL 구축 방법 (0) | 2023.04.14 |
| [ElasticBeanStalk] Dockerrun.aws.json 컨테이너 자동으로 run 안되는 현상 (0) | 2023.04.14 |