Load Balancer 개요
- 트래픽을 분산하는 서비스
- 각 EC2 서버는 이중화되어 있으면 고 가용성도 신경쓸 수 있음
- 클라이언트가 로드벨러서가 없으면 각각의 개별 서버로 접속한다.
- 동일한 서버로 접속할 경우 트래픽이 과부화 될 수 있는데 ELB를 통해 해결한다.
- 각각의 클라이언트, 서버, SQL은 등등 ELB에 연결되어 사용된다.
- EC2 인스턴스, 컨테이너, IP 주소 등 여러 대상으로 자동으로 분산 가능
- 만일 맨위 EC2 서버를 사용하다가 장애가 발생하면 (비정상 대상) 트래픽 라우팅을 중단하고 다시 빈 EC2 서버로 다시 라우팅
ELB 종류
1. Application Load Balancer
- Application단에서 작동하므로 Layer 7 계층에서 작동한다.
- Layer7이기 때문에 주로 HTTP, HTTPS를 다룬다.
- HTTP Header Content를 사용해 라우팅 요청을 처리한다.
- 웹 애플리케이션, 서비스에 적합하다.
2. Network Load Balancer
- 네트워크 계층이므로 Layer 4에서 작동한다.
- Layer 4이기 때문에 TCP, UDP, TLS에서 사용한다.
- Protocol, Port Number를 사용해 라우팅 요청을 처리한다.
- 수백만의 대용량 트래픽 처리에 적합하다.
3. Gateway Load Balancer
- Layer 3에서는 Gateway Load Balancer Endpoint
- Layer 4에서는 Gateway Load Balancer
- GENEVE Protocol을 사용하여 encapsulation 트리픽 전송
- Transparency한 네트워크 게이트웨이를 제공하므로 보안 검사를 위한 방화벽, IPS, IDS 등의 원본 패킷의 데이터가 중요한 가상 어플라이언스에 적합
4. Classic Load Balancer (이제 잘, 거의 안씀)
- Layer 4, Layer 7에서 작동한다.
- HTTP, HTTPS, TCP, TLS에서 작동
- Protocol, Port Number를 사용해 라우팅 요청 처리
- 이전 세대 EC2 - Classic 네트워크에서 사용
ELB 구성
- Client가 ELB에게 연결을 요청하면,
- Listener가 연결 요청을 확인하는 프로세스의 역할을 한다.
- 클라이언트와 로드 밸런서 간의 연결을 위한 프로토콜 및 포트 번호로 구성한다.
- 로드 밸런서와 대상 간의 연결을 위한 프로토콜 및 포트 번호로 구성한다.
- Listenr가 Target Group가 연결된다.
- 타겟 그룹은 대상의 모임이다.
- 여기서 타겟은 다음과 같다.
- EC2 인스턴스
- EC2 ASG
- EC2 IP address
- Lambda
- ALB (Application Load Balancer)
'Cloud Infra Architecture (AWS) > AWS SAA-C03' 카테고리의 다른 글
AWS Application Load Balancer(ALB)란? 실습 (0) | 2023.01.04 |
---|---|
AWS Target Group이란? 실습 (0) | 2023.01.04 |
AWS 가용성과 확장성이란? (0) | 2023.01.04 |
배치그룹이란? (0) | 2023.01.04 |
EC2 AMI란? (0) | 2023.01.04 |