AWS(Amazon Web Service)

[AWS] NLB (AWS의 관리형 로드 밸런서 中)

yunseohhe 2024. 9. 29. 14:20

NLB(Network Load Balancer) 

  • L4(4층) 로드 밸런서이므로 TCP와 UDP 트래픽을 다룰 수 있다. (HTTP를 다루는 L7보다 하위 계층이다.)
  • NLB의 성능은 매우 높다.(=고성능)
      : 초당 수백만  건의 요청을 처리할 수 있고, ALB에 비해 지연 시간도 짧다.
        (ALB는 400밀리초지만 NLB는 100밀리초이다.)
  • 가용 영역별로 하나의 고정(정적) IP를 가질 수 있고 탄력적 IP 주소를 각 AZ에 할당할 수 있다.
      : 여러 개의 고정 IP를 가진 애플리케이션을 노출할 때 유용하다
        (1~3개의 IP로만 액세스할 수 있는 애플리케이션을 만들 수 있다.)

(출처 : 구글이미지)

  • ALB의 작동 방식과 유사하다.
  • 대상 그룹을 생성하면 NLB가 대상그룹을 리다이렉트한다.
  • 백엔드, 프론트엔드 모두 TCP 트래픽을 사용하거나 백엔드에서는 HTTP를, 프론트엔드에서는 TCP 또는 UDP 트래픽을 EC2 인스턴스로 리다이렉트 할 수 있다는 뜻이다.

 

 

Target Groups(대상 그룹)

  • NLB 대상 그룹이 수행하는 '상태확인'은 세가지 프로토콜을 지원한다.
     - TCP 프로토콜
     - HTTP 프로토콜
     - HTTPS 프로토콜

(출처 : 구글이미지)

  •  첫 번째 이미지처럼 EC 인스턴스는 대상 그룹이 될 수 있다.
     = NLB가 TCP 또는 UDP 트래픽을 EC2 인스턴스로 리다이렉트 할 수 있다는 뜻이다.
  • 두 번째 이미지처럼 IP 주소를 등록할 수도 있는데 IP 주소는 반드시 하드코딩되어야 하고, 프라이빗 IP여야 한다.
      - 이유가 뭘까? 
         : 자체 EC2 인스턴스의 프라이빗 IP를 보낼 수도 있지만, 자체 데이터 센터 서버의 프라이빗 IP를 사용할 수도 있다. 이미지 가운데와 같이 둘다 같은 NLB를 앞에 사용할 수 있다.
  • 세 번째 이미지처럼 ALB 앞에 NLB를 사용할 수도 있다.
      - 이유가 뭘까?
         : NLB 덕분에 고정 IP주소를 얻을 수 있고, ALB 덕분에 HTTP 유형의 트래픽을 처리하는 규칙을 얻을 수 있다.