NLB(Network Load Balancer)

김보영·2023년 4월 9일
0

AWS

목록 보기
18/34

NLB 개요

AWS NLB(Network Load Balancer)는 AWS에서 제공하는 고성능 및 초고속 로드 밸런서입니다. NLB는 클라우드 환경에서 실행되는 애플리케이션의 트래픽을 다수의 서버 인스턴스로 분산 처리하여, 성능과 가용성을 향상시키는 데 도움을 줍니다.

NLB의 주요 특징

  1. 고성능 및 낮은 대기 시간: NLB는 초당 수백만 개의 연결 요청을 처리할 수 있는 높은 처리량을 제공하며, 낮은 대기 시간을 보장합니다.

  2. 대규모 동시 사용자 처리: 수백만 명의 동시 사용자를 처리하는 데 적합하며, 대규모 사용자 기반의 애플리케이션에 이상적입니다.

  3. 고정 IP 주소 할당: 고정 IP 주소를 사용하여 사용자가 쉽게 접속할 수 있는 서비스를 제공할 수 있습니다.

  4. Source IP Preservation: 클라이언트의 실제 IP 주소를 전달하여 서버가 클라이언트의 위치를 인식하게 할 수 있습니다.

  5. 확장성: 자동 확장 기능을 통해 트래픽 변화에 따라 자동으로 리소스를 조절할 수 있습니다.

  6. 다양한 리스너 프로토콜 지원: TCP, TCP/UDP, UDP, TLS 등의 프로토콜을 사용할 수 있는 리스너를 지원합니다.

  7. SSL/TLS 인증서 지원: 데이터 전송 보안을 위해 TLS 프로토콜을 사용할 경우, SSL/TLS 인증서를 적용할 수 있습니다. 인증서는 ACM(AWS Certificate Manager)를 사용하거나 클라이언트 인증서를 사용하여 관리할 수 있습니다.

NLB는 ALB와 달리 탄력적 IP(Elastic IP)를 사용할 수 있으며, 각 가용 영역당 1개의 탄력적 IP를 사용할 수 있습니다.

NLB를 사용한 온라인 게임 서비스

인기 있는 온라인 게임 서비스를 제공하는 회사가 있습니다. 이 회사는 수백만 명의 동시 사용자를 처리할 수 있는 서버 인프라를 구축하고자 합니다. 이를 위해 AWS NLB를 사용해 게임 서버에 로드 밸런싱을 적용하려고 합니다.

  1. AWS에서 여러 게임 서버 인스턴스를 생성하고, 이들 인스턴스는 사용자들의 게임 세션 요청을 처리할 것입니다.

  2. AWS NLB를 생성하고, 게임 서버 인스턴스들을 등록합니다. 이렇게 하면 NLB가 여러 게임 서버 인스턴스로부터 들어오는 요청을 분산 처리할 수 있습니다.

  3. 이 회사의 게임은 UDP 프로토콜을 사용하므로, NLB 리스너를 설정할 때 UDP 프로토콜을 선택합니다. 이렇게 하면 NLB는 UDP 요청을 게임 서버 인스턴스로 전달할 수 있습니다.

  4. 회사는 고정 IP 주소를 사용하여 사용자들이 게임 서버에 쉽게 접속할 수 있도록 합니다.

  5. 회사는 Source IP Preservation 기능을 사용하여 클라이언트 IP 주소를 전달함으로써, 게임 서버가 사용자의 IP 주소를 인식하게 합니다. 이를 통해 서버는 사용자별로 통계를 수집하거나 문제 발생시 적절한 조치를 취할 수 있습니다.

0개의 댓글