
로드밸런서의 타겟이 Private Subnet에 위치한 EC2 인스턴스이더라도 로드밸런서의 네트워크 맵핑이 Private Subnet이 아니라 Public Subnet이여야 한다는 점 주의!
로드밸런서도 네트워크 인터페이스의 IP를 통해서 통신하게 되는데 외부 인터넷과 통신하기 위해서는 네트워크 인터페이스가 인터넷 게이트를 통해 외부 인터넷과 통신 가능한 서브넷에 위치해야 하기 때문이다.
(그래야 외부에서의 트래픽이 Public Subnet에 위치한 로드 밸런서의 네트워크 인터페이스를 통해 Private Subnet의 EC2 인스턴스로 이동하게 되고 통신이 가능해지는 것이다)
보안 그룹 구성: 기존 보안 그룹을 선택하거나 새로운 보안 그룹을 생성한다. 로드밸런서가 수신할 트래픽을 허용하는 규칙을 설정한다. (VPC, 인바운드 규칙, 아웃바운드 규칙 등을 설정함)
Listner and routing에 Default Action(기본 작업)이 리스너가 전달받은 트래픽 또는 Request에 대한 기본 액션을 설정하는 것인데 해당 부분이 리스너의 Rule이다.
이 룰을 이용해서 특정 요청 또는 헤더 등을 포함하고 있을 때, 특정 타겟으로 트래픽을 보낼 수 있는 경로기반 라우팅도 구성할 수 있다.
프로토콜과 포트 설정을 왜 두 번이나 했을까 ????
- 보안 그룹 생성 시 프로토콜과 포트 설정한 것
: 로드밸런서와 타겟이 되는 EC2 사이에서의 통신에 대한 프로토콜과 포트를 지정하는 것- 로드밸런서 생성 시 Listner and routing 부분에 프로토콜과 포트를 설정하는 것
: 외부 또는 클라이언트와 로드밸런서 사이에 통신에 대한 프로토콜과 포트를 지정하는 것.
: 로드밸런서는 트래픽을 받으면 리스너를 통해 타겟그룹으로 트래픽을 전달한다.
즉, 대상 그룹은 로드밸런서가 트래픽을 분산할 대상들(예: EC2 인스턴스)을 정의한다.
해당 과정은 2가지 단계로 나뉜다.
: 대상의 유형(Instance, Load Balancer, IP 주소), 작업 중인 VPC 선택, 프로토콜 버전 등을 지정한다. 
: 로드밸런서를 통해 트래픽을 넘겨받을 인스턴스를 선택한다.