DNS - Domain Name System, 호스트 이름을 서버 IP로 변경 (google.com -> x.x.x.x)
- Domain Registrar : 도메인 이름을 등록하는 곳, route 53, goDaddy
- DNS Records : A, AAAA, CNAME..
- Zone File : 모든 DNS 레코드를 포함
- Name Server : DNS 쿼리를 실제로 해결하는 서버
- Top Level Domain : .com, .us, .org, .gov..
- Second Level Domain : amazon.com, google.com
- FQDN : Fully Qualified Domain Name, Protocol://Domain name.Sub Domain.SLD.TLD
Route 53 - 고가용성, 확장성, 관리되고 권한 있는 DNS, 관리자가 DNS 레코드 업데이트 가능, 100% SLA 가용성을 제공하는 유일한 AWS 서비스, 53은 DNS 서비스에 사용되는 포트 번호, 여러 DNS 레코드 정의, 레코드를 통해 특정 도메인으로 라우트하는 방법 정의, 레코드에는 도메인, 서브 도메인 이름, 레코드 타입, IP, 라우팅 정책, TTL 등 정보 포함, 레코드 형식은 A, AAAA, CNAME, NS, 추가적으로는 CAA, DS, MX, NAPTR, PTR, SOA, TXT, SPF, SRV
- A : 호스트 이름과 IPv4 매핑
- AAAA : 호스트 이름과 IPv6 매핑
- CNAME : 호스트 이름을 다른 호스트 이름과 매핑, 대상 호스트 이름은 A나 AAAA 가능, DNS namespace의 상위 노드에 대한 CNAME은 생성 불가, example.com에는 불가, www.example.com에는 가능
- NS : 호스팅 존의 이름 서버, 서버의 DNS 이름, IP 주소로 호스팅 존에 대한 DNS 쿼리에 응답 가능, 트래픽이 도메인으로 라우팅 되는 방식 제어
- Hosted Zone : 레코드의 컨테이너, 도메인과 서브 도메인으로 가는 라우팅 방식 정의, 퍼블릭 호스팅 존(쿼리에 도메인의 IP 확인 가능), 프라이빗 호스팅 존(공개되지 않은 도메인 이름 지원, Virtual Private Cloud만 URL 해결 가능, 내부 네트워크에서만 접근 가능한 URL)
TTL - Time To Live, 설정한 시간 동안 클라이언트가 재요청을 보내거나 같은 호스트 이름으로 접속할 경우 DNS 시스템에 쿼리를 보내지 않아도 됨, 시간을 오래 설정하면 트래픽은 적어지지만 클라이언트가 오래된 레코드를 받을 수 있음, 짧게 설정하면 트래픽이 많아져 비용이 증가함, 들어오는 트래픽 양에 따라 요금 책정
CNAME - 호스트 이름을 다른 호스트 이름으로 매핑, 루트 도메인이 아니어야 함
Alias - Route 53에 한정, 호스트 이름을 특정 AWS 리소스로 매핑 가능, 루트 도메인도 가능, 무료, 자체 상태 확인 가능, DNS 확장 기능, Zone Apex라는 DNS 네임 스페이스의 상위 노드로 사용 가능, 레코드는 항상 A나 AAAA, TTL 설정 불가, ELB, CloudFront, API Gateway, Elastic Beanstalk, S3 Websites, VPC Interface Endpoint, Global Accelerator, 동일 호스트 존의 Route 53 레코드 들이 대상, EC2의 DNS 이름에는 별칭 설정 불가
Routing Policy - DNS 관점의 라우팅으로, DNS는 트래픽을 라우팅하지 않음, DNS 쿼리에만 응답하고 클라이언트는 이를 통해 어떻게 처리하는지 알 수 있음
- Simple : 트래픽을 단일 리소스로 보내는 방식, 동일 레코드에 여러 값을 지정 가능, 다중 값을 받으면 클라이언트가 무작위로 선택, 별칭을 사용하면 하나의 AWS 리소스만 지정 가능, 상태 확인 불가
- Weighted : 가중치를 사용해 요청의 일부 비율을 특정 리소스로 보낼 수 있음, DNS 레코드들이 동일한 이름과 유형 필수, 상태 확인과 관련, 다른 지역에 걸치는 로드 밸런싱, 테스트, 가중치를 0으로 설정하면 특정 리소스에 트래픽이 가는걸 중단할 수 있음, 모든 리소스의 가중치가 0이면 모두 동일한 가중치가 주어짐
- Latency based : 지연 시간이 가장 짧은, 가장 가까운 리소스로 리다이렉팅, 클라이언트가 레코드로 가장 가까운 AWS 리전에 연결하기까지 걸리는 시간 기반
- Failover : 기본 인스턴스가 비정상이면 재해 복구용 EC2로 장애 조치를 취함, 클라이언트가 요청을 보내면 기본 인스턴스가 비정상일 때 보조 인스턴스가 응답을 보냄
- Gelocation : 사용자의 실제 위치를 기반, 가장 정확한 위치가 선택되어 그 IP로 라우팅 됨, 일치하는 위치가 없는 경우에는 기본 레코드 설정 필요, 컨텐츠 분산 제한, 로드 밸런싱, 웹사이트 현지화
- Muti-Value Answer : 트래픽을 다중 리소스로 라우팅, 다중 값 쿼리의 최대 8개 정상 레코드 반환, ELB와 유사하지만 대체 불가
- Geoproximity : 사용자와 리소스의 위치를 기반으로 트래픽을 리소스로 라우팅, 편향값을 사용해 특정 위치를 기반으로 더 많은 트래픽을 리소스로 보내는 것, 많이 보내려면 편향값을 양수로, 적게 보내려면 음수로 설정
Health Checks - 공용 리소스에 대한 상태 확인, DNS 장애 조치를 자동화하기 위한 작업
- 공용 엔드포인트(어플리케이션, 서버, AWS) 모니터링 : 상태를 확인하고 임계값을 정상이나 비정상으로 설정, 10초/30초마다 설정 가능, HTTP. HTTPS, TCP 등 지원, 18% 이상의 상태 확인이 정상이라고 판단하면 route 53도 정상이라고 판단, 상태 확인에 사용될 위치 설정 가능, 로드밸런서에서 2xx, 3xx 코드를 받아야 통과, 텍스트 기반 응답일 경우 처음 5120 bytes를 확인, 상태 확인이 어플리케이션 밸런서나 엔드 포인트에 접근 가능해야 함(route 53 상태 확인 IP 주소 범웨에서 들어오는 모든 요청 허용 필수)
- 다른 상태 확인을 모니터링(계산된 상태 확인) : 여러 개의 상태 확인 결과를 하나로 합치는 기능, AND, OR, NOT 사용 가능, 하위 상태 확인 256개까지 가능
- CloudWatch 경보 상태 모니터링 : 개인 호스팅 존을 상태 확인 하려면 private 엔드 포인트에는 접근이 불가해 CloudWatch 지표를 만들어 확인 가능
'AWS > AWS Architect Associate' 카테고리의 다른 글
Cloud Front, Global Accelerator (0) | 2023.08.19 |
---|---|
S3 (0) | 2023.07.03 |
RDS, Aurora, Elastic Cache (0) | 2023.05.25 |
ELB, ASG (0) | 2023.05.21 |
EBS, EFS (0) | 2023.02.06 |