Amazon Web Services 한국 블로그

AWS Application Load Balancers – 호스트 기반 라우팅 규칙 신규 기능 지원

작년에 AWS Application Load Balancer 출시하면서 HTTP 요청 URL의 경로를 기반으로 들어오는 HTTP 및 HTTPS 트래픽을 라우팅 설정 방법을 소개하였습니다. 이러한  경로 기반 라우팅을 사용하여  /api로 들어오는 요청 모두를 /mobile이라는 다른 서버로 라우팅할 수 있습니다. 이러한 방식으로 트래픽을 분류하면 각 요청 카테고리에 대한 처리 환경을 제어 할 수 있습니다. 예를 들어, /api 요청은 컴퓨팅 작업을 위한 인스턴스에서 처리하고, /mobile 요청은 메모리 기반 인스턴스에서 처리할 수 있습니다.

호스트 기반 라우팅 및 기타 규칙
오늘은 추가적인 라우팅 옵션을 소개해 드리고자 합니다. 오늘 부터 호스트 헤더에 지정된 도메인 이름을 기반으로 들어오는 트래픽을 라우팅하는 Application Load Balancer 규칙을 만들 수 있습니다. 예를 들어, api.example.com에 대한 요청은 하나의 대상 그룹에 보내고 mobile.example.com에 대한 요청은 다른 그룹에 보낼 수 있으며, 다른 모든 요청은 (기본 규칙을 통해) 다른 서버로 보낼 수 있습니다. 호스트 기반 라우팅과 경로 기반 라우팅을 결합하는 규칙을 만들 수도 있습니다. 이렇게하면 api.example.com/productionapi.example.com/sandbox로 요청을 다른 대상 그룹으로 라우팅 할 수 있습니다.

과거에는 고객이 프록시 서버를 직접 설치 운영하면서 호스트 기반 라우팅에 사용했습니다. 오늘 출시한 신규 Application Load Balancer 규칙을 사용하여 라우팅을 수행 할 수 있으므로, 과거와 같이 프록시 서버가 더 이상 필요하지 않습니다. 이를 통해 서비스 아키텍처가 단순해지고, 추가 프록시 서버 운영 오버 헤드가 줄어 듭니다.

Application Load Balancer는 포트 맵핑, 상태 점검 및 서비스 검색 등 콘테이너 응용 프로그램을 지원하는 몇 가지 기능을 제공합니다. 호스트와 경로 모두에서 라우팅 할 수 있으므로, 개별 Amazon EC2 Container Service 콘테이너에서 실행되는 마이크로 서비스 기반 애플리케이션을 구축 및 확장할 수 있습니다. 호스트 기반 라우팅을 사용하면 서비스 이름과 콘테이너 이름을 정렬하여, 서비스 검색 메커니즘을 더욱 단순화 할 수 있습니다.

Application Load Balancer당 최대 규칙 수를 10개에서 75개로 늘리고, 새로운 규칙 편집기를 도입했습니다. 직접 한번 살펴보겠습니다.

Load Balancing Console 관련된 리스너가 표시됩니다. 여기에서 View/edit rules을 클릭하여 새 규칙 편집기에 접근할 수 있습니다.

이미 모든 요청을 web-target-production 대상으로 전달하는 기본 규칙이 있습니다.

삽입 아이콘 ( “+”기호)을 클릭하고 위치를 선택합니다. 규칙은 표시된 순서대로 처리됩니다.

Insert Rule을 클릭하고 새 규칙을 정의합니다. 규칙은 호스트, 경로 또는 둘 다를 참조 할 수 있습니다.

호스트 기반 라우팅을 위한 두 가지 규칙을 추가하면, 다음과 같이 보입니다.

프로덕션 및 샌드 박스 트래픽을 별개 대상으로 라우팅하려는 경우, 해당 경로를 참조하는 새 규칙을 만들 수 있습니다. 첫 번째는 다음과 같습니다.

몇 번의 클릭과 약간의 타이핑으로 강력한 규칙 집합을 만들 수 있습니다.

호스트 헤더와 일치하는 규칙에는 최대 3 개의 “*”(0 자 이상 일치) 또는 “?”(1 자 일치) 와일드 카드가 포함될 수 있습니다. 대형 고객의 경우, 추적 용도로 고유한 호스트 이름을 부여한다고 가정 해 보겠습니다. 호스트 이름의 마지막 부분에 관계없이 모든 요청을 동일한 대상 그룹으로 라우팅하는 규칙을 작성할 수 있습니다. 다음은 간단한 예입니다.

규칙 편집기의 연필 아이콘을 사용하면 규칙 순서를 변경할 수 있습니다. 규칙을 선택하고 새 규칙으로 이동 한 다음 업데이트 된 순서로 저장합니다.

존 규칙을 편집하거나 불필요한 규칙을 삭제할 수도 있습니다.

정식 출시
본 기능은 서울 리전을 포함하여 15개 AWS 모든 리전에서 사용할 수 있습니다.

첫 10 가지 규칙 (호스트 기반, 경로 기반 또는 둘 다)에 대한 추가 요금은 없습니다. 그 이후, 규칙 수에 따라 비용이 청구됩니다 (이전 게시물에서 설명한 Load Balancer Capacity units (LCU) 모델에 추가 된 새로운 부분입니다). 각 LCU는 최대 1000 개의 규칙 평가를 지원합니다. LCU의 4가지 차원에서 데이터를 측정하지만, 주어진 시간대에 가장 많이 사용되는 차원에 대해서만 비용이 청구됩니다. 구성되었지만 처리되지 않은 규칙은 비용이 청구되지 않습니다.

Jeff;

이 글은 New – Host-Based Routing Support for AWS Application Load Balancers의 한국어 번역입니다.