Network Load Balancer 시작하기 - Elastic Load Balancing

Network Load Balancer 시작하기

이 자습서에서는 웹 기반 인터페이스인 AWS Management Console을 통해 네트워크 로드 밸런서에 대한 실습을 제공합니다. 첫 번째 Network Load Balancer를 생성하려면 다음 단계를 완료하세요.

일반적인 로드 밸런서 구성에 대한 데모는 Elastic Load Balancing 데모를 참조하세요.

시작하기 전에

  • EC2 인스턴스에 대해 사용할 가용 영역을 결정합니다. 각 가용 영역에 있는 하나 이상의 퍼블릭 서브넷으로 VPC(Virtual Private Cloud)를 구성합니다. 이 퍼블릭 서브넷은 로드 밸런서를 구성하는데 사용됩니다. 대신 이러한 가용 영역의 다른 서브넷에서 EC2 인스턴스를 시작할 수 있습니다.

  • 각 가용 영역에서 하나 이상의 EC2 인스턴스를 시작합니다. 이러한 인스턴스에 대한 보안 그룹이 리스너 포트에서 클라이언트로부터의 TCP 액세스와 VPC의 상태 확인 요청을 허용하는지 확인합니다. 자세한 정보는 대상 보안 그룹을 참조하십시오.

1단계: 대상 그룹 구성

라우팅 요청에서 사용되는 대상 그룹을 만듭니다. 리스너의 규칙은 이 대상 그룹에 등록된 대상으로 요청을 라우팅합니다. 로드 밸런서는 해당 대상 그룹에 대해 정의된 상태 확인 설정을 사용하여 이 대상 그룹의 대상 상태를 확인합니다.

대상 그룹을 구성하려면

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

  2. 탐색 창의 Load Balancing 아래에서 Target Groups를 선택합니다.

  3. [Create target group]을 선택합니다.

  4. 대상 유형(Target type)을 인스턴스로 유지합니다.

  5. [대상 그룹 이름(Target group name)]에 새 대상 그룹의 이름을 입력합니다.

  6. 프로토콜(Protocol)을 HTTP로, 포트(Port)를 80으로 유지합니다.

  7. 사용자 인스턴스를 포함하는 VPC를 선택합니다. 프로토콜 버전을 HTTP1로 유지합니다.

  8. Health checks(상태 확인)에는 기본 설정을 그대로 둡니다.

  9. 다음을 선택합니다.

  10. 대상 등록(Register Targets) 페이지에서 다음 단계를 완료합니다. 이 단계는 대상 그룹을 만드는 선택적 단계입니다. 그러나 로드 밸런서를 테스트하고 대상으로 트래픽을 라우팅하고 있는지 확인하려면 대상을 등록해야 합니다.

    1. 사용 가능한 인스턴스(Available instance)에서 인스턴스를 하나 이상 선택합니다.

    2. 기본 포트 80을 유지하고 아래에서 보류 중인 것으로 포함(Include as pending below)을 선택합니다.

  11. [Create target group]을 선택합니다.

2단계: 로드 밸런서 유형 선택

A: Elastic Load Balancing은 여러 유형의 로드 밸런서를 지원합니다. 이 자습서에서는 Network Load Balancer를 생성합니다.

Network Load Balancer를 생성하려면

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

  2. 탐색 모음에서 로드 밸런서의 리전을 선택합니다. EC2 인스턴스에 사용한 리전과 동일한 리전을 선택해야 합니다.

  3. 탐색 창의 Load Balancing에서 로드 밸런서를 선택합니다.

  4. 로드 밸런서 생성(Create Load Balancer)을 선택합니다.

  5. Network Load Balancer에 대해 [생성(Create)]을 선택합니다.

3단계: 로드 밸런서 및 리스너 구성

Network Load Balancer를 생성하려면 먼저 이름, 구성표 및 IP 주소 유형과 같은 로드 밸런서에 대한 기본 구성 정보를 제공해야 합니다. 그런 다음 네트워크와 하나 이상의 리스너에 대한 정보를 제공합니다. 리스너는 연결 요청을 확인하는 프로세스입니다. 클라이언트와 로드 밸런서 간의 연결을 위한 프로토콜 및 포트로 구성됩니다. 지원되는 프로토콜 및 포트에 대한 자세한 내용은 리스너 구성 단원을 참조하십시오.

로드 밸런서 및 리스너를 구성하려면

  1. 로드 밸런서 이름(Load Balancer name)에 로드 밸런서의 이름을 입력합니다. 예: my-nlb.

  2. [Scheme] 및 [IP address type]은 기본값으로 유지합니다.

  3. 네트워크 매핑에서 EC2 인스턴스에 사용한 VPC를 선택합니다. EC2 인스턴스를 시작할 때 사용한 각 가용 영역에서 가용 영역을 선택한 후 해당 가용 영역에 대한 하나의 퍼블릭 서브넷을 선택합니다.

    기본적으로 AWS는 가용 영역에 대한 서브넷의 각 로드 밸런서 노드에 IPv4 주소를 할당합니다. 또는 인터넷 경계 로드 밸런서를 생성하는 경우 각 가용 영역에 대해 탄력적인 IP 주소를 선택할 수 있습니다. 그러면 로드 밸런서에 고정 IP 주소가 제공됩니다.

  4. 리스너 및 라우팅에 대해 기본 프로토콜과 포트를 유지하고 목록에서 대상 그룹을 선택합니다. 포트 80에서 TCP 트래픽을 수락하고 기본으로 선택한 대상 그룹에 트래픽을 전달하는 리스너를 구성합니다.

  5. 기본 작업에 대해 1단계에서 생성하고 등록한 대상 그룹을 선택합니다.

  6. 선택적 태그를 추가하여 로드 밸런서를 분류합니다. 태그 키는 각 로드 밸런서에 대해 고유해야 합니다. 허용되는 문자는 문자, 공백, 숫자(UTF-8 형식) 및 특수 문자 + - = . _ : / @입니다. 선행 또는 후행 공백을 사용하면 안 됩니다. 태그 값은 대소문자를 구분합니다.

  7. 구성을 검토하고 로드 밸런서 생성(Create load balancer)을 선택합니다. 생성 중에 로드 밸런서에 몇 가지 기본 특성이 적용됩니다. 로드 밸런서를 생성한 후 이를 보고 편집할 수 있습니다. 자세한 내용은 로드 밸런서 속성 섹션을 참조하세요.

4단계: 로드 밸런서 테스트

로드 밸런서를 생성한 후에는 EC2 인스턴스에 트래픽을 전송하고 있는지 확인할 수 있습니다.

로드 밸런서를 테스트하려면

  1. 로드 밸런서가 생성되었다는 통보를 받은 후 [Close]를 선택합니다.

  2. 탐색 창의 Load Balancing 아래에서 Target Groups를 선택합니다.

  3. 새로 생성한 대상 그룹을 선택합니다.

  4. [Targets]를 선택하고 인스턴스가 준비되었는지 확인합니다. 인스턴스 상태가 initial인 경우 아직 인스턴스 등록이 진행 중이거나 정상으로 간주될 만한 최소 상태 확인 횟수를 통과하지 못했기 때문일 가능성이 높습니다. 하나 이상의 인스턴스 상태가healthy여야 로드 밸런서를 테스트할 수 있습니다.

  5. 탐색 창의 Load Balancing에서 로드 밸런서를 선택합니다.

  6. 새로 생성한 로드 밸런서를 선택합니다.

  7. [설명(Description)]을 선택하고, 로드 밸런서의 DNS 이름(예: my-load-balancer-1234567890abcdef.elb.us-east-2.amazonaws.com)을 복사합니다. DNS 이름을 인터넷에 연결된 웹 브라우저의 주소 필드에 붙여넣습니다. 모든 것이 잘 작동하는 경우 브라우저에 서버 기본 페이지가 표시됩니다.

5단계: (선택 사항) 로드 밸런서 삭제

로드 밸런서를 사용할 수 있는 순간부터 실행이 지속되는 매 시간 단위 또는 60분 미만의 시간 단위로 비용이 청구됩니다. 더 이상 로드 밸런서가 필요 없을 때는 이를 삭제할 수 있습니다. 로드 밸런서가 삭제되면 그 즉시 요금 발생이 중지됩니다. 로드 밸런서를 삭제해도 로드 밸런서에 등록된 대상에는 영향을 미치지 않습니다. 예를 들어 EC2 인스턴스는 계속 실행됩니다.

로드 밸런서를 삭제하려면

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

  2. 탐색 창의 Load Balancing에서 로드 밸런서를 선택합니다.

  3. 로드 밸런서를 선택한 다음 [Actions], [Delete]를 차례로 선택합니다.

  4. 확인 메시지가 나타나면 Yes, Delete(예, 삭제합니다)를 선택합니다.