◇ 공부 기록용으로 작성하였으니 틀린점, 피드백 주시면 감사하겠습니다 ◇
Route 53 Routing Policy (라우팅 정책)
DNS 서버에 DNS 레코드를 등록할 때, 하나의 도메인 이름에 여러 IP 주소를 설정할 수 있다.
Routing Policy은 DNS 쿼리에 대한 도메인 이름과 연결된 IP 주소 중에서 어떤 IP 주소를 응답할지 정하는 방법이다.
Route 53의 Routing Policy에는 다음과 같은 7가지 종류가 있다.
- Simple routing policy
- Weighted routing policy
- Latency-based routing policy
- Geolocation routing policy
- Geoproximity routing policy
- Multivalue answer routing policy
- Failover routing policy
[Route 53 Health Check]
Route 53의 Health Check는 도메인 이름에 연결된 리소스(예: 웹 서버, 애플리케이션 서버 등)의 상태를 확인한다. 그 결과, 정상인 리소스의 IP 주소만 DNS 쿼리에 대한 응답으로 보낸다.
Route 53에서 7가지 라우팅 정책 중 Simple routing policy을 제외한 나머지 정책들은 Health Check를 사용할 수 있다.
"Multivalue answer routing policy"와 "Failover routing policy"는 Health Check의 결과를 바탕으로 라우팅 하기 때문에 Health Check 설정이 필수이다.
1. Simple routing policy (단순 라우팅 정책) : 1대1 라우팅
도메인 이름에 연결된 단일 리소스의 IP 주소를 응답한다.
2. Weighted routing policy (가중치 라우팅 정책): 비율에 따라 라우팅
여러 IP 주소에 대해 설정된 가중치(Weight)에 따라 IP 주소를 응답한다.
[Blue/Green 배포 전략 + Weighted routing]
Stag과 Prod을 나눠서 배포할 경우, Blue/Green 배포 전략과 Weighted routing을 활용하는 경우가 많다.
3. Latency-based routing policy (지연 시간 라우팅 정책)
지연 시간(Latency)이 가장 적은 Region의 리소스 IP 주소를 응답한다.
기본적으로 사용자와 가장 가까운 Region의 리소스가 선택되지만, 경로에 지연이 발생한 경우 다른 지연 시간이 적은 Region의 리소스가 선택된다.
4. Geolocation routing policy (위치 정보 라우팅 정책) : 위치에 따라서 라우팅
사용자의 위치 정보에 따라 응답할 IP 주소를 결정한다. 위치에 따라 응답할 콘텐츠를 다르게 할 수 있다.
예를 들어, 사용자의 위치 정보로부터 사용자의 언어에 맞는 콘텐츠가 있는 리소스의 IP 주소를 응답한다.
5. Geoproximity routing policy (지리적 근접성 라우팅 정책): 유저와 가까운 곳
사용자의 위치 정보를 기반으로, 사용자와 지리적으로 가까운 리전의 리소스 IP 주소를 응답한다.
지리적으로 가까운 Region의 리소스를 응답
6. Multivalue answer routing policy (다중 값 응답 라우팅 정책): Health Check 확인
(📌Health Check 필수)
여러 리소스에 대해 Health Check를 수행하고, 정상인 리소스 중 최대 8개의 IP 주소를 응답한다.
7. Failover routing policy (페일오버 라우팅 정책)
(📌Health Check 필수)
기본적으로 접근시키고 싶은 리소스를 Primary로 설정하고, Primary에 장애가 발생한 경우 접근시키고 싶은 리소스를 Secondary로 설정한다.
정상 시에는 Primary 리소스의 IP 주소를 응답하고, Primary 리소스에 장애가 발생하면 Secondary 리소스의 IP 주소를 응답한다.
이를 통해 서비스 제공 리소스가 자동으로 Primary에서 Secondary로 전환되는 페일오버를 실현한다.
예를 들어, 웹 서비스를 공개하는 EC2 인스턴스의 IP 주소를 Primary로 설정하고, S3의 정적 웹사이트 호스팅의 "서비스 중단" 페이지의 URL을 Secondary로 설정함으로써 EC2 인스턴스에 장애가 발생할 경우 설정한 서비스 중단 페이지를 표시할 수 있다
Routing Policy의 조합
Simple routing policy을 제외하고, 여러 라우팅 정책을 조합하여 사용할 수 있다.
[Failover routing policy + Latency routing policy]
예를 들어, Failover routing policy을 적용하여 여러 기본 리소스와 보조 리소스를 설정한 후, 기본 리소스에 Latency routing policy을 적용할 수 있다. 이렇게 하면 정상적인 상황에서는 기본 리소스 중에서 지연이 적은 리소스의 IP 주소를 응답하고, 기본 리소스에 문제가 발생할 경우 보조 리소스의 IP 주소를 응답하게 된다.
[Traffic Flow]
Route 53에는 이와 같이 여러 라우팅 정책을 설정할 수 있는 "traffic flow"이라는 기능이 있다.
traffic flow은 라우팅 정책의 관계를 트리 구조로 표시하여 복잡한 설정을 시각적으로 쉽게 이해할 수 있도록 한다.
참고자료)
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html
'클라우드(AWS)' 카테고리의 다른 글
[AWS] VPC Lattice란? 쉽게 정리 (마이크로서비스 간의 네트워크 통신 관리, Transit Gateway와의 차이점) (1) | 2024.08.29 |
---|---|
[AWS] AMI란?? 쉽게 정리 (Amazon Machine Image) (0) | 2024.08.27 |
[AWS] Amazon Aurora의 Endpoint(엔드포인트) 쉽게 정리 (Cluster Endpoint, Reader Endpoint, Instance Endpoint) (0) | 2024.08.26 |
[AWS] Amazon AppFlow란? 쉽게 정리 (SaaS 통합 서비스) (0) | 2024.08.26 |
[AWS] Amazon DocumentDB란? 쉽게 정리 (MongoDB 호환) (0) | 2024.08.24 |