Network Load Balancers
Network Load Balancer는 클라이언트에 대한 단일 접점 역할을 수행합니다. 클라이언트는 Network Load Balancer에 요청을 전송하고 Network Load Balancer는 하나 이상의 가용 영역에 있는 EC2 인스턴스 같은 대상으로 이를 전송합니다.
Network Load Balancer를 구성하려는 경우, 대상 그룹을 생성한 다음 대상을 해당 대상 그룹에 등록합니다. 활성화된 각 가용 영역에 등록된 대상이 하나 이상 있는지 확인하는 경우에 Network Load Balancer가 가장 효과적입니다. 리스너를 생성하여 클라이언트의 연결 요청을 확인하고, 클라이언트에서 대상 그룹에 있는 대상으로 요청을 라우팅합니다.
Network Load Balancer는 VPC 피어링, AWS 관리형 VPN, AWS Direct Connect 및 타사 VPN 솔루션을 통해 클라이언트에서의 연결을 지원합니다.
목차
로드 밸런서 상태
Network Load Balancer는 다음 중 하나의 상태일 수 있습니다.
provisioning
-
Network Load Balancer를 설정하는 중입니다.
active
-
Network Load Balancer가 완전히 설정되어 트래픽을 라우팅할 준비가 되었습니다.
failed
-
Network Load Balancer를 설정할 수 없습니다.
IP 주소 유형
클라이언트에게 Network Load Balancer에 사용할 수 있도록 허용할 IP 주소 유형을 설정할 수 있습니다.
Network Load Balancer는 다음 IP 주소 유형을 지원합니다.
ipv4
-
클라이언트는 IPv4 주소(예: 192.0.2.1)를 사용하여 Network Load Balancer에 연결해야 합니다. IPv4 지원 Network Load Balancer(인터넷 연결 및 내부 모두)는 TCP, UDP, TCP_UDP 및 TLS 리스너를 지원합니다.
dualstack
-
클라이언트는 IPv4 주소(예: 192.0.2.1) 및 IPv6 주소(예: 2001:0db8:85a3:0:0:8a2e:0370:7334)를 사용하여 Network Load Balancer에 연결할 수 있습니다. 듀얼스택 지원 Network Load Balancer(인터넷 연결 및 내부 모두)는 TCP 및 TLS 리스너를 지원합니다.
고려 사항
-
Network Load Balancer는 대상 그룹의 IP 주소 유형에 따라 대상과 통신합니다.
-
Network Load Balancer에 대해 듀얼스택 모드를 활성화하면 Elastic Load Balancing에서 해당 Network Load Balancer의 AAA DNS 레코드를 제공합니다. IPv4 주소를 사용하여 Network Load Balancer와 통신하는 클라이언트는 A DNS 레코드를 확인합니다. IPv6 주소를 사용하여 Network Load Balancer와 통신하는 클라이언트는 AAA DNS 레코드를 확인합니다.
-
의도하지 않은 인터넷 액세스를 방지하기 위해 인터넷 게이트웨이를 통한 내부 듀얼스택 Network Load Balancer로의 액세스가 차단됩니다. 그러나 이 차단이 다른 인터넷 액세스(예: 피어링, Transit Gateway, AWS Direct Connect 또는 AWS VPN을 통한 액세스)를 방지하지는 않습니다.
-
IP 주소 유형에 대한 자세한 내용은 Network Load Balancer의 IP 주소 유형 업데이트 주제를 참조하세요.
연결 유휴 제한 시간
클라이언트가 Network Load Balancer를 통해 보내는 각 TCP 요청에 대해 해당 연결의 상태가 추적됩니다. 유휴 제한 시간보다 오래 클라이언트 또는 대상에 의한 연결을 통해 데이터가 전송되지 않으면 연결이 더 이상 추적되지 않습니다. 유휴 제한 시간이 지난 후 클라이언트 또는 대상에서 데이터를 보내면 연결이 더 이상 유효하지 않음을 나타내는 TCP RST 패킷이 클라이언트에 수신됩니다.
TCP 흐름의 기본 유휴 제한 시간 값은 350초이지만 60~6000초 사이의 값으로 업데이트할 수 있습니다. 클라이언트 또는 대상은 TCP keepalive 패킷을 사용하여 유휴 제한 시간을 재시작할 수 있습니다. TLS 연결을 유지하기 위해 전송된 Keepalive 패킷에는 데이터나 페이로드가 포함될 수 없습니다.
TLS 리스너가 클라이언트 또는 대상으로부터 TCP keepalive 패킷을 수신하면 로드 밸런서는 TCP keepalive 패킷을 생성하여 20초마다 프런트엔드 및 백엔드 연결 모두에 전송합니다. 이 동작은 수정할 수 없습니다.
UDP가 연결이 없는 동안 로드 밸런서는 소스 및 대상 IP 주소와 포트를 기반으로 UDP 흐름 상태를 유지합니다. 따라서 동일한 흐름에 속한 패킷이 일관되게 동일한 대상으로 전송됩니다. 유휴 시간 초과 기간이 지나면 로드 밸런서는 들어오는 UDP 패킷을 새 흐름으로 간주하여 새 대상으로 라우트합니다. Elastic Load Balancing은 UDP 흐름의 유휴 시간 초과 값을 120초로 설정합니다. 이것은 변경할 수 없습니다.
EC2 인스턴스는 반환 경로를 설정하기 위해 30초 이내에 새 요청에 응답해야 합니다.
자세한 내용은 유휴 제한 시간 업데이트 단원을 참조하십시오.
로드 밸런서 속성
속성을 편집하여 Network Load Balancer를 구성할 수 있습니다. 자세한 내용은 로드 밸런서 속성 변경 단원을 참조하십시오.
다음은 Network Load Balancer의 로드 밸런서 속성입니다.
access_logs.s3.enabled
-
Amazon S3의 액세스 로그를 저장할지 여부를 나타냅니다. 기본값은
false
입니다. access_logs.s3.bucket
-
액세스 로그에 대한 Amazon S3 버킷 이름입니다. 이 속성은 액세스 로그가 활성화된 경우에 필요합니다. 자세한 내용은 버킷 요구 사항 단원을 참조하세요.
access_logs.s3.prefix
-
Amazon S3 버킷의 위치에 대한 접두사입니다.
deletion_protection.enabled
-
삭제 방지 기능의 활성화 여부를 나타냅니다. 기본값은
false
입니다. ipv6.deny_all_igw_traffic
-
인터넷 게이트웨이를 통해 내부 Network Load Balancer에 대한 의도하지 않은 액세스가 발생하지 못하도록 Network Load Balancer에 대한 인터넷 게이트웨이(IGW) 액세스를 차단합니다. 인터넷 연결 Network Load Balancer에 대해서는
false
로, 내부 Network Load Balancer에 대해서는true
로 설정됩니다. 이 속성은 비 IGW 인터넷 액세스(예: 피어링, Transit Gateway, AWS Direct Connect 또는 AWS VPN을 통한 액세스)를 방지하지는 않습니다. load_balancing.cross_zone.enabled
-
교차 영역 로드 밸런싱의 활성화 여부를 나타냅니다. 기본값은
false
입니다. dns_record.client_routing_policy
-
Network Load Balancer 가용 영역 간에 트래픽이 분산되는 방식을 나타냅니다. 가능한 값은 영역 친화도가 100%인
availability_zone_affinity
, 영역 친화도가 85%인partial_availability_zone_affinity
, 영역 친화도가 0% 인any_availability_zone
입니다. zonal_shift.config.enabled
-
영역 전환이 활성화되었는지 여부를 나타냅니다. 기본값은
false
입니다.
교차 영역 로드 밸런싱
기본적으로 각 Network Load Balancer 노드는 해당 가용 영역의 등록된 대상에만 트래픽을 분산합니다. 교차 영역 로드 밸런싱을 켜면 각 Network Load Balancer 노드가 활성화된 모든 가용 영역에 있는 등록된 대상 간에 트래픽을 분산합니다. 대상 그룹 수준으로 교차 영역 로드 밸런싱을 켤 수도 있습니다. 자세한 내용은 대상 그룹에 대한 교차 영역 로드 밸런싱 및 Elastic Load Balancing 사용 설명서의 교차 영역 로드 밸런싱을 참조하세요.
DNS 이름
각 Network Load Balancer는 다음 구문을 사용하여 기본 DNS(도메인 이름 시스템)을 수신합니다. name
-id
.elb.region
.amazonaws.com. 예: my-load-balancer-1234567890abcdef.elb.us-east-2.amazonaws.com.
기억하기 쉬운 DNS 이름을 사용하는 것을 선호하는 경우, 사용자 지정 도메인 이름을 생성하고 이를 Network Load Balancer의 DNS 이름과 연결할 수 있습니다. 클라이언트가 이러한 사용자 지정 도메인 이름을 사용해 요청을 하면 DNS 서버는 이를 Network Load Balancer의 DNS 이름으로 해석합니다.
먼저 인증된 도메인 등록 대행자를 이용해 도메인 이름을 등록합니다. 다음으로 DNS 레코드를 생성하여 쿼리를 Network Load Balancer로 라우팅 요청을 하려면 도메인 등록 대행자와 같은 DNS 서비스를 사용하면 됩니다. 자세한 내용은 DNS 서비스에 대한 설명서를 참조하세요. 예를 들어 DNS 서비스로 Amazon Route 53을 사용하는 경우 Network Load Balancer를 지정하는 별칭 레코드를 생성합니다. 자세한 내용은 Amazon Route 53 개발자 안내서의 ELB 로드 밸런서로 트래픽 라우팅을 참조하세요.
Network Load Balancer는 활성화된 각 가용 영역에 대하여 하나의 IP 주소를 가집니다. 이는 Network Load Balancer 노드의 IP 주소입니다. Network Load Balancer의 DNS 이름은 이러한 주소로 확인됩니다. 예를 들어 Network Load Balancer의 사용자 지정 도메인 이름이 example.networkloadbalancer.com
이라고 가정해 보겠습니다. 다음 dig 또는 nslookup 명령을 사용하여 Network Load Balancer 노드의 IP 주소를 확인합니다.
Linux 또는 Mac
$
dig +short
example.networkloadbalancer.com
Windows
C:\>
nslookup
example.networkloadbalancer.com
Network Load Balancer는 노드를 위한 DNS 레코드를 가집니다. DNS 이름을 다음 구문과 함께 사용하여 Network Load Balancer 노드의 IP 주소를 확인할 수 있습니다. az
.name
-id
.elb.region
.amazonaws.com.
Linux 또는 Mac
$
dig +short
us-east-2b.my-load-balancer-1234567890abcdef.elb.us-east-2.amazonaws.com
Windows
C:\>
nslookup
us-east-2b.my-load-balancer-1234567890abcdef.elb.us-east-2.amazonaws.com
로드 밸런서 영역 상태
Network Load Balancer에는 활성화된 각 가용 영역별로 Route 53에 영역 DNS 레코드와 IP 주소가 있습니다. Network Load Balancer가 특정 가용 영역의 영역 상태 확인에 실패하면 해당 DNS 레코드가 Route 53에서 제거됩니다. 로드 밸런서 영역 상태는 Amazon CloudWatch ZonalHealthStatus
지표를 사용하여 모니터링되므로 장애 조치로 인해 예방 조치를 구현하여 최적의 애플리케이션 가용성을 보장하는 이벤트에 대한 더 많은 인사이트를 얻을 수 있습니다. 자세한 내용은 Network Load Balancer 지표 단원을 참조하십시오.
Network Load Balancer는 여러 가지 이유로 영역 상태 확인에 실패하여 비정상 상태가 될 수 있습니다. 영역 상태 확인 실패로 인한 비정상 Network Load Balancer의 일반적인 원인은 아래를 참조하세요.
다음 발생 가능 원인을 확인합니다.
-
로드 밸런서의 정상적인 대상이 없습니다.
-
정상적인 대상 수가 구성된 최소값보다 작습니다.
-
영역 전환 또는 영역 자동 전환이 진행 중입니다.
-
감지된 문제로 인해 트래픽이 정상적인 영역으로 자동 전환되고 있습니다.