Site icon 지락문화예술공작단

신규 Network Load Balancer 출시 – 초당 수백만 요청을 처리 확장성 제공

신규 Network Load Balancer 출시 – 초당 수백만 요청을 처리 확장성 제공

ELB (Elastic Load Balancing)Auto ScalingAmazon CloudWatch 등 3종 세트는 AWS 초기 부터 매우 중요한 부분입니다. 그 이후로 많은 기능이 추가하였고, 컨테이너에서 실행되는 응용 프로그램에 응용 프로그램 수준의 콘텐츠 기반 라우팅을 지원하도록 설계된 Application Load Balancer는 마이크로서비스, 스트리밍 및 실시간 서비스 등에 최적화되어 있습니다.

오랫 동안 AWS 고객은 ELB를 사용하여 T2 인스턴스에서 실행하는 단순한 웹 사이트에서부터 다수의 고급 인스턴스에서 실행되는 복잡 애플리케이션에 이르기까지 다양한 규모의 서비스에 활용하여 방대한 양의 트래픽을 처리 할 수 있었습니다. ELB는 배후에서 트래픽을 모니터링하고, 수요에 맞게 자동으로 확장합니다. 이는 수년 동안 더 빠르고 반응이 빨라졌으며 ELB를 사용한 온라인 생중계, 깜짝 판매 이벤트 등의 이벤트성 서비스에도 잘 동작합니다. 그러나, 리전 간 순간적인 페일 오버 또는 극히 까다로운 워크 로드와 같은 일부 상황에서 트래픽 급상승을 예상하는 경우 ELB를 사전에 미리 설정해 두고(pre-warm)으로 제공하는 옵션을 제공했습니다.

신규 네트워크 로드 밸런서 출시
네트워크 로드 밸런서 (NLB)를 새롭게 소개합니다. 본 서비스는 낮은 대기 시간에 높은 처리량을 유지하면서 초당 수천만 건의 요청을 처리 할 수 있도록 설계되었습니다. NLB는 대상 그룹에 대해 완전히 API 호환 가능한 ALB입니다. 아래는 주요 기능을 소개합니다.

Network Load Balancer 만들기
EC2 콘솔에 가면, 새로운 Load Balancers항목에서 Create Load Balancer를 클릭합니다.

네트워크 로드 밸런서를 선택하고 만들기를 클릭 한 다음 세부 정보를 입력합니다. 대상 VPC의 각 서브넷에 대해 Elastic IP 주소를 선택할 수 있으며, 태그를 지정할 수 있습니다.

그런 다음 라우팅 구성을 클릭하고 새 대상 그룹(Target Group)을 만듭니다. 이름을 입력 한 다음 프로토콜과 포트를 선택합니다. 트래픽 포트와 상태 확인 방법을 설정할 수 있습니다.

Register Targets를 눌러 EC2 인스턴스를 설정 한 후, Add to registered:를 클릭합니다.

모든 것이 잘 설정 되었으면, Create를 선택합니다.

신규 로드 밸런서가 완료 되면 몇 분 후 provisioning에서 active로 바뀝니다.

테스트 목적으로 콘솔에서 Load Balancer의 DNS 이름을 가져옵니다 (실제로는 Amazon Route 53 와 좀 더 친숙한 이름을 사용합니다.)

이제 대량 트래픽을 한번 보내 볼 때입니다.

Bash
$ while true;
> do
>   wget http://nlb-1-6386cc6bf24701af.elb.us-west-2.amazonaws.com/phpinfo2.php &
> done

몇 가지 트래픽 흐름을 허용하기 위해, CloudWatch 지표를 확인하면 갑작 스러운 트래픽을 잘 처리 할 수 ​​있음을 확인했습니다.

또한, EC2 인스턴스를 보고 부하가 어떻게 작동하는지 확인했습니다.

AWS 개발팀에서 위의 것 보다 더 나은 테스트를 해 보았고, 수백 대의 EC2 인스턴스로 클러스터에서 초당 150 만 건의 요청을 시작으로 신속하게 초당 300만 건의 요청과 총 대역폭의 30Gbps를 달성했습니다.

Load Balancer 선택하기
로드 밸런서를 선택할 때, 여러분의 애플리케이션 요구 사항을 고려해야합니다. 다음은 몇 가지 지침입니다.

좀 더 자세한 사항은 Elastic Load Balancer 세부 정보 테이블을 살펴 보시기 바랍니다.

현재 Classic Load Balancer를 사용 중이고 Network Load Balancer로 마이그레이션하려면 Load Balancer Copy Utility를 살펴보십시오. 이 Python 도구를 사용하면 기존의 Classic Load Balancer와 동일한 구성으로 NLB를 만들 수 있습니다. 기존로드 밸런서를 사용하여 기존 EC2 인스턴스를 등록 할 수도 있습니다.

가격 및 가용 방법
Application Load Balancer와 마찬가지로 가격 책정은 Load Balancer Capacity Unit 또는 LCU를 기본으로합니다. 청구액은 다음 측정 기준에서 가장 높은 값을 기준으로 한 LCU 당 0.006 달러입니다.

대부분의 애플리케이션은 대역폭에 따라 달라 지고, 기존의 ALB와 비교할 때 약 25%의 비용 절감 (로드 균형 조정)이 있습니다. 네트워크로드 밸런서는 현재 China (Beijing)를 제외한 AWS CloudFormation, Auto ScalingAmazon ECS에서 지원되는 모든 AWS 상용 리전에서 사용할 수 있습니다.

Jeff;

이 글은 New Network Load Balancer – Effortless Scaling to Millions of Requests per Second의 한국어 번역입니다.

Source: 신규 Network Load Balancer 출시 – 초당 수백만 요청을 처리 확장성 제공

Exit mobile version