반응형
- 동일한 도메인에 대해 여러 레코드를 등록
- 각 레코드에 가중치(weight) 값을 부여
- Route 53이 이 값을 기반으로 트래픽을 비율로 분산
- health check 연동도 가능하여 비정상 리소스는 자동 제외 가능
🛠 설정 방법 (콘솔 기준)
예: www.example.com → EC2-1 (가중치 80), EC2-2 (가중치 20)
- Route 53 콘솔 접속
- 호스팅 영역(Hosted Zone) 선택 → 도메인 선택
- 레코드 생성(Create record) 클릭
- 유형: A 또는 CNAME (필요한 타입 선택)
- 이름: www 등
- 값: 대상 IP 또는 도메인 (예: EC2-1 퍼블릭 IP)
- Routing policy: Weighted 선택
- Weight 값 입력 (예: 80)
- Set ID 입력 → 구분 가능한 이름 (예: EC2-1)
- 저장
→ 위 과정을 또 한 번 반복하여 EC2-2용 레코드도 생성 (Weight 20)
💡 예시 구성
이름타입값라우팅 정책가중치Set ID
www.example.com | A | 192.0.2.10 | Weighted | 80 | EC2-1 |
www.example.com | A | 192.0.2.20 | Weighted | 20 | EC2-2 |
➡️ 결과적으로 www.example.com 요청 중 약 80%는 192.0.2.10으로, 20%는 192.0.2.20으로 전달됩니다.
✅ Health Check 포함 시
- Route 53은 비정상 응답(예: HTTP 5xx, Timeout) 시 해당 레코드를 제외
- 이를 통해 트래픽을 자동으로 정상 서버에만 분배 가능
콘솔에서 레코드 생성 시 “Evaluate target health” 또는 “Associate health check” 옵션 설정
✅ AWS CLI로 설정 예시
aws route53 change-resource-record-sets \
--hosted-zone-id Z123456ABCDEFG \
--change-batch '{
"Changes": [{
"Action": "CREATE",
"ResourceRecordSet": {
"Name": "www.example.com",
"Type": "A",
"SetIdentifier": "EC2-1",
"Weight": 80,
"TTL": 300,
"ResourceRecords": [{ "Value": "192.0.2.10" }]
}
}]
}'
→ 이후 EC2-2용 레코드도 같은 방식으로 등록
🔚 요약
항목설명
목적 | 트래픽을 리소스별 비율로 분산 |
주요 설정 | 레코드 타입, Set ID, Weight |
주의 | Set ID는 반드시 고유해야 함 |
옵션 | Health Check와 함께 사용하면 무중단 트래픽 관리 가능 |
반응형