[고가용성 및 스케일링성] Network Load Balancer (NLB) 개요

IMKUNYOUNG·2024년 8월 8일
0

AWS-SAA

목록 보기
31/91

네트워크 로드 밸런서(Network Load Balancer, NLB)는 고성능 애플리케이션 배포에 필수적인 서비스로, AWS에서 제공하는 주요 로드 밸런서 유형 중 하나입니다. NLB는 높은 트래픽을 처리할 수 있는 능력과 함께, 고정 IP 주소를 통해 안정적인 네트워크 연결을 보장합니다. 이 글에서는 NLB의 주요 특성과 활용 방안을 살펴보겠습니다.

네트워크 로드 밸런서(NLB)의 주요 특징

NLB의 가장 두드러진 특징 중 하나는 가용 영역(Availability Zone, AZ)별로 하나의 고정 IP를 제공한다는 점입니다. 이는 애플리케이션을 배포할 때 고정된 IP 주소를 필요로 하는 경우 매우 유용합니다. 특히, 탄력적 IP(Elastic IP)를 각 AZ에 할당하여 여러 개의 고정 IP를 사용할 수 있어, 1~3개의 IP 주소로만 액세스할 수 있는 애플리케이션을 구축할 때 유리합니다.

또한, NLB는 TCP와 UDP 트래픽을 모두 지원하며, 이러한 프로토콜을 사용하는 고성능 애플리케이션에 최적화되어 있습니다. 이와 더불어 정적 IP 주소를 제공하므로, IP 주소가 변하지 않아야 하는 환경에서도 이상적인 선택입니다.

네트워크 로드 밸런서의 작동 방식

NLB의 작동 방식은 AWS의 애플리케이션 로드 밸런서(Application Load Balancer, ALB)와 유사합니다. 대상 그룹(Target Group)을 생성하면, NLB는 이 대상 그룹으로 트래픽을 리다이렉트합니다. 대상 그룹은 EC2 인스턴스 또는 IP 주소를 등록할 수 있습니다. IP 주소를 등록하는 경우, 해당 IP 주소는 반드시 하드코딩된 프라이빗 IP여야 합니다.

이 프라이빗 IP는 AWS 내부 네트워크뿐만 아니라 자체 데이터 센터의 서버에 있는 IP도 사용할 수 있습니다. 따라서, 동일한 NLB를 사용하여 AWS의 EC2 인스턴스와 자체 데이터 센터의 서버를 동시에 관리할 수 있는 유연성을 제공합니다.

NLB와 ALB의 조합

NLB는 ALB와 함께 사용하여 더욱 강력한 애플리케이션 아키텍처를 구현할 수 있습니다. NLB는 고정 IP 주소를 제공하고, ALB는 HTTP 또는 HTTPS 트래픽을 처리하는 규칙을 설정할 수 있습니다. 이러한 조합은 다양한 요구사항을 충족시키는 데 유용하며, 특정 상황에서 이상적인 솔루션이 될 수 있습니다.

예를 들어, NLB를 ALB 앞에 배치하여 고정 IP 주소를 제공하고, 이후 ALB가 HTTP 트래픽을 처리하는 방식으로 설정할 수 있습니다. 이를 통해 사용자는 고정된 IP 주소로 접속하면서도 다양한 HTTP 규칙을 활용한 트래픽 관리를 할 수 있습니다.

NLB 대상 그룹의 상태 확인

마지막으로 중요한 점은 NLB의 대상 그룹이 수행하는 '상태 확인(Health Check)'입니다. NLB는 TPC, HTTP, HTTPS 프로토콜을 지원하는 상태 확인 기능을 제공합니다. 만약 백엔드 애플리케이션이 HTTP나 HTTPS를 지원한다면, 해당 프로토콜을 기반으로 상태 확인을 정의하여 애플리케이션의 가용성을 보장할 수 있습니다.

마치며

네트워크 로드 밸런서는 고정 IP 주소와 고성능 트래픽 처리 능력을 필요로 하는 애플리케이션에 최적화된 솔루션입니다. TCP, UDP 정적 IP와 같은 요구사항이 있을 때 NLB를 선택하는 것이 현명한 선택이 될 수 있습니다. 다만, NLB는 AWS 프리 티어에 포함되지 않으므로, 사용 전에 비용을 고려하는 것이 좋습니다.

0개의 댓글