DNS와 CDN: Route 53과 CloudFront

임종혁·2025년 1월 3일

DNS와 CDN: Route 53과 CloudFront


  • Domain Name System은 리소스를 사람이 읽을 수 있는 주소 방식으로 접근 할 수 있도록 돕는 시스템
    • 머신이 읽기 작업에 편리한 IP 주소는 인터넷의 DNS 인프라를 통해 사람이 읽기 편한 도메인 네임이 된다
  • Amazon의 Route 53은 관리형 도메인 서비스
    • 리소스에 대한 접근의 정확성, 신뢰성, 속도를 제공
    • CDN 서비스인 CloudFront는 속도 및 정확성 외에 몇가지 장점을 추가한 서비스

도메인과 도메인 네음


  • 인터넷 주소 체계에서 도메인은 단일 도메인 네임으로 식별 가능한 하나 이상의 서버, 데이터 저장소 또는 디지털 리소스를 의미
  • Amazon Route 53는 도메인 네임 등록자와 같은 역할을 수행하는 서비스

도메인 레이어

  • .com .org 등 도메인 네임의 최우측 텍스트는 TLD 톱레벨 도메인
  • TLD 우측 요소, amazon.com amazon은 2단계 도메인 세컨드 레벨 도메인 이다.

전체 주소 도메인 네임 FQDN


  • 서브도메인과 TLD를 포함해 도메인 절대 주소 정보 모두 지니며,
  • TLD 뒤에 다시 후속 닷 문자를 추가해 FQDN을 명시
  • ex) administration.school.edu

존과 존 파일


  • 존은 DNS 도메인을 정의한 것
  • Route 53은 존을 호스트 영역이라 부른다.
  • Name : 정의된 도메인 네임
  • TTL: 레코드 만료전 유효시간
  • Record Class: 레코드의 네임스페이스
  • Record Type 레코드에 의해 정의된 레코드 타입 (A, CNAME)

ex) example.com. 1h IN NS ns-750.awsdns-30.net.

레코드 타입


AIPv4 IP 주소에 호스트 네임을 맵핑함
CNAME하나의 호스트네임을 알리아스로 사용할수 있도록함
MXMail exchange 도베인을 특정 메시지 변환 에이전트로 맵핑함
AAAAIPv6 IP 주소에 호스트 네임을 맵핑함
TXT휴먼 리더블 머신 리더블 텍스트 포함
PTR도메인 공간 내 다른 롴이션 지정
SRV이메일 검증 프로토콜
NAPTRregex 기반 도메인 네임 재작성 허용
CAA도메인 보안 인증 기구의 인증을 받음
NS존에 의해 사용되는 네임 서버 식별
SOA존의 관리 권한 메타 정보 정의

알리아스 레코드


  • 알리아스 레코드를 이요하면 IP 주소 변경 없이 ELB등 특정 리소스로 트래픽 경로 설정 할 수 있다.

Amazon Route 53


  • 도메인 등록
  • DNS 관리
  • 가용서 ㅇ모니터링
  • 트래픽 관리

Route 53에서 53이라는 숫자는 DNS 트래픽이 TCP 또는 UDP의 53 포트를 사용하는데서 착안

DNS 관리


  • 프라이빗 호스팅 영역은 여러분이 지정함 AWS VVPC를 통해서만 해당 리소스를 접근 할 수 있다.
  • 외부 사용자 접근 허용할 필요 있을시 퍼블릭 호스팅 영역으로 설정
  • ROUTE53은 자동으로 SOA 레코드를 생성하고 4개의 네임서버 주소를 제공

라우팅 정책


  • 심플 라우팅

    • 모든 요청을 여러분이 지정한 IP 주소 또는 도메인 네임으로 전송
    • 새 래코드 세트 생성시 기본 라우팅 정책
  • 가중치 라우팅

    • 설정 비율에 따라 다수의 리소스에 트래픽을 분산
    • 서버마다 별도의 레코드 세트를 생성하고 동일 세트 ID 값을 할당한뒤 인스턴스마다 가중치 값을 입력
    • Route 53 은 동일한 세트 ID를 보고 이들 리소스가 함께 작업을 처리한다는 사실을 알게 된다.
  • 지연 라우팅

    • 다수 AWS 리전에서 실행되는 리소스를 조합해 최고의 사용자 경험을 제공하기 위한 방법
    • 두 레코드 세트의 세트 ID에 동일한 값을 설정하면 Route 53은 이들 두 리소스 중 전송 지연이 가장 낮은 쪽으로 트래픽 전송
  • 실패 대응 라우팅

    • 헬스 체크 결과 정상적으로 작동하는 리소스에 우선적으로 트래픽 전송
    • 기본 리소스가 오ㅑ프라인 되면 다음 트래픽은 2차 레코드 세트로 정의된 보조 리소스로 전송
  • 지리적 라우팅

    • 대륙 국가 미국의 주 등 요청이 발신된 지역을 기준으로 라우팅 결정
    • 전송속도 보다 타겟 고객의 니즈에 맞는 콘텐츠 제공하기 적합
    • 해당 지역 고객이 선호하는 언어로 된 웹페이지 제공하거나 제공이 금지된 콘텐츠를 차단하고 특정 지역에서 동시 다발적인 마켓팅 켐페인 시행 가능
    • Route53 은 종종 요청 IP 주소의 발신지를 식별하지 못하는 경우가 있으므로 기본 레코드 설정에서 이러한 부분을 보완할 수 있도록 한다.
  • 다변량 라우팅

    • 고가용성을 제공하기 위해 헬스 체크 설정과 다변량 라우팅 정책을 결합 할 수 있다.
    • 다수의 변수 값을 지닌 레코드 세트로 하나의 리소스를 가리키도록 하고 이를 헬스 체크와 연계하는 방식
    • 최대 8개의 레코드를 이용해 병렬적으로 리소스를 가리키도록 할 수 있으며 세트 id값으로 서로를 연결하면 된다.
    • Route 53은 헬스 체크를 통해 리소스 상태를 모니터링 하고 정상 리소스에 무작위로 트래픽을 전송한다.
  • Traffic Flow

    • 복잡한 라우팅 정책 조합을 시각화하는 콘솔 기반 그래픽 인터페이스
    • 라우팅 정책과 aws 계정의 모든 리소스 엔드포인트를 통합할 수 있다.
    • 복잡할 수 있는 라우팅 구조를 쉽고 간단하게 구현할 수 있게 해주며 다양한 라우팅 템플릿을 바로 활용하거나 템플릿 커스터 마이징도 가능
    • 근접 위치 라우팅으로 기존 지리적 라우팅 정책 옵션에 비해 월등히 세분화된 위치 정밀도 제공
    • 근접위치 기반 라우팅 룰은 리소스간 위치적 관련성을 위도 및 경도 기반으로 측정하거나 aws 리전 단위로 측정할 수 있다.
    • 이후 편향 점수를 조절해 엔드포인트에서 얼마나 멀리 떨어진 지역을 포함시킬 것인지 설정 할 수 있다.
  • Route 53 Resolver

    • AWS 리소스와 AWS 외부 리소스를 통합해 하이브리드 인프라를 구성하는 경우 Route 53 Resolver를 이용해 라우팅 관리 할 수 있다.
    • Resolver는 양방향 주소 쿼리를 이용해 AWS 리소스와 AWS 외부 존재하는 온프레미스 리소스의 라우팅을 관리할 수 있으며, 프라이빗 및 퍼블릭 플랫폼 기반의 워크로드를 매우 간편하게 처리할 수 있다.

AWS CloudFront


  • Route53이 하지 못하는 일을 처리

    • 전세계 고객에게 신속하게 콘텐츠를 제공하는 것
    • 콘텐츠를 요청한 엔드 유저와 지리적으로 가까운 엣지 로케이션을 기반으로 제공되는 네트워크 서비스로 CloudFront 배포라 부른다.
  • Route 53 환경 설정으로 DNS 요청을 CloudFront 배포에 전달하면 엔드 유저가 자동으로 자신과 가까운 엔드 포인트로 연결되는 방식

    • 엔드 유저의 요청이 접수되면 CloudFront는 유저의 위치를 파악한뒤 전송 지연 수준이 가장 낮은 엔드 포인트를 찾는다.
    • 엔드 유저가 해당 콘텐츠에 대한 요청을 처음한 경우 ec2 웹 서버 또는 s3 버킷등 원본 서버에서 복사돼 제공 이후 다시 요청하게 되면 엔드포인트에 복사본을 캐싱해둔 상태이므로 전송속도가 훨씬 빨라진다.
  • 웹페이지나 그래픽 콘텐츠의 경우

    • Web distribution을 선택
  • s3 버킷에 저장된 Adobe Rtmp 기반 비디오 콘텐츠의 경우

    • RTMP distribution을 선택하는 것이 좋다

정리


  • DNS는 인터넷 리소스의 주소를 관리하는 시스템

    • IP 주소를 도메인 네임으로 맵핑
  • ICANN은 VeriSign 등 등록 운영자 등을 통해 네임서버 및 도메인 네임 등록 대행 사업자를 관리

    • Route 53 은 도메인 네임 등록 대행 사업자의 역할을 수행
  • FQDN 전체 주소 도메인 네음은 org, com 등 TLD 와 SLD로 구성 루트도메임을 나타내기 위해 후속 닷 기호 사용

  • DNS 환경 설정은 호스팅 존을 기반으로 이뤄지며, 레코드 세트를 생성해 인바운드 도메인 트래픽을 처리

  • 호스팅 존 정의 주요 레코드 타입은 A, CNAME, MX 등이 있다.

  • Route 53 호스팅 존에는 SOA 레코드 세트와 요청 내용이 향하게 될 네임 서버 목록이 포함되며, Route 53가 유입되는 도메인 네임 요청을 처리할 수 있도록 최소 하나 이상 레코드 세트를 생성해야한다.

  • 사용자는 Route 53 헬스 체크기능을 이요해 리소스 실행 상태 정기적으로 모니터링 가능

  • 가중치 라우팅은 리소스 처리 용량을 비율로 정해 다수 리소스가 병렬적으로 트래픽 처리할 수 있는 정책

  • 지연 라우팅 정책은 전송 지연이 가장 적은 다수 리소스에 트래픽을 전송하는 정책

  • 실패 대응 라우팅은 리소스를 모니터링 하고 있다가 실패 발생시 백업 리소스에 트래픽을 우회시킴

  • 지리적 라우팅은 요청 위치와 이에 대한 대응 위치를 고려해 좀 더 나은 라우팅 경로 제공

  • AWS CloudFront는 글로벌 CDN 서비스로 엣지 로케이션에 웹사이트와 디지털 미디어 등 콘텐츠를 캐싱한뒤 고객이 요청할때 신속하게 콘텐츠를 제공할 수 있도록 하는 서비스

0개의 댓글