Search

ALB Ingress vs NLB Ingress vs Service

ALB vs NLB vs Service LoadBalancer 비교

구분
ALB (Ingress)
NLB (Ingress)
Service (type=LoadBalancer)
Layer
L7 (HTTP/HTTPS)
L4 (TCP/UDP)
보통 L4 (클라우드 벤더 로드밸런서)
특징
경로 기반 라우팅 (/api, /web) 가능, 호스트 기반 라우팅 가능, SSL 종료 지원
초고성능, 저지연 TCP/UDP 처리, 대규모 트래픽 분산에 강함
단순히 Pod 앞에 클라우드 로드밸런서 생성
사용 사례
웹서비스 (프론트/백 API 분기), 멀티 도메인, SSL 관리
게임 서버, 금융권, IoT 같이 초저지연 TCP 필요
간단한 단일 서비스 외부 공개
Service 타입
Service는 ClusterIP, ALB가 앞단에서 라우팅
Service는 ClusterIP, NLB가 앞단에서 트래픽 전달
Service를 LoadBalancer로 지정
장점
하나의 ALB로 여러 서비스 관리 (비용↓), HTTP 레벨 라우팅
네트워크 성능 최적화, 대규모 트래픽 처리
설정 간단, 바로 외부 IP 제공
단점
L7만 지원 → TCP/UDP 불가
HTTP 기능 부족 (경로 라우팅 불가), 비용↑
서비스마다 LB가 따로 생겨 비용↑, 라우팅 불가

정리

ALB (Ingress): 웹서비스, API Gateway 느낌 → 경로/호스트 기반 라우팅, SSL 관리 최적. —> ex) front + back을 같이 운영하는 웹서비스
NLB (Ingress): TCP/UDP 기반 고성능 로드밸런서 → 네트워크 성능이 중요한 서비스에 최적 —> ex) 금융 서비스나 TCP 기반의 채팅서버
Service type=LoadBalancer: 단일 서비스 빠르게 외부 공개할 때 가장 간단 —> 테스트 환경에서 하나만 외부에 빨리 띄워야 할 경우