

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Network Load Balancer 생성
<a name="create-network-load-balancer"></a>

Network Load Balancer는 클라이언트로부터 요청을 가져와서 EC2 인스턴스 같은 대상 그룹의 대상에 이를 분산합니다. 자세한 내용은 [Network Load Balancer 개요](introduction.md#network-load-balancer-overview) 단원을 참조하십시오.

**Topics**
+ [사전 조건](#load-balancer-prereqs)
+ [로드 밸런서 생성](#create-load-balancer)
+ [로드 밸런서 테스트](#test-load-balancer)
+ [다음 단계](#create-load-balancer-next-steps)

## 사전 조건
<a name="load-balancer-prereqs"></a>
+ 애플리케이션이 지원할 가용 영역 및 IP 주소 유형을 결정합니다. 이러한 각 가용 영역에 서브넷을 구성해 로드 밸런서 VPC를 구성합니다. 애플리케이션이 IPv4 및 IPv6 트래픽을 모두 지원하는 경우 서브넷에 IPv4 및 IPv6 CIDR이 모두 구성되어 있는지 확인합니다. 각 가용 영역에 하나 이상의 대상을 배포합니다.
+ 대상 인스턴스의 보안 그룹이 리스너 포트에서 클라이언트 IP 주소(대상이 인스턴스 ID로 지정된 경우) 또는 로드 밸런서 노드(대상이 IP 주소로 지정된 경우)에서의 트래픽을 허용해야 합니다. 자세한 내용은 [대상 보안 그룹](target-group-register-targets.md#target-security-groups) 단원을 참조하십시오.
+ 대상 인스턴스의 보안 그룹은 상태 확인 프로토콜을 사용해 상태 확인 포트에서 로드 밸런서의 트래픽을 허용해야 합니다.
+ 로드 밸런서에 정적 IP 주소를 제공할 계획이라면, 각 탄력적 IP 주소가 Amazon의 IPv4 주소 풀에서 온 것이며 로드 밸런서와 동일한 네트워크 경계 그룹을 갖는지 확인하십시오.
+ QUIC 또는 TCP\$1QUIC 리스너를 활용할 계획이라면 Network Load Balancer가 `ipv4` 주소 유형을 사용하고 연결된 보안 그룹이 없는지 확인하세요.

## 로드 밸런서 생성
<a name="create-load-balancer"></a>

Network Load Balancer 생성의 일부로 로드 밸런서, 최소한 하나의 리스너, 최소한 하나의 대상 그룹을 생성하게 됩니다. 활성화된 각 가용 영역에 정상 등록 대상이 하나 이상 있는 경우 로드 밸런서는 클라이언트 요청을 처리할 준비가 완료된 것입니다.

------
#### [ Console ]

**Network Load Balancer를 생성하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **로드 밸런서**를 클릭합니다.

1. **로드 밸런서 생성**을 선택하세요.

1. **Network Load Balancer**에서 [**생성(Create)**]을 선택합니다.

1. **기본 구성**

   1. **로드 밸런서 이름**에 Network Load Balancer의 이름을 입력합니다. 이 이름은 리전에 대한 로드 밸런서 집합 내에서 고유해야 합니다. 최대 32자여야 하며 영숫자 및 하이픈만 포함할 수 있습니다. 하이픈 또는 `internal-`(으)로 시작하거나 끝나서는 안 됩니다.

   1. **구성표**에서 **internet-facing** 또는 **internal**을 선택합니다. 인터넷 연결 Network Load Balancer는 인터넷을 통해 클라이언트의 요청을 대상으로 라우팅합니다. 내부 Network Load Balancer는 프라이빗 IP 주소를 사용하여 요청을 대상으로 라우팅합니다.

   1. **로드 밸런서 IP 주소 유형**에서 클라이언트가 IPv4 주소를 사용하여 Network Load Balancer와 통신하는 경우 **IPv4**를 선택하고, 클라이언트가 IPv4 및 IPv6 주소를 둘 다 사용하여 Network Load Balancer와 통신하는 경우 **듀얼스택**을 선택합니다.

1. **네트워크 매핑**

   1. **VPC**에서 로드 밸런서를 위해 준비한 VPC를 선택합니다. 인터넷 경계 로드 밸런서를 사용하면 인터넷 게이트웨이가 있는 VPC만 선택할 수 있습니다.

   1. 듀얼스택 로드 밸런서를 사용하는 경우, **IPv6 소스 NAT 접두사 활성화**가 **켜짐(서브넷별 소스 NAT 접두사)**이(가) 아닌 한 UDP 리스너를 추가할 수 없습니다.

   1. **가용 영역 및 서브넷**의 경우, 최소한 하나의 가용 영역을 선택하고 영역당 하나의 서브넷을 선택하세요. 공유받은 서브넷은 선택 가능합니다.

      여러 가용 영역을 선택하고 각 선택된 영역에 등록된 대상이 있는지 확인하면 애플리케이션의 내결함성이 증가합니다.

   1. 인터넷 경계 로드 밸런서의 경우, 각 가용 영역에 대해 탄력적인 IP 주소를 선택할 수 있습니다. 그러면 로드 밸런서에 고정 IP 주소가 제공됩니다.

      내부 로드 밸런서를 사용하면 각 서브넷의 주소 범위에서 프라이빗 IPv4 주소를 입력하거나가 자동으로 프라이빗 IPv4 주소를 AWS 선택하도록 할 수 있습니다.

      듀얼스택 로드 밸런서를 사용하면 각 서브넷의 주소 범위에서 IPv6 주소를 입력하거나가 자동으로 IPv6 주소를 AWS 선택하도록 할 수 있습니다.

      소스 NAT가 활성화된 로드 밸런서의 경우 사용자 지정 IPv6 접두사를 입력하거나가 자동으로 AWS 하나를 선택하도록 할 수 있습니다.

1. **보안 그룹**

   로드 밸런서 VPC의 기본 보안 그룹을 미리 선택합니다. 필요에 따라 추가적인 보안 그룹을 선택할 수 있습니다. 요구에 맞는 보안 그룹이 없는 경우 **새로운 보안 그룹 생성**을 선택하여 새로 생성합니다. 자세한 내용을 알아보려면 Amazon VPC 사용 설명서**의 [보안 그룹 생성](https://docs.aws.amazon.com/vpc/latest/userguide/creating-security-groups.html)을 참조하세요.
**주의**  
지금 보안 그룹을 Network Load Balancer와 연결하지 않으면 나중에 연결할 수 없습니다.
**주의**  
QUIC 또는 TCP\$1QUIC 리스너를 활용하려면 Network Load Balancer에 보안 그룹이 없어야 합니다.

1. **리스너 및 라우팅**

   1. 기본값은 포트 80에서 TCP 트래픽을 수락하는 리스너입니다. 기본 리스너 설정을 그대로 두거나 필요에 따라 **프로토콜** 또는 **포트**를 변경합니다.

   1. **기본 작업**에서 트래픽을 전달할 대상 그룹을 선택합니다.

      다른 대상 그룹을 추가하려면 **대상 그룹 추가**를 선택하고 필요에 따라 가중치를 업데이트합니다.

      요구에 맞는 대상 그룹이 없는 경우 **대상 그룹 생성**을 선택하여 새로 생성합니다. 자세한 내용은 [대상 그룹 생성](create-target-group.md) 단원을 참조하십시오.

   1. (선택 사항) **리스너 태그 추가**를 선택하고 태그 키와 태그 값을 입력합니다.

   1. (선택 사항) **리스너 추가**를 선택하여 다른 리스너(예: TLS 리스너)를 추가합니다.

1. **보안 리스너 설정**

   이 섹션은 TLS 리스너를 추가한 경우에만 표시됩니다.

   1. **보안 정책**의 경우 요구 사항을 충족하는 보안 정책을 선택합니다. 자세한 내용은 [보안 정책](describe-ssl-policies.md) 단원을 참조하십시오.

   1. **기본 SSL/TLS 서버 인증서**의 경우, 인증서 소스로 **ACM에서**를 선택하십시오. AWS Certificate Manager을(를) 사용하여 프로비저닝하거나 가져온 인증서를 선택하십시오. ACM에 사용 가능한 인증서는 없지만 로드 밸런서에 사용할 인증서가 있는 경우 **인증서 가져오기**를 선택하고 필요한 정보를 제공합니다. 그렇지 않으면, **새 ACM 인증서 요청**을 선택합니다. 자세한 내용은 *AWS Certificate Manager 사용 설명서*.의 [AWS Certificate Manager 인증서](https://docs.aws.amazon.com/acm/latest/userguide/gs.html)를 참조하세요.

   1. (선택 사항) **ALPN 정책**의 경우, ALPN을 활성화할 정책을 선택하십시오.. 자세한 내용은 [ALPN 정책](load-balancer-listeners.md#alpn-policies) 단원을 참조하십시오.

1. **로드 밸런서 태그**

   (선택 사항) **로드 밸런서 태그**를 확장합니다. (선택 사항) **새 태그 추가**를 선택하고 태그 키와 태그 값을 입력합니다. 자세한 내용은 [태그](load-balancer-tags.md)를 참조하세요.

1. **요약**

   구성을 검토하고 **로드 밸런서 생성**을 선택합니다. 생성 중에 Network Load Balancer에 몇 가지 기본 특성이 적용됩니다. Network Load Balancer를 생성한 후 이를 보고 편집할 수 있습니다. 자세한 내용은 [로드 밸런서 속성](network-load-balancers.md#load-balancer-attributes) 단원을 참조하십시오.

------
#### [ AWS CLI ]

**Network Load Balancer를 생성하려면**  
[create-load-balancer](https://docs.aws.amazon.com/cli/latest/reference/elbv2/create-load-balancer.html) 명령을 사용합니다.

다음 예제에서는 가용 영역 두 개를 활성화하고 보안 그룹을 포함한 인터넷 경계 로드 밸런서를 생성합니다.

```
aws elbv2 create-load-balancer \
    --name my-load-balancer \
    --type network \
    --subnets subnet-1234567890abcdef0 subnet-0abcdef1234567890 \
    --security-groups sg-1111222233334444
```

**내부 Network Load Balancer를 생성하려면**  
다음 예제와 같이 `--scheme` 옵션을 포함합니다.

```
aws elbv2 create-load-balancer \
    --name my-load-balancer \
    --type network \
    --scheme internal \
    --subnets subnet-1234567890abcdef0 subnet-0abcdef1234567890 \
    --security-groups sg-1111222233334444
```

**듀얼스택 Network Load Balancer를 생성하려면**  
다음 예제와 같이 `--ip-address-type` 옵션을 포함합니다.

```
aws elbv2 create-load-balancer \
    --name my-load-balancer \
    --type network \
    --ip-address-type dualstack \
    --subnets subnet-1234567890abcdef0 subnet-0abcdef1234567890 \
    --security-groups sg-1111222233334444
```

**리스너를 추가하려면**  
[create-listener](https://docs.aws.amazon.com/cli/latest/reference/elbv2/create-listener.html) 명령을 사용합니다. 예시는 [리스너 생성](create-listener.md) 섹션을 참조하세요.

------
#### [ CloudFormation ]

**Network Load Balancer를 생성하려면**  
[AWS::ElasticLoadBalancingV2::LoadBalancer](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-elasticloadbalancingv2-loadbalancer.html) 유형의 리소스를 정의합니다.

```
Resources:
  myLoadBalancer:
    Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer'
    Properties:
      Name: my-nlb
      Type: network
      Scheme: internal
      IpAddressType: dualstack
      Subnets: 
        - !Ref subnet-AZ1
        - !Ref subnet-AZ2
      SecurityGroups: 
        - !Ref mySecurityGroup
      Tags:  
        - Key: 'department'
          Value: '123'
```

**리스너를 추가하려면**  
[AWS::ElasticLoadBalancingV2::Listener](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-elasticloadbalancingv2-listener.html) 유형의 리소스를 정의합니다. 예시는 [리스너 생성](create-listener.md) 섹션을 참조하세요.

------

## 로드 밸런서 테스트
<a name="test-load-balancer"></a>

Network Load Balancer를 생성한 후, EC2 인스턴스가 초기 상태 확인을 통과했는지 확인한 다음 Network Load Balancer가 EC2 인스턴스로 트래픽을 전송하고 있는지 검사할 수 있습니다. Network Load Balancer를 삭제하려면 [Network Load Balancer 삭제](load-balancer-delete.md) 섹션을 참조하세요.

**Network Load Balancer를 테스트하려면**

1. Network Load Balancer가 생성된 후 **닫기**를 선택합니다.

1. 탐색 창에서 **대상 그룹**을 선택합니다.

1. 새로운 대상 그룹을 선택합니다.

1. **대상**를 선택하고 인스턴스가 준비되었는지 확인합니다. 인스턴스 상태가 `initial`인 경우 아직 인스턴스 등록이 진행 중이거나 정상으로 간주될 만한 최소 상태 확인 횟수를 통과하지 못했기 때문일 가능성이 높습니다. 하나 이상의 인스턴스 상태가 정상이어야 Network Load Balancer를 테스트할 수 있습니다. 자세한 내용은 [대상 상태](target-group-health-checks.md#target-health-states) 단원을 참조하십시오.

1. 탐색 창에서 **로드 밸런서**를 클릭합니다.

1. 새 Network Load Balancer를 선택합니다.

1. Network Load Balancer의 DNS 이름(예: my-load-balancer-1234567890abcdef.elb.us-east-2.amazonaws.com)을 복사합니다. DNS 이름을 인터넷에 연결된 웹 브라우저의 주소 필드에 붙여 넣습니다. 모든 것이 잘 작동하는 경우 브라우저에 서버 기본 페이지가 표시됩니다.

## 다음 단계
<a name="create-load-balancer-next-steps"></a>

로드 밸런서를 생성한 후 다음을 수행할 수 있습니다.
+ [로드 밸런서 속성](edit-load-balancer-attributes.md)을 구성합니다.
+ [대상 그룹 속성](edit-target-group-attributes.md)을 구성합니다.
+ [TLS 리스너] [선택적 인증서 목록](listener-update-certificates.md#add-certificates)에 인증서를 추가합니다.
+ [모니터링 기능](load-balancer-monitoring.md)을 구성합니다.