Classic Load Balancer를 Application Load Balancer 또는 Network Load Balancer로 마이그레이션하고 싶습니다.
해결 방법
로드 밸런서 기능 비교
Classic Load Balancer를 마이그레이션하기 전에 Application Load Balancer와 Network Load Balancer의 기능을 비교하십시오. 자세한 내용은 Elastic Load Balancing 기능을 참조하십시오.
Application Load Balancer
Application Load Balancer에는 최소 두 개의 서브넷이 필요합니다. 로드 밸런서에 서브넷이 하나뿐인 경우 마이그레이션할 때 두 번째 서브넷을 지정하십시오.
기본적으로 Application Load Balancer에는 교차 영역 로드 밸런싱이 켜져 있습니다. 로드 밸런서 수준에서는 이 기능을 끌 수 있지만 대상 그룹 수준에서는 끌 수 없습니다.
Application Load Balancer는 로드 밸런서의 요청 리디렉션을 지원합니다. HTTP 리디렉션을 위해 Classic Load Balancer의 백엔드 연결을 구성한 경우 마이그레이션할 때 리디렉션을 끄거나 제거할 수 있습니다.
Network Load Balancer
Network Load Balancer의 교차 영역 로드 밸런싱을 로드 밸런서 수준에서 해제할 수 있습니다.
로드 밸런서를 생성할 때는 보안 그룹을 Network Load Balancer에 연결해야 합니다. 보안 그룹을 기존 Network Load Balancer에 연결할 수 없습니다. 트래픽을 제한하려면 대상과 연결된 보안 그룹을 사용하십시오. Network Load Balancer 수준의 경우 서브넷의 네트워크 액세스 제어 목록(네트워크 ACL)을 사용하여 트래픽을 제한합니다.
Classic Load Balancer를 Application Load Balancer 또는 Network Load Balancer로 마이그레이션
참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생하면 AWS CLI의 오류 해결을 참조하십시오. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하십시오.
Application Load Balancer 또는 Network Load Balancer를 생성하고 구성하려면 마이그레이션 마법사를 사용합니다. 새 로드 밸런서를 테스트하여 제대로 작동하는지 확인합니다. 그런 다음, Classic Load Balancer의 트래픽을 새 로드 밸런서로 수동으로 리디렉션하고 정책, 스크립트 및 코드를 업데이트합니다.
트래픽을 리디렉션한 후 Amazon Elastic Compute Cloud(Amazon EC2) 콘솔을 사용하여 이전 로드 밸런서를 삭제할 수 있습니다. 또는 delete-load-balancer AWS CLI 명령을 실행합니다.
로드 밸런서 마이그레이션 중 가동 중지 시간 문제 해결
로드 밸런서 마이그레이션 중 가동 중지 시간을 최소화하려면 프로덕션 트래픽을 이동하기 전에 새 로드 밸런서에 대해 테스트를 실행하십시오. 그 후 새 로드 밸런서가 트래픽 요청을 관리할 수 있는지 확인합니다.
트래픽을 새 로드 밸런서로 점진적으로 라우팅하려면 Amazon Route 53 가중치 기반 라우팅 정책을 사용하십시오. 새 로드 밸런서에 문제가 발생하면 트래픽 가중치에 0 값을 할당하십시오.
Route 53을 DNS 공급자로 사용하지 않는 경우 기존 로드 밸런서를 계속 실행하십시오. DNS 레코드가 캐시되지 않도록 기존 레코드의 TTL(Time To Live) 값을 0으로 줄입니다. 이전 TTL 값이 재설정될 때까지 기다린 다음, DNS 레코드가 새 로드 밸런서 DNS 이름을 가리키도록 합니다. 새 로드 밸런서에 문제가 있는 경우 DNS 레코드가 Classic Load Balancer의 DNS 이름을 가리키도록 하십시오. 문제를 해결한 후 TTL 값을 원래 값으로 되돌립니다.