AWS WAF, AWS Firewall Manager 및 AWS Shield Advanced
개발자 가이드 (API 버전 2015-08-24)

2단계: Elastic Load Balancing을 사용하여 트래픽 조정

Elastic Load Balancing은 애플리케이션 계층 공격에 대한 보호를 강화합니다. Elastic Load Balancing은 트래픽을 여러 Amazon EC2 인스턴스로 분산합니다. SSL 협상은 (이 자습서에서 나중에 설명)와 함께 을 사용하여 로드 밸런서 및 CloudFront 엣지 서버에서 처리되어 SSL 기반 공격으로부터 Amazon EC2 인스턴스를 보호합니다.

중요

이 자습서에서 실행하는 AWS 서비스에 대한 비용은 여러분이 지불해야 합니다. Elastic Load Balancing 비용에 대한 전체 내용은 Elastic Load Balancing 요금 페이지 단원을 참조하십시오.

시작하기 전

이 자습서에서 앞서 시작한 Amazon EC2 인스턴스는 Active 상태여야 합니다.

로드 밸런서 생성

다음으로 트래픽을 Amazon EC2 인스턴스 두 개로 자동 라우팅하는 로드 밸런서를 구성합니다.

로드 밸런서를 생성하려면

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

  2. 탐색 모음에서 EC2 인스턴스에 대해 선택한 것과 동일한 리전을 선택합니다.

  3. 탐색 창의 [LOAD BALANCING] 아래에서 [Target Groups]를 선택합니다.

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

  5. 대상 그룹에 대한 이름, 프로토콜, 포트 및 VPC를 지정한 다음, [Create]를 선택합니다. 이 자습서에서는 다음 값을 사용합니다.

    • Name: MyWebServers

    • Protocol: HTTP

    • Port: 80

    • Target type: 인스턴스

    • VPC: EC2 인스턴스가 포함된 VPC

    • 다른 설정은 유지

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

  7. [Targets] 탭에서 [Edit]를 선택합니다.

  8. [Instances]에서 이 자습서에서 앞서 만든 인스턴스를 모두 선택합니다. [Add to registered]를 선택한 후 [Save]를 선택합니다.

    인스턴스가 등록되고 상태 확인을 통과할 때까지 인스턴스의 상태는 initial이고, 로드 밸런서에서 트래픽을 수신하도록 대상 그룹을 구성할 때까지는 unused입니다.

  9. 탐색 창의 LOAD BALANCING에서 로드 밸런서를 선택합니다.

  10. [Create Load Balancer]를 선택합니다.

  11. [Select load balancer type]에서 [Application Load Balancer]를 선택합니다.

  12. Create를 선택합니다.

  13. 다음과 같이 Configure Load Balancer 페이지를 완료합니다.

    1. Name에 로드 밸런서 이름을 입력합니다.

    2. [Scheme]에서 [ Internet-facing]을 선택합니다. 인터넷 연결 로드 밸런서는 인터넷을 통해 클라이언트의 요청을 대상으로 라우팅합니다. 내부 로드 밸런서는 프라이빗 IP 주소를 사용하여 요청을 대상으로 라우팅합니다.

    3. Listeners에서 기본값은 포트 80에서 HTTP 트래픽을 수락하는 리스너입니다.

    4. [Availability Zones]에서 EC2 인스턴스에 사용한 VPC를 선택합니다. 최소 두 개의 가용 영역을 선택합니다. 가용 영역에 대해 서브넷 한 개가 있는 경우 해당 서브넷이 선택됩니다. 가용 영역에 대해 서브넷이 두 개 이상 있는 경우 서브넷 중 하나를 선택합니다. 가용 영역당 서브넷 한 개만 선택할 수 있습니다.

    5. 다음: 보안 설정 구성을 선택합니다.

  14. 이제 보안 리스너 그룹 생성에 대한 메시지를 무시합니다. 다음: 보안 그룹 구성을 선택합니다.

  15. 다음과 같이 [Configure Security Groups] 페이지를 완료합니다.

    1. [Create a new security group]을 선택합니다.

    2. 보안 그룹의 이름과 설명을 입력하거나 기본 이름과 설명을 유지합니다. 이 새 보안 그룹에는 [Configure Load Balancer] 페이지에서 로드 밸런서에 대해 선택한 포트로 트래픽을 허용하는 규칙이 포함되어 있습니다.

    3. [Next: Configure Routing]을 선택합니다.

  16. 다음과 같이 [Configure Routing] 페이지를 완료합니다.

    1. [Target group]에서 [Existing target group]을 선택합니다.

    2. [Name]에서 앞서 만든 보안 그룹을 선택합니다.

    3. 다음: 대상 등록을 선택합니다.

  17. [Register Targets] 페이지에서 대상 그룹에 등록한 인스턴스가 [Registered instances] 아래에 표시됩니다. 마법사를 완료할 때까지 대상 그룹에 등록된 대상을 변경할 수 없습니다. [Next: Review]를 선택합니다.

  18. [Review] 페이지에서 [Create]을 선택합니다.

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

로드 밸런서 테스트

이제 로드 밸런서의 DNS 이름을 사용하여 웹 사이트를 볼 수 있을 것입니다.

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

  1. Amazon EC2 콘솔의 탐색 창에서 로드 밸런서를 선택합니다.

  2. 로드 밸런서 옆의 상자를 선택합니다.

  3. 세부 정보 창의 [DNS name]을 적어 둡니다.

  4. 웹 브라우저에 이 주소를 입력합니다. 그러면 해당 웹 사이트로 이동할 것입니다.

중요

웹 사이트를 변경한 경우 두 EC2 인스턴스도 똑같이 변경해야 합니다. 로드 밸런서가 두 인스턴스의 콘텐츠를 처리할 수 있으므로 두 인스턴스가 동일해야 합니다.

다음: 3단계: Amazon CloudFront를 사용하여 성능을 향상하고 공격의 영향을 완화.