2013-01-16 2 views
1

저는 탄성 부하 분산 장치를 사용하고 있습니다. 이제는 URI 검사를 기반으로로드 균형을 수행하려고합니다.요청 URI를 기반으로로드 균형을 조정하는 방법은 무엇입니까?

이제 인스턴스 그룹이 있고 특정 인스턴스 그룹으로 리디렉션하려고합니다. 예

들어

나 커스텀 헤더 데이터와이 http://www.example.com/group1 같은 인스턴스에 POST 요청을 보내면 이제 요청은 부하 분산 장치를 이용하여 서버 그룹 1이 요청을 리다이렉트되어야한다.

http://www.example.com/group2 같은 사용자 정의 헤더 데이터로 게시물 요청을 보내면이 요청은로드 밸런서를 사용하여 group2 서버로 리디렉션되어야합니다.

요약하면 조건부로드 균형 조정을 수행하려고합니다.

어떻게 그렇게 할 수 있습니까?

+1

저는 실제로 아키텍처에 먼저 질문 할 것입니다. 하나의 특정 서버 또는 서버 세트에서만 실행해야하는 특정 논리가있는 경우에는 자신의 도메인 또는 하위 도메인에 배치하고 자체로드 밸런서를 앞에 두어야합니다. 로드 밸런서를 처음 사용하는 목적은로드 밸런서 전체에서 부하를 인위적으로 불균형하게 만들므로 두 URI 사이의 요청 수가 거의 같은 경우가 아니라면로드 밸런서를 처음 사용하는 목적을 버리는 것입니다. –

답변

0

여기에는 몇 가지 방법이 있습니다.

  1. 조건부로드 밸런싱 아마존에서 지원하지 않는 두 개의 loadbalancers, 하나 개 가진 그룹 1 인스턴스와 다른 그룹 2의 인스턴스를 만들 수 있습니다. 이제 Route53을 사용하여 트래픽을 라우팅해야합니다. 별명이있는 C 레코드 또는 A 레코드를로드 밸 랜서 A 레코드 이름으로 정의하십시오. 하나의 문제는 내가 확실하지 않다면 http://www.example.com/group1 & http://www.example.com/group2이 작동하지만, http://www.group1.example.com/http://www.group2.example.com/이 반드시 작동 할 것입니다.

  2. 다른 옵션은 서버 (ec2 인스턴스)의 요청을 처리하는 것입니다. group1 요청이 group2 서버에 도달하면 요청을 리디렉션해야하며 반대의 경우도 마찬가지입니다. 이 경우에는 2 개의로드 밸런서가 필요하지 않습니다.

+0

CNAMES에서 별칭을 가리킬 수 있으므로 route53을 사용할 필요는 없지만 dns1.example.com과 dns2.example.com을 사용해야합니다. –

관련 문제