본문 바로가기
AWS/EC2

AWS Load Balancer 완벽 가이드 - ALB, NLB 선택 기준 및 아키텍처 특징 비교

by drinkdog 2025. 2. 1.
반응형
AWS 공식 블로그와 문서를 기반으로 각 로드밸런서의 선택 기준을 상세히 분석해보았습니다.

1. Application Load Balancer (ALB) 선택 기준

1-1. 애플리케이션 트래픽 특성

  • HTTP/HTTPS 웹 애플리케이션
  • 마이크로서비스 아키텍처
  • 컨테이너 기반 애플리케이션
  • WebSocket 애플리케이션

1-2. 고급 라우팅 요구사항

  • URL 경로 기반 라우팅
  • 호스트 기반 라우팅
  • Query 문자열/헤더 기반 라우팅
  • AWS Lambda 함수를 타겟으로 지정 가능

1-3. 보안 요구사항

  • HTTPS 설정
  • 사용자 인증 통합
  • WAF(Web Application Firewall) 통합

1-4. 모니터링 및 로깅

  • 상세한 액세스 로그
  • CloudWatch 메트릭스 통합
  • X-Forwarded-For 헤더를 통한 클라이언트 IP 추적

2. Network Load Balancer (NLB) 선택 기준

2-1. 성능 요구사항

  • 초당 수백만 개의 요청 처리 필요
  • 매우 낮은 지연 시간 요구 (휘발성 게임 서버, 실시간 통신)
  • 갑작스러운 트래픽 스파이크 처리 필요
  • 장기 실행 연결 처리 (TCP/UDP)

2-2. 네트워크 요구사항

  • TCP/UDP 프로토콜 지원 필요
  • 고정 IP 주소 필요
  • Elastic IP 지원 필요
  • PrivateLink 통합 필요
  • 클라이언트 IP 보존 필수

2-3. 특수한 사용 사례

  • IoT 디바이스 연결 (MQTT)
  • 게임 서버 (UDP)
  • 음성/영상 스트리밍
  • 금융 거래 시스템

2-4. 인프라 특성

  • 리전간 페일오버 필요
  • 정적 IP를 통한 DNS 관리 필요
  • VPC 엔드포인트 서비스 구성

3. 주요 성능 특성 비교

  ALB NLB
지연 시간 밀리초 단위 마이크로초 단위
처리량 초당 수만 개의 요청 초당 수백만 개의 요청
연결 유지 WebSocket 지원 TCP/UDP 장기 연결
프로토콜 HTTP/HTTPS/gRPC TCP/UDP/TLS

4. 실제 사용 시 고려사항

4-1. 보안 그룹 설정

  • ALB: HTTP/HTTPS 트래픽만 허용
  • NLB: TCP/UDP 포트 허용
  • 백엔드 서버: 로드밸런서의 보안그룹에서만 트래픽 허용
  • 단, 보안그룹 설정은 상황에 따라 달라질 수 있음

4-2. Health Check 설정

ALB NLB
HTTP/HTTPS 기반 상세 헬스체크 TCP 연결 성공 여부로만 판단
응답 본문 확인 가능 빠른 장애 감지 (10초 이내)
고급 라우팅 규칙과 연계 가능 연속 실패 횟수 기반 판단

4-3. SSL/TLS 처리

ALB NLB
인증서 관리 및 SSL 종료 TCP 패스스루로 SSL 처리
SNI(Server Name Indication) 지원 백엔드에서 SSL 종료 필요
보안 정책 선택 가능 TLS 버전 제어 제한적

4-4. 장애 복구 및 고가용성

ALB NLB
교차 영역 로드밸런싱 영역별 고정 IP 제공
영역 장애 시 자동 복구 빠른 장애 감지 및 복구
세션 고정 옵션 제공 Connection Draining 지원

 

** [Load Balancer NAT 동작 원리와 실습 가이드] - 참고

 

출처

https://aws.amazon.com/ko/elasticloadbalancing/

https://aws.amazon.com/ko/blogs/korea/new-network-load-balancer-effortless-scaling-to-millions-of-requests-per-second/

 

 

 

 

 

 

 

 

반응형