고정 IP를 지원하는 Network Load Balancer(ELB) 발표
다루는 내용
· Network Load Balancer 주요 특징
· ELB 기능 비교표 (ALB/NLB/CLB)
· NLB 모니터링 항목
· 기타 참고
Network Load Balancer 주요 특징
Key Feature
Network Load Balancer(이하 NLB)는 L4 레이어에서 동작하는 신규 ELB 서비스로, Reverse Proxy 방식으로 동작하는 기존 Application Load Balancer(이하 ALB) 및 Classic Load Balancer(이하 CLB)와는 차별점을 가지며, 아래와 같은 주요 특징을 갖고 있습니다.
1) Static IP 지원
- 각 AZ-Subnet 당 1개의 Elastic IP 할당 가능, 해당 IP값은 불변
- 서비스 도메인에서 ELB의 DNS Name이 아닌 A레코드 형식으로 NLB의 Elastic IP 주소를 정의해서 사용 가능
2) Pre-warm 불필요
- Spike성 트래픽이 발생할 경우에도 ELB 노드의 사전 Scaling 작업 불필요
- Reverse Proxy 방식의 ALB/CLB와 달리 리턴 트래픽은 ELB가 관여하지 않는 형태
- 기본적으로 초당 수백만 이상의 요청을 처리할 수 있도록 구성되어 있음
3) Client 요청 헤더 보존
- Client 요청 헤더값을 LB단에서 변경하지 않음
- Client 요청이 백엔드에 전달될 때 Client IP 그대로 들어오므로 X-Forwarded-for 등의 부가 헤더 불필요
- NLB 앞단에는 Security Group을 배치할 수 없으며, 따라서 관련 방화벽 정책은 백엔드의 Security Group단에서 제어해야 함
4) Connection 유지
- 수개월, 수년간 동일한 TCP Connection 유지 가능
동작 방식 비교
Internet-facing 구성시 유의사항
NLB의 Target Group)에 매핑된 EC2가 인터넷 구간에서 요청하는 Client에 반드시 도달할 수 있는 구조여야 합니다.
Client에서 ELB를 바라보는 주소의 차이
ELB 기능 비교표
ALB / NLB / CLB
NLB 모니터링 항목
Cloudwatch: AWS/NetworkELB (Namespace)
기타 참고
Limit
FAQ
Q: ELB의 Listener 설정시 TCP 프로토콜만 지원하나요?
A: 네, NLB는 오직 TCP 프로토콜만 설정 가능합니다.
Q: NLB 앞단에 Security Group을 설정할 수 없나요?
A: 설정할 수 없습니다. NLB 특성상 Client IP가 백엔드에 직접 전달되므로 백엔드 계층에서 방화벽 정책을 제어해야 합니다.
Q: NLB가 생성되면, 해당 ELB 노드의 Private IP를 확인할 수 있나요?
A: 네, 가능합니다. ENI 목록에서 ELB 노드의 Private IP를 확인할 수 있습니다.
Q: 각 VPC Subnet에 할당된 ELB노드에 하나 이상의 EIP를 할당할 수 있나요?
A: 불가능합니다. AZ 단위로 각각 단 하나의 EIP만 할당할 수 있습니다.
Q: NLB는 Internal 방식의 ELB로 지원하나요?
A: 지원합니다.
Price
※ 2017.09, Seoul Region 기준
Link
1) User Guide: http://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html
2) What’s New: https://aws.amazon.com/ko/about-aws/whats-new/2017/09/announcing-network-load-balancer-for-elastic-load-balancing/
3) AWS Blog: https://aws.amazon.com/blogs/aws/new-network-load-balancer-effortless-scaling-to-millions-of-requests-per-second/
최신 댓글