Network Load Balancer 뒤에 Application Load Balancer를 등록하려면 어떻게 해야 합니까?

4분 분량
0

Application Load Balancer에 사용할 고정 IP 주소가 필요합니다. Network Load Balancer 뒤에 Application Load Balancer를 등록하려고 합니다.

간략한 설명

Application Load Balancer에는 고정 IP 주소를 할당할 수 없습니다. Application Load Balancer에 고정 IP 주소가 필요한 경우 Network Load Balancer 뒤에 등록하는 것이 가장 좋습니다. Network Load Balancer에 할당된 고정 IP 주소는 변경되지 않으며 Application Load Balancer에 대한 고정 진입점을 제공합니다.

참고: 다음 해결 방법은 Amazon Elastic Compute Cloud(Amazon EC2) 콘솔의 새로운 실행 환경을 사용합니다. 다음 해결 단계를 완료하려면 Amazon EC2 콘솔에서 이 기능을 사용 설정합니다.

해결 방법

Amazon EC2 콘솔

Amazon EC2 콘솔을 사용하여 새 대상 그룹을 생성하고 Application Load Balancer를 대상으로 등록합니다. 그런 다음 Application Load Balancer로 트래픽을 전달하도록 Network Load Balancer를 생성하고 구성합니다.

TCP 80 및 TCP 443 트래픽에 대한 새 대상 그룹을 생성하고 Application Load Balancer를 대상으로 등록

새 대상 그룹을 만들고 EC2 인스턴스에 대한 대상을 등록하려면 다음 단계를 완료합니다.

  1. Amazon EC2 콘솔을 엽니다.
  2. 탐색 창에서 로드 밸런싱을 확장하고 대상 그룹을 선택합니다.
  3. 대상 그룹 생성을 선택합니다.
  4. 대상 유형 선택에서 Application Load Balancer를 선택합니다.
  5. 대상 그룹 이름에 대상 그룹의 이름을 입력합니다.
  6. 프로토콜에서 TCP를 선택합니다. 포트에서 HTTP 트래픽에 대해 80을 선택합니다.
  7. VPC에서 Application Load Balancer의 가상 프라이빗 클라우드(VPC)를 선택합니다.
  8. 상태 확인 프로토콜에서 HTTP 200-399 상태를 반환하는 Application Load Balancer에 대해 HTTP 또는 HTTPS 중 하나를 선택합니다.
  9. 다음을 선택합니다.
  10. ** Application Load Balancer**에서 Application Load Balancer를 선택합니다.
  11. 대상 그룹 생성을 선택합니다.
  12. 3~11단계를 반복하여 추가 대상 그룹을 생성합니다. 6단계를 반복할 때 프로토콜 TCP와 포트 443을 선택하여 HTTPS 트래픽에 대한 다른 대상 그룹을 생성합니다.

HTTP 및 HTTPS 트래픽을 Application Load Balancer로 전달하도록 Application Load Balancer를 생성하고 구성

Application Load Balancer에 HTTP 및 HTTPS 트래픽을 전달하도록 Network Load Balancer를 생성하고 구성하려면 다음 단계를 완료하세요.

  1. Amazon EC2 콘솔을 엽니다.
  2. 탐색 창에서 로드 밸런싱을 확장하고 로드 밸런서를 선택합니다.
  3. 로드 밸런서 생성을 선택합니다.
  4. 로드밸런서 유형에서 Network Load Balancer를 선택한 후 생성을 선택합니다.
  5. 로드 밸런서 이름에 Network Load Balancer의 이름을 입력합니다.
  6. 체계에서 인터넷 연결 또는 내부 중 하나를 선택합니다. 내부 Application Load Balancer를 인터넷 연결 Network Load Balancer와 함께 사용할 수 있습니다.
  7. IP 주소 유형에서 IPv4를 선택합니다.
  8. VPC에서는 VPC를 선택합니다.
  9. 매핑에서 가용 영역 및 서브넷을 하나 이상 선택합니다. 내부 로드 밸런서의 경우 프라이빗 서브넷을 선택하고 인터넷 연결 로드밸런서의 경우 공용 서브넷을 선택합니다.
  10. IPv4 주소에 대해 AWS에서 할당 또는 탄력적 IP 주소 사용 중 하나를 선택합니다.
  11. 프로토콜에서 TCP를 선택합니다. 포트에서 HTTP 트래픽에 대해 80을 선택합니다.
  12. 기본 동작에서 Application Load Balancer가 등록된 대상으로 포함된 대상 그룹을 선택합니다.
  13. 리스너 추가를 선택한 후 11~12단계를 반복합니다. Application Load Balancer의 TCP 443 대상 그룹으로 트래픽을 전달하는 기본 작업에는 프로토콜 TCP 및 포트 443을 선택합니다.
  14. 로드 밸런서 생성을 선택합니다.
  15. 로드 밸런서를 테스트합니다.
    참고: 이 구성으로 Application Load Balancer에서 HTTP-HTTPS 리디렉션을 사용하려면 대상 그룹을 두 개 만들어야 합니다. TCP 80용 Application Load Balancer 대상 그룹을 하나 만들고 TCP 443용 대상 그룹을 하나 만듭니다.
    Network Load Balancer의 프라이빗 IP 주소에서 상태 확인을 허용하도록 Application Load Balancer의 보안 그룹 및 네트워크 액세스 제어 목록(네트워크 ACL)을 구성합니다.

AWS CLI

참고: AWS Command Line Interface(AWS CLI) 명령 실행 시 오류가 발생하는 경우, AWS CLI 오류 문제 해결을 참고하세요. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하세요.

AWS CLI를 사용하여 Network Load Balancer 뒤에 Application Load Balancer를 등록하려면 다음 단계를 완료합니다.

  1. 새 대상 그룹을 생성하고 alb 대상 유형을 사용합니다.
    aws elbv2 create-target-group \
    --name <name> \
    --protocol TCP \
    --port <port> \
    --target-type alb \
    --vpc-id <vpc_id>
    참고: name을 대상 그룹의 이름으로, port를 포트 번호로, vpc_id을 VPC ID로 바꿉니다.
  2. Application Load Balancer를 대상 그룹에 등록합니다.
    aws elbv2 register-targets \
    --target-group-arn <tg_arn from previous command> \
    --targets Id=<alb_arn>
    참고: 이전 명령의 tg_arn을 대상 그룹의 ARN으로 바꾸고 alb_arn을 Application Load Balancer ARN으로 바꿉니다.
  3. Network Load Balancer를 생성합니다.
    aws elbv2 create-load-balancer \
    --name <nlb name> \
    --type network \
    --scheme internal \
    --subnets <subnet_ids>
    참고: nlb_name을 Network Load Balancer의 이름으로 바꾸고 subnet_ids를 서브넷 ID로 바꿉니다.
  4. 리스너를 생성합니다.
    aws elbv2 create-listener --load-balancer-arn ${nlb1_arn} \
    --protocol TCP --port <port> \
    --default-actions Type=forward,TargetGroupArn=<target group>

관련 정보

AWS Lambda를 사용하여 Application Load Balancer의 고정 IP 주소 활성화

Application Load Balancer가 Network Load Balancer와 통합되어 AWS PrivateLink 및 고정 IP 주소 사용 가능