로드 밸런싱된 AWS Elastic Beanstalk 환경에 단일 고정 IP 주소를 할당하여 들어오는 트래픽을 식별하려고 합니다.
간략한 설명
네트워크 주소 변환(NAT) 게이트웨이를 사용하여 여러 IP 주소를 공개적으로 노출된 단일 IP 주소로 매핑할 수 있습니다. Elastic Beanstalk 환경에서 NAT 게이트웨이를 사용하는 경우 환경의 백엔드 인스턴스가 프라이빗 서브넷에서 시작됩니다. Elastic Beanstalk는 NAT 게이트웨이를 통해 아웃바운드 트래픽을 라우팅합니다. 탄력적 IP 주소를 사용하여 백엔드 인스턴스에서 아웃바운드 트래픽의 소스를 식별할 수 있습니다. 탄력적 IP 주소는 NAT 게이트웨이에 필요한 고정 IP 주소입니다.
해결 방법
Elastic Beanstalk에서 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 프라이빗 서브넷으로 시작합니다. 이러한 프라이빗 서브넷은 연결된 탄력적 IP 주소가 있는 NAT 게이트웨이를 기본 경로로 사용합니다. 로드 밸런서는 퍼블릭 서브넷에 있습니다. Elastic Beanstalk는 인터넷 게이트웨이를 통해 로드 밸런서로 주고받을 수 있는 모든 외부 트래픽을 라우팅합니다.
중요: 시작하기 전에 NAT 게이트웨이를 설정하세요.
-
Elastic Beanstalk 콘솔을 엽니다.
-
[새 애플리케이션 생성(Create New Application)]을 선택한 다음 애플리케이션 생성 단계를 완료합니다.
참고: 기존 애플리케이션을 사용하는 경우 3단계로 건너뛰고 환경을 구성하세요.
-
[작업(Actions)]을 선택한 다음 [방법 생성(Create Method)]을 선택합니다.
-
웹 서버 환경을 선택한 다음 선택을 선택합니다.
-
환경 정보와 나머지 플랫폼 및 애플리케이션 코드 섹션에서 해당 환경의 요구 사항에 따라 옵션을 선택합니다.
-
추가 옵션 구성을 선택합니다.
-
**프리셋 구성 사전 설정(Configuration presets)**에서 **고가용성(High availability)**을 선택합니다. 이렇게 하면 환경이 로드 밸런싱된 환경으로 설정됩니다.
-
네트워크 카드의 경우 편집을 선택한 후 다음과 같이 편집합니다.
- VPC에서 사용자의 VPC를 선택합니다.
- [로드 밸런서 설정(Load balancer settings)] 섹션의 [가시성(Visibility)]에서 [퍼블릭(Public)]을 선택합니다.
- [로드 밸런서 서브넷(Load balancer subnets)] 테이블에서 퍼블릭 서브넷을 선택합니다.
- 인스턴스 설정 섹션에서 퍼블릭 IP 주소를 선택 취소합니다.
- 인스턴스 서브넷 테이블에서 앞서 설정한 NAT 게이트웨이가 있는 프라이빗 서브넷만 선택합니다.
-
저장을 선택합니다.
-
[Create environment(환경 생성)]을 선택합니다.
이제 생성한 Elastic Beanstalk 환경에는 단일 탄력적인 IP 주소에서 시작되는 모든 아웃바운드 트래픽이 있습니다.