AWS

AWS nlb와 alb를 같이 쓰는 이유

나쁜천사1004 2024. 6. 20. 16:43

NLB(Network Load Balancer)와 ALB(Application Load Balancer)를 함께 사용하는 이유는 각 로드 밸런서의 강점을 결합하여 더 나은 성능, 유연성, 및 보안을 제공하기 위해서입니다. NLB와 ALB를 함께 사용하는 주요 이유는 다음과 같습니다:

  1. 성능 최적화:
    • NLB: 초당 많은 양의 요청을 처리하고, 매우 낮은 레이턴시를 제공하며, TCP 및 UDP 트래픽을 직접 처리할 수 있습니다.
    • ALB: HTTP 및 HTTPS 트래픽을 처리하며, 고급 라우팅 기능을 제공하여 요청을 특정 백엔드 서비스나 마이크로서비스로 라우팅할 수 있습니다.
  2. 보안:
    • NLB는 VPC 내부의 IP 주소로만 접근을 허용하는 등의 네트워크 레벨 보안을 강화할 수 있습니다.
    • ALB는 HTTPS 트래픽의 종단점을 처리하고, 웹 애플리케이션 방화벽(WAF)과 통합하여 애플리케이션 레벨 보안을 강화할 수 있습니다.
  3. 유연성:
    • NLB: 낮은 레이턴시와 높은 처리량이 필요한 트래픽에 적합합니다. 주로 데이터베이스 또는 비동기적 작업 처리에 사용됩니다.
    • ALB: HTTP/S 레이어에서의 로드 밸런싱과 고급 라우팅 기능이 필요한 웹 애플리케이션에 적합합니다.
  4. 고가용성 및 이중화:
    • 두 로드 밸런서를 함께 사용하면 한쪽 로드 밸런서에 문제가 발생하더라도 다른 로드 밸런서가 트래픽을 처리할 수 있어 고가용성과 이중화가 보장됩니다.
  5. 서로 다른 트래픽 유형 처리:
    • NLB는 주로 TCP/UDP 트래픽을 처리하고, ALB는 HTTP/HTTPS 트래픽을 처리하여 각기 다른 유형의 트래픽을 최적화된 방식으로 처리할 수 있습니다.

사용 예시:

  • NLB + ALB 조합: 내부적으로는 NLB를 사용하여 데이터베이스와 같은 높은 성능을 요구하는 서비스에 대한 트래픽을 처리하고, 외부 트래픽은 ALB를 사용하여 웹 애플리케이션으로 라우팅합니다.
  • 마이크로서비스 아키텍처: ALB를 사용하여 마이크로서비스로 트래픽을 라우팅하고, 특정 마이크로서비스 간의 통신에는 NLB를 사용하여 낮은 레이턴시와 높은 처리량을 보장합니다.

이렇게 NLB와 ALB를 함께 사용함으로써, 다양한 요구사항을 만족시키고, 시스템의 성능과 보안을 최적화할 수 있습니다.

반응형