본문 바로가기
클라우드 및 인프라/AWS

[AWS] ALB , NLB, GWLB

by 작은소행성 2022. 7. 20.

로드밸런서란 

하나의 인터넷 서비스가 발생하는 트래픽이 많을 때 여러 대의 서버가 분산 처리하여 서버의 로드율 증가, 부하량, 속도 저하 등을 고려해 적절히 분산 처리하여 해결해주는 서비스이다. 

 

 

AWS ELB에는 ALB , NLB, CLB 3가지 종류가 있다. 

상황에 맞게 부하 분산을 사용 해야 하는데 어떠한 상황에서 사용하면 좋은지 정리해보고자 한다. 

 

AWS 종류

AWS 로드밸런서 생성에 가면 아래와 같이 3가지 종류를 확인할 수 있다. 

aws, Load Balancer

 

ALB
  • Application Layer인 L7계층에서 작동한다. 
  • HTTP/HTTPS 트래픽을 처리하는 로드밸런싱에 최적화 되어 있다. 
  • IP주소가 변동되기 때문에 클라이언트가 접근하기 위해선 DNS Name을 사용해야 한다. 
  • IP 주소 + 포트 번호 + 패킷 내용을 보고 스위칭한다. 
  • Path-based routing을 지원해 ALB에 연결된 인스턴스들은 여러개의 URL과 Path를 가질 수 있다.
  • SSL 적용이 가능하다. 

 

NLB
  • Network Layer인 L4계층에서 작동한다. 
  • TCP/UDP 트래픽을 로드밸런싱하여 내부 인스턴스로 전달한다. 
  • TCP/UDP 서버를 구축할 때 NLB는 굉장히 낮은 지연시간으로 최적의 시간을 보여준다. 
  • 로드 밸런서에 대한 고정 IP주소를 지원한다. 
  • IP 주소 + 포트 번호를 보고 스위칭한다. 
  • SSL 적용이 인프라 단에서 불가능해 애플리케이션에서 따로 적용해 주어야 한다. 
  • 클라이언트의 요청에 대해 낮은 대기시간으로 높은 처리가 가능하다. 
  • 단순한 라우팅이 필요하고 트래픽이 극도로 많은 경우 ALB보단 NLB가 적합하다. 

 

GWLB
  • 외부에서 유입되는 트래픽과 위부로 나가는 트래픽을 가상어플라이언스로 라우팅 할 수 있도록 해주는 서비스이다. 
  • 가상 어플라이언스의 간편한 배포, 확장성 및 고가용성을 제공해준다. 
  • 3rd-party를 이용해 방화벽을 구축하는 경우에 발생하는 운영 복잡도 증가 및 제약 사항에 대한 문제점들을 해결할 수 있다. 

 

 

반응형