728x90
728x90
라우팅 정책 - Geoloaction(지리적 위치) 지리적 라우팅 정책은 사용자의 위치(DNS 쿼리가 발생하는)를 기반으로 라우팅할 리소스를 지정할 수 있다. 각 위치마다 사용자들의 특성별로 서비스를 제공할 수 있어 글로벌 서비스에 특화되어 있는 리소스 정책이다. 마찬가지로 레코드 이름, 레코드 타입, TTL을 기입하면 해당 레코드에 대한 지역(Location)과 라우팅할 리소스를 지정할 수 있다. 일치하는 위치가 없을 경우에는 기본 레코드를 생성해야 한다. 사용 사레로는 콘텐츠 분산을 제한하고 로드 밸런싱을 사용하는 웹사이트의 현지화에 사용한다.(넷플릭스 나라별로 볼 수 있는 영상이 있는 것처럼..) 헬스 체크 사용 가능하다. 예를 들어, 독일의 유저가 독일어 버전의 앱으로 접속될 수 있게 지리적 라우..
라우팅 정책 - 장애 조치(Failover) Failover 정책은 장애 조치에 관한 정책이다. 마스터 EC2 인스턴스와 재해 복구용 EC2 인스턴스, Route 53 이 있다고 가정한다. 헬스 체크와 기본 레코드를 연결하고 헬스 체크를 했는데 상태가 비정상일 경우에 Route 53은 자동으로 재해 복구용 EC2 인스턴스로 라우팅을 하는 장애 조치를 취한다. 클라이언트가 보낸 DNS 요청은 Route 53 에서 헬스 체크를 하여 정상 상태로 여겨지는 리소스를 응답해준다. 정리하자면, 주 인스턴스와 재해 복구용으로 만든 보조 인스턴스가 있고 Route 53 이 헬스 체크를 통해 주 인스턴스에 상태가 비정상인 것을 체크했으면 Failover 정책에 의해 보조 인스턴스를 주 인스턴스로 처리해준다. 그래서 Ro..
라우팅 정책 - 지연 시간(Latency based) 지연 시간이 가장 짧은, 즉 가장 가까운 리소스로 리다이렉팅을 하는 정책이다. 지연 시간에 민감한 웹사이트나 애플리케이션이 있는 경우에 아주 유용한 정책이다. 지연 시간은 유저가 레코드로 가장 가까운 식별된 AWS 리전에 연결하기 까지 걸리는 시간을 기반으로 측정된다. 예를 들어, 유저가 독일에 있고 미국에 있는 리소스의 지연 시간이 가장 짧다면, 해당 유저는 미국 리전으로 리다이렉팅 된다. 상태 확인 연결이 가능하다. 두 개의 다른 리전, ap-southeast-1 과 us-east-1 에 애플리케이션을 배포 한다. 유저들은 세계 각지에 있고 Route 53 이 지연 시간을 측정한 뒤 지연 시간이 가장 짧은 가까운 거리의 유저들을 각각의 리전으로 연..
라우팅 정책 - 가중치 가중치를 활용해 요청의 일부 비율을 특정 리소스로 보내는 식의 제어가 가능하다. 예를 들어, Amazon Route 53 이 있고 EC2 인스턴스 세 개가 있다. 각각의 인스턴스에 70, 20, 10 가중치를 둔다. 가중치의 합이 100이 되는데 실제로 이럴 필요는 없다. Amazon Route 53 에서 오는 DNS 응답의 70%가 가중치 70을 갖는 인스턴스로 리다이렉팅 되고, 20%, 10% 확률로 리다이렉팅 된다는 뜻이다. 각 레코드에 상대적으로 가중치를 할당하는 방식이다. 이렇게 하면 각 레코드로 보내지는 트래픽의 양(%)은 해당 레코드의 가중치를 전체 가중치로 나눈 값이 된다. 가중치 정책을 사용할 경우 DNS 레코드들은 동일한 이름과 유형을 가져야 한다. 헬스 체크도 ..
라우팅 정책 - 단순(Simple) 라우팅 정책은 Route 53 이 DNS 쿼리에 응답하는 것을 돕는다. 여기서 말하는 라우팅은 로드 밸런서가 트래픽을 EC2 인스턴스로 라우팅하는 것과는 다르다. 여기서의 라우팅은 DNS 관점에서의 라우팅이다. DNS 는 트래픽을 라우팅하지 않는다. 트래픽은 DNS 를 통해 다른 곳으로 흩뿌려지지 않는다. DNS 는 DNS 쿼리에만 응답하게 되고 클라이언트들은 이를 통해 HTTP 쿼디 등을 어떻게 처리해야 하는지 알 수 있게 되는 것이다. 즉, DNS 는 호스트 이름들을 클라이언트가 실제 사용 가능한 엔드 포인트로 변환하는 것을 돕는다. Route 53 이 지원하는 라우팅 정책은 다음과 같다. Simple Weighted Failover Latency Based Geo..
CNAME vs Alias CNAME 과 별칭 레코드의 차이에 대해 알아보자. AWS 의 리소스(로드 밸런서, CloudFront...)를 사용하는 경우에 호스트 이름이 노출된다. 보유한 도메인에 호스트 이름을 맵핑할 수 있다. 즉, myapp.example.com 을 로드 밸런서에 맵핑하는 것. CNAME : 호스트 이름이 다른 호스트 이름으로 라우팅 될 수 있다. 예를 들어, app.example.com 도메인이 test.anything.com 으로 향할 수 있다. 루트 도메인 이름이 아닌 경우에만 가능해서 example.com 앞에 뭔가가 붙어있어야 한다. 여기서는 app 이 붙어있다. 즉, example.com 은 CNAME 레코드를 사용하지 못한다. Alias : 호스트 이름이 특정 AWS 리소..