AWS Load Balancer 종류 ALB, NLB, GWLB 비교 분석

2025-12-21 · Uncategorized · 읽는데 11분

AWS Load Balancer 종류 ALB, NLB, GWLB 비교 분석
AWS의 Elastic Load Balancer(ELB)는 애플리케이션 트래픽을 여러 대상에 자동으로 분산하여 안정적인 서버 환경을 구축하는 데 큰 도움을 주는 서비스입니다. AWS의 다양한 서비스와 연계하여 부하를 분산할 수 있는 ELB는 Classic Load Balancer(CLB), Application Load Balancer(ALB), Network Load Balancer(NLB), Gateway Load Balancer(GWLB) 등 네 가지 주요 유형으로 나뉩니다.

본 글에서는 이 네 가지 로드 밸런서의 기능과 특징을 비교 분석해 보겠습니다.

썸네일

ELB의 기본 개념과 역할

ELB 기본 개념

ELB는 여러 EC2 인스턴스에 대한 하나의 엔드포인트를 제공하여 사용자가 요청을 보낼 때, 실제 요청이 처리되는 백엔드 인스턴스에 대한 고려 없이 동일한 주소로 요청을 전송할 수 있게 합니다. ELB는 단순한 부하 분산 기능 외에도 헬스 체크, 고정 세션, SSL Offload, 다운 서버 제외 등의 기능을 제공합니다.

이러한 기능들은 고가용성과 안정성을 제공하는 데 필수적입니다.

로드 밸런싱의 역할

로드 밸런싱은 네트워크 기술의 일종으로, 여러 서버 또는 저장 장치에 작업을 분산시켜 부하를 고르게 나누는 것을 의미합니다. 이는 서버에 과도한 부하가 걸리지 않도록 하여 서비스 중단 현상을 예방하고, 클라이언트 사용자의 요청을 적절히 분산하여 처리할 수 있도록 합니다.

ELB는 이러한 로드 밸런싱 기술을 활용하여 다양한 AWS 서비스와 연계하여 운영됩니다.

기능 설명
부하 분산 여러 인스턴스에 트래픽을 고르게 분산
헬스 체크 인스턴스의 상태를 점검하여 비정상적인 인스턴스 제외
고정 세션 특정 인스턴스에 사용자 세션 고정
SSL Offload SSL 암호화 및 복호화를 로드 밸런서에서 처리

Classic Load Balancer (CLB)

로드 밸런싱 기술

Classic Load Balancer는 AWS의 초기 로드 밸런서로, 가장 기본적인 형태의 부하 분산 기능을 제공합니다. CLB는 TCP 및 HTTP/HTTPS 프로토콜을 지원하며, 서버의 기본 주소가 변경되면 새로운 로드 밸런서를 생성해야 한다는 단점이 있습니다.

또한, 하나의 주소에 하나의 대상 그룹으로만 트래픽을 보낼 수 있어 유연성이 떨어집니다.

CLB의 특징과 한계

CLB는 간단한 부하 분산 기능 외에도 SSL Offload와 헬스 체크 기능을 제공하지만, HTTP 헤더나 요청의 내용을 기반으로 한 트래픽 분산이 불가능합니다. 이로 인해 복잡한 아키텍처에서는 관리 비용이 증가할 수 있습니다.

현재는 ALB와 NLB가 더 많이 사용되고 있으며, CLB는 레거시로 분류되고 있습니다.

특징 설명
프로토콜 지원 TCP 및 HTTP/HTTPS
유연성 하나의 주소에 하나의 대상 그룹만 지원
SSL Offload 지원 SSL 암호화 및 복호화 가능
현재 사용 빈도 ALB 및 NLB에 비해 낮음

다른 내용도 보러가기 #1

Application Load Balancer (ALB)

부하 분산 기능

Application Load Balancer는 OSI 7 Layer에서 최상단의 Application Layer를 다루는 로드 밸런서입니다. ALB는 HTTP/HTTPS의 헤더 정보를 이용하여 요청을 지능적으로 라우팅할 수 있는 기능을 제공하여, 사용자가 특정 경로로 요청을 보냈을 때 해당 경로에 맞는 대상 그룹으로 트래픽을 분산할 수 있습니다.

ALB의 장점과 기능

ALB는 단순한 부하 분산 기능을 넘어 HTTP 헤더, 요청 메서드, 경로 등에 기반하여 스마트하게 요청을 분산합니다. 이를 통해 비용을 절감하고 리소스의 효율적인 활용이 가능합니다.

ALB는 또한 Lambda 함수와 같은 서버리스 아키텍처와의 통합이 용이하여 마이크로서비스 아키텍처에 적합합니다.

기능 설명
경로 기반 라우팅 요청의 경로에 따라 다른 대상 그룹으로 분산
HTTP/2 지원 브라우저의 페이지 로딩 시간을 개선
SSL Offload 지원 SSL 암호화 및 복호화를 대신 처리
Lambda 통합 서버리스 아키텍처와의 통합 용이

Network Load Balancer (NLB)

헬스 체크 기능

Network Load Balancer는 OSI 4 Layer에서 Transport Layer를 다루는 로드 밸런서로, TCP 및 UDP를 사용하는 요청을 처리하는 데 최적화되어 있습니다. NLB는 높은 성능을 요구하는 환경에서 부하 분산이 필요할 때 적합합니다.

NLB의 특징과 장점

NLB의 가장 큰 장점은 EIP(Elastic IP)를 통해 고정 IP 주소를 제공할 수 있다는 점입니다. 이를 통해 공인 IP와 DNS 모두를 사용할 수 있으며, 낮은 레이턴시로 초당 수백만 건의 요청을 처리할 수 있습니다.

NLB는 ALB에 비해 성능은 뛰어나지만, HTTP 헤더를 해석하지 못하기 때문에 단순한 라우팅이 필요한 경우에 적합합니다.

특징 설명
프로토콜 지원 TCP 및 UDP
고정 IP 지원 EIP를 통해 고정 IP 주소 가능
성능 낮은 레이턴시로 초당 수백만 건의 요청 처리 가능
HTTP 헤더 해석 불가 단순한 라우팅이 필요한 경우에 적합

Gateway Load Balancer (GWLB)

Gateway Load Balancer는 OSI 3 Layer에서 네트워크 계층을 다루는 로드 밸런서로, 방화벽, 침입 탐지 및 방지 시스템과 같은 가상 어플라이언스를 배포하고 관리하는 데 사용됩니다. GWLB는 트래픽을 EC2에 도달하기 전에 검사하거나 인증하는 작업을 수행하는 데 최적화되어 있습니다.

GWLB의 기능과 활용 사례

GWLB는 트래픽을 검사하고 분석하여 보안 및 인증을 수행하기 위한 서비스로, 고가용성과 보안을 함께 고려해야 하는 환경에서 유용합니다. 이 로드 밸런서는 일반적인 부하 분산 역할과는 다르기 때문에, 특정한 보안 요구 사항을 가진 시스템에 적합합니다.

기능 설명
네트워크 계층 지원 OSI 3 Layer에서 작동
보안 기능 방화벽, 침입 탐지 및 인증 기능 제공
트래픽 검사 EC2에 도달하기 전에 트래픽 검사 가능
고가용성 보안과 고가용성을 동시에 제공

다른 내용도 보러가기 #2

결론

AWS의 ELB는 다양한 요구 사항에 맞춰 여러 종류의 로드 밸런서를 제공하여, 효율적이고 안정적인 클라우드 환경을 구축하는 데 큰 기여를 하고 있습니다. 각 로드 밸런서의 특성과 기능을 알아보고, 필요에 맞는 로드 밸런서를 선택함으로써, 성능과 비용 효율성을 동시에 고려한 최적의 클라우드 아키텍처를 설계할 수 있습니다.

ELB의 각 유형은 다양한 상황에 따라 유기적으로 연동되어, 클라우드 서비스를 더욱 안정적이고 효율적으로 운영할 수 있도록 돕습니다.

관련 영상

같이 보면 좋은 글