ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [AWS] ALB, NLB, GWLB
    Network 2023. 9. 16. 18:41
    728x90

    Load Balancer

    부하 분산 기술을 제공하주는 기술로 트래픽이 많을 때 여러 대의 서버로 트래픽을 분산하여 서버의 부하를 완화시켜 주는 기술입니다.

    부하 분산 뿐만아니라 스케일 아웃에 대한 하나의 엔드포인트를 제공하는데 오토스케일링 그룹을 통해 여러 개의 인스턴스를 생성하고 관리함으로써 고가용성을 확보하고 안정적인 서비스를 운영할 수 있도록 해줍니다.

     

    ELB(Elastic load balancing)

    AWS에서 지원하는 ELB는 VPC에 탑재되어 외부 요청을 받고 VPC내의 리소스에 부하를 분산합니다.

    ELB는 외부의 요청을 받아들이는 리스너(Listener)와 요청을 분산할 리소스의 집합인 대상 그룹(Target group)으로 구성되며 ELB는 다수의 리스너와 대상 그룹을 가질 수 있습니다.

    출처: https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html

    리스너는 외부 요청을 받아들이기 위해 서비스 포트를 보유하고 있으며 외부의 요청은 서비스 포트로 접속하는 요청만을 처리합니다.

    대상 그룹 또한 서비스 포트를 보유하고 있으며 부하 분산 대상 서버는 해당 포트가 열려있어야 합니다.

     

    NLB (Newtwork load balancer)

    OSI 4계층인 Transport 계층에서 작동하며 TCP와 UDP를 사용하는 요청을 받아들여 부하 분산을 합니다.

    HTTP가 아닌 하위 계층인 TCP Layer에서 처리하므로 HTTP 헤더를 해석하지 못합니다. LB가 연결 요청을 받으면 기본 규칙의 대상 그룹에서 대상을 선택하고 리스터 구성에 지정된 포트에서 선택한 대상에 대한 TCP 연결을 열려고 시도합니다.

    고성능을 요구하는 환경에서의 부하 분산에 적합하고 낮은 레이턴시로 초당 수백만 건의 요청을 처리할 수 있으며 갑작스러운 트래픽 증대 및 변화에도 최적화 되어있습니다.

    EIP로 공인 IP를 고정할 수 있어 ALB와 달리 로드밸런서에 접근할 때 IP, DNS 모두 사용이 가능합니다.

     

    ALB (Application load balancer)

    OSI 7 계층인 어플리케이션 계층에서 작동하며 사용자와 직접 접하는 계층으로 어플리케이션 계층에는 HTTP/HTTPS 뿐만 아니라 FTP, DNS, Web socket 등 다양한 프로토콜이 지원됩니다.

    ALB는 단순 부하 분산 뿐만 아니라 HTTP/HTTPS의 헤더 정보, 경로, 포트를 이용해 대상 그룹을 판단하여 부하 분산을 할 수 있습니다.

     

    GWLB (Gateway load balancer)

    OSI 3계층인 네트워크 계층에서 작동하며 외부에서 유입되는 트래픽과 외부로 나가는 트래픽을 가상 어플라이언스로 라우팅할 수 있도록 해줍니다.

    728x90

    'Network' 카테고리의 다른 글

    HTTPS의 동작 원리  (0) 2024.01.27
    브라우저에 URL을 입력하면 어떤 동작을 하는가  (1) 2024.01.27
    [Network] NAT(Network address translation)  (0) 2023.09.13
    [Network] TCP와 UDP의 차이  (0) 2020.08.31
    [Network] TCP/IP란?  (0) 2020.08.14
Designed by Tistory.