Route 53에 들어가기 앞서 베이스 개념이 되는 DNS 개념을 먼저 봐야 한다.
우선 DNS 개념을 살짝 보자면DNS(Domain Name System)는 인터넷에서 도메인 이름과 IP 주소를 변환해 주는 시스템이다.
사람들이 웹사이트에 접속할 때 사용하는 도메인 이름(예: www.example.com)을 컴퓨터가 이해할 수 있는 IP 주소(예: 192.0.2.1 또는 2001:0db8:85a3:0000:0000:8a2e:0370:7334)로 변환하는 역할을 한다.
이제 Route 53을 보자
AWS Route 53는 아마존 웹 서비스(AWS)에서 제공하는 DNS(Domain Name System) 웹 서비스이다.
- Route 53은 인터넷 도메인 이름을 IP 주소로 변환하는 DNS 서버의 기능을 수행하며, 이를 통해 사용자들이 도메인 이름을 통해 서버, 애플리케이션, 또는 서비스에 접근할 수 있도록 해준다.
- Route 53에 53은 왜? 53일까? 53은 전통적인 DNS 포트 번호여서 53을 사용한다.
- Route 53은 유료이다. 월 0.5$의 비용이 발생한다. (추가 비용 발생 가능)
그리고 추가적으로 Route 53을 사용하다 보면 TTL이라는 개념이 계속 나올 것이다.
TTL(Time to Live)
클라이언트가 웹 서버에 접속했을 때 도메인으로 DNS 요청을 보내면 DNS로부터 회신을 받는데 TTL은 이 회신에 대한 응답을 캐싱하는 시간을 설정하는 것이다.
TTL이 100 정도 된다고 하면 클라이언트 요청에 대한 DNS 요청은 100초 동안 DNS 시스템에 쿼리를 날리지 않고 캐싱된 정보를 사용한다.
AWS Route 53 동작방식
- Web Browser (웹 브라우저)
- 사용자가 웹 브라우저에 example.com 같은 도메인 이름을 입력하면, 브라우저는 그 도메인에 해당하는 IP 주소를 찾기 위해 Local DNS Server에 요청을 보낸다. 이때 캐시(CACHE)와 TTL(Time to Live)을 사용해 로컬에서 이미 해당 도메인에 대한 정보를 가지고 있는지 확인한다.
- 만약 캐시된 IP 주소가 있다면, 캐시에서 IP 주소를 가져와 웹 서버로 연결한다.
- Local DNS Server (로컬 DNS 서버)
- 로컬 DNS 서버는 사용자의 ISP(인터넷 서비스 제공자) 또는 회사 네트워크에 의해 할당되고 관리된다.
- 로컬 DNS 서버는 example.com에 대한 IP 주소를 캐시에서 찾는다. 만약 캐시에 없다면, 루트 DNS 서버에 질의한다.
- Root DNS Server (루트 DNS 서버)
- 루트 DNS 서버는 도메인 이름의 최상위 수준에서 이름을 관리하며, 여기서는 도메인의 최상위 관리기관인 ICANN에 의해 관리된다.
- 루트 DNS 서버는. com 같은 Top-Level Domain (TLD) 서버의 네임서버(NS)를 반환한다.
- TLD DNS Server (. com)
- TLD DNS 서버는. com과 같은 최상위 도메인에 대한 정보를 관리한다. IANA(Internet Assigned Numbers Authority)가 관리하는 이 서버는 example.com 도메인의 Second-Level Domain (SLD)에 대한 정보를 알고 있다.
- TLD DNS 서버는 example.com에 대한 네임서버(NS) 정보를 반환한다.
- SLD DNS Server (example.com)
- SLD DNS 서버는 실제 도메인인 example.com에 대한 정보를 제공한다. 이 서버는 도메인 등록기관(예: Amazon Registrar, Inc.)에 의해 관리된다.
- SLD DNS 서버는 example.com의 IP 주소(예: 9.10.11.12)를 로컬 DNS 서버에 반환한다.
- 웹 서버에 연결
- 로컬 DNS 서버는 받은 IP 주소를 웹 브라우저에 전달한다.
- 웹 브라우저는 해당 IP 주소로 연결하여 example.com 웹 서버에 접속하고, 웹사이트의 콘텐츠를 로드한다.
AWS Route 53 기능
- DNS 관리(Domain Name System)
- Route 53은 도메인 이름을 IP 주소로 매핑해 주는 DNS 서비스이다. 예를 들어, www.example.com이라는 도메인 이름을 해당 웹 서버의 IP 주소로 변환하는 작업을 담당한다.
- 이 DNS 서비스는 AWS에서 호스팅 된 애플리케이션뿐만 아니라, 다른 위치에 있는 리소스(예: 외부 웹 서버)에 대한 DNS 설정도 지원한다.
- 도메인 등록(Domain Registration)
- Route 53을 사용하면 도메인 이름을 직접 구입하고 등록할 수 있습니다. Route 53은 여러 최상위 도메인(TLD)을 지원하며, 이를 통해 .com, .net, .org 등의 도메인을 쉽게 등록할 수 있다.
- 트래픽 관리(Traffic Flow)
- Route 53은 다양한 트래픽 관리 정책을 제공한다. 이를 통해 사용자 요청을 다양한 AWS 리소스나 외부 서버로 라우팅 할 수 있다.
- 트래픽 라우팅 정책 옵션
- 단순 라우팅(Simple Routing): 특정 IP 주소 또는 도메인으로 트래픽을 간단히 전달한다.
- 지연 시간 기반 라우팅(Latency-based Routing) : 사용자의 위치에서 가장 적은 지연 시간이 예상되는 리전으로 트래픽을 라우팅합니다. 이를 통해 사용자에게 더 빠른 응답을 제공할 수 있다.
- 가중치 기반 라우팅(Weighted Routing) : 여러 서버나 리소스에 트래픽을 분배할 때, 가중치를 설정하여 특정 리소스에 트래픽을 더 많이 보내거나 덜 보내는 방식으로 제어할 수 있습니다. 이를 통해 여러 서버 간에 부하 분산을 유도할 수 있다.
- 지리적 위치 기반 라우팅(Geolocation Routing) : 사용자 위치에 따라 트래픽을 특정 서버로 라우팅 할 수 있습니다. 이를 통해 사용자에게 가까운 서버나 특정 지역에 맞는 리소스로 트래픽을 보낼 수 있다.
- 장애 조치 라우팅(Failover Routing) : 특정 리소스가 장애가 발생했을 때 백업 리소스로 자동 전환하여 트래픽을 전송한다. 이를 통해 높은 가용성을 유지할 수 있음.
- CloudWatch를 사용해 모니터링이 가능하다.
- 다중 값 응답 라우팅(Multi-Value Answer Routing) : 여러 서버에 트래픽을 분산할 수 있으며, 건강 검사를 통과한 서버들에만 트래픽을 보내고 이는 부하 분산과 함께, 건강하지 않은 리소스에는 트래픽을 보내지 않는 기능을 제공.
- IP기반 라우팅 : IP 주소 범위를 기반으로 하는 라우팅
- 헬스 체크(Health Checks)
- Route 53은 헬스 체크(Health Check) 기능을 통해 리소스가 정상적으로 작동하는지 주기적으로 확인합니다. 이를 통해 트래픽을 정상적으로 작동하는 서버나 리소스에만 전달하도록 할 수 있다.
- 예를 들어, 웹 서버가 응답하지 않으면 자동으로 다른 가용 리소스나 백업 서버로 트래픽을 전환하는 기능을 제공한다.
- 통합된 AWS 서비스
- Route 53은 AWS의 다양한 서비스와 쉽게 통합된다. 예를 들어, S3 버킷, EC2 인스턴스, Elastic Load Balancing(ELB)와 같은 서비스와 손쉽게 연동할 수 있다.
- 이를 통해 사용자 트래픽을 AWS 리소스에 안정적이고 신속하게 라우팅할 수 있다.
- 안정성과 확장성
- Route 53은 매우 높은 가용성과 확장성을 제공하는 글로벌 DNS 서비스입니다. 분산된 AWS의 인프라 덕분에 전 세계적으로 안정적인 DNS 쿼리 응답을 제공하며, 대규모 트래픽 처리에 유리하다.
- 도메인 이름 기반 리소스 관리
- Route 53을 사용하면 도메인 이름 기반으로 AWS에서 실행 중인 서비스와 애플리케이션을 쉽게 관리할 수 있습니다. 도메인 이름과 AWS의 특정 리소스 간의 매핑을 간단히 설정하고 변경할 수 있다.
- 다양한 레코드 타입 지원
- Route 53은 여러 가지 DNS 레코드 타입을 지원한다.
- A 레코드: 도메인 이름을 IPv4 주소로 매핑
- AAAA 레코드: 도메인 이름을 IPv6 주소로 매핑
- CNAME 레코드: 도메인 이름을 다른 도메인 이름으로 매핑
- Route 53에서 DNS nameSpace 또는 Zone Apex의 상위 노드에 대한 CNAMES를 생성할 수 없다.
- NS 레코드 : 호스팅 존의 Name server이다.
- 서버의 DNS Name 또는 Ip 주소로 호스팅 존에 대한 DNS 쿼리에 응답할 수 있다.
- Route 53 Hosted Zones : 레코드의 컨테이너이고 도메인과 서브도메인으로 가는 트래픽의 라우팅 방식을 제어한다.
- Public hosted Zones
- example.com 이 public domain이라면 Public hosted Zones 을 만들 수 있다.
- 퍼블릭존은 application.example.com의 ip주소를 알 수 있다.
- Private hosted Zones
- 공개되지 않는 도메인 이름을 지원한다.
- 가상 프라이빗 클라우드(VPC)만이 URL을 rosolve 할 수 있다.
- 사내 네트워크가 Private hosted Zones에 해당한다. (회사 네트워크 내에서만 접속 가능)
- Public hosted Zones
- 트래픽이 도메인으로 라우팅 되는 방식을 제어한다.
- Route 53은 여러 가지 DNS 레코드 타입을 지원한다.
5. MX 레코드: 메일 서버에 대한 정보를 제공
6. TXT 레코드: 도메인과 관련된 다양한 텍스트 정보를 제공 (예: 인증, 보안 설정)
reference
https://docs.aws.amazon.com/ko_kr/route53/
https://docs.aws.amazon.com/ko_kr/route53/
docs.aws.amazon.com
'Dev > 인프라' 카테고리의 다른 글
Docker (1) | 2024.09.10 |
---|---|
[Server] CI/CD (0) | 2021.11.08 |
[Server] 로드 밸런싱(Load balancing) (0) | 2021.11.05 |
[AWS] EC2 인스턴스 구축하기 (0) | 2021.10.24 |
[Server]운영 서버에 대한 정리 (0) | 2021.10.21 |