본문 바로가기

AWS

[AWS] Elastic Load Balancer 개념 + AWS의 ALB, NLB

로드 밸런서

간단히 말하면 부하를 분산 해주는 장치이다. 
여러 대의 서버를 사용해서 사용자가 접근하면 이 서버들에 분산 시킨다. 

Round Robin 방식의 Load Balancing

라운드 로빈(Round Robin) 방식은 각 서버 순서대로 번갈아서 서버에 접근한다. (이 방식 외에도 여러 방식이 있지만, 설명을 생략하였다.)
 
 
이렇게 여러 대의 서버를 사용해서 성능을 높이는 걸 Scale-out 이라고 한다. (반대는 Scale-in)
 
 
 
 

L4와 L7스위치 로드 밸런서 

L4 스위치 - Port 번호를 기준으로 부하를 분산한다. 
L7 스위치 - Url을 기준으로 부하를 분산한다. (고급 로드 밸런싱으로 http 헤더 정보를 분석한다.)
 
 
 
 
  
 
 

AWS - Elastic Load Balancer

- AWS에서는 Elastic Load Balancer(ELB)를 제공한다. 
- 하나 이상의 가용 영역에 있는 여러 대상에서 들어오는 Application Traffic을 인스턴스, 컨테이너, IP 주소, Lambda 함수, 가상 기기 등의 대상에 자동으로 분산시키는 것

 
ELB의 종류 
1. Application Load Balancer
 
2. Network Load Balancer
 
3. Classic Load Balancer
1과 2가 나오기 전에 사용했다. 현재는 잘 쓰이지 않는다. 
 
 

ALB VS NLB 어떤 것을 사용해야 할까? 

 

고정 IP가 필요한 경우, 소켓 통신이 필요한 경우 등은 NLB를 사용하고

이외의 경우에는 ALB를 사용하면 된다 

 

참고

네트워크 트래픽 분산 - Elastic Load Balancing - Amazon Web Services