Trang chủ/Chương 08

Chương 08: Route 53 - DNS

Tổng Quan

Amazon Route 53 là dịch vụ DNS (Domain Name System) fully managed của AWS. Tên gọi "53" vì DNS hoạt động trên port 53.


1. DNS Basics

  • DNS chuyển đổi domain name (example.com) thành IP address (1.2.3.4).
  • Các loại DNS Records:
Record TypeMô tả
AHostname → IPv4 (VD: example.com → 1.2.3.4)
AAAAHostname → IPv6
CNAMEHostname → Hostname khác. KHÔNG dùng cho zone apex (root domain).
AliasHostname → AWS Resource (ALB, CloudFront, S3). Dùng được cho zone apex. Miễn phí query.
NSName Servers cho Hosted Zone

Alias vs CNAME

CNAMEAlias
Zone apex (example.com)❌ Không hỗ trợ✅ Hỗ trợ
TargetBất kỳ hostnameChỉ AWS resources
Phí queryTính phíMiễn phí
Health CheckKhông

💡 Exam Tip: Nếu đề bài nói "root domain" hoặc "zone apex" trỏ đến ALB/CloudFront → Alias Record.


2. Hosted Zones

LoạiMô tảPhí
Public Hosted ZoneResolve domains từ Internet$0.50/tháng
Private Hosted ZoneResolve domains trong VPC(s)$0.50/tháng

3. Routing Policies

PolicyMô tảUse case
SimpleTrả về 1 hoặc nhiều IP (random)Website đơn giản
WeightedPhân traffic theo tỷ lệ %A/B testing, blue/green deploy
Latency-basedRoute đến Region có latency thấp nhấtMulti-region apps
FailoverPrimary/Secondary. Chuyển sang Secondary khi Primary failActive-Passive DR
GeolocationRoute theo vị trí địa lý của userContent localization, compliance
GeoproximityRoute theo khoảng cách + bias (mở rộng/thu hẹp vùng)Fine-tuned geo routing
Multi-ValueTrả về nhiều healthy IPsSimple LB (không thay thế ELB)
IP-basedRoute theo CIDR của clientOptimize cost theo ISP

Ví dụ Weighted Routing:

example.com
├── 70% → EC2 instance A (us-east-1)
├── 20% → EC2 instance B (eu-west-1)
└── 10% → EC2 instance C (ap-southeast-1)

Ví dụ Failover:

example.com
├── Primary: ALB us-east-1 (Health Check ✅)
└── Secondary: S3 static site (nếu Primary fail)

4. Health Checks

  • Monitor endpoint (IP hoặc domain) theo chu kỳ (10s hoặc 30s).
  • Endpoint được coi healthy nếu ≥ 18% health checkers báo healthy.
  • 3 loại:
    • Endpoint Health Check: Check HTTP/TCP/HTTPS trực tiếp.
    • Calculated Health Check: Kết hợp nhiều health checks (AND/OR logic).
    • CloudWatch Alarm Health Check: Dựa trên CloudWatch alarm (cho private resources).

⚠️ Lưu ý: Health Checks chỉ check public endpoints. Để check private resources → dùng CloudWatch Alarm → Health Check.


Exam Tips 💡

  1. Alias Record dùng cho zone apex (example.com → ALB). CNAME không được.
  2. Alias query = miễn phí. Luôn ưu tiên Alias khi trỏ đến AWS resource.
  3. Latency-based khi cần route đến Region nhanh nhất.
  4. Failover khi cần Active-Passive DR setup.
  5. Weighted khi cần A/B testing hoặc gradual migration.
  6. Geolocation khi cần restrict content theo quốc gia.
  7. Health Checks không check được private endpoints → dùng CloudWatch Alarm.

Câu Hỏi Ôn Tập 📝

Câu 1: Bạn cần trỏ root domain example.com đến ALB. Dùng record type nào?

Xem đáp án

Alias Record (type A). CNAME không hỗ trợ zone apex (root domain). Alias miễn phí query và hỗ trợ zone apex.

Câu 2: Ứng dụng deploy ở us-east-1 và eu-west-1. Bạn muốn user tự động được route đến Region gần nhất. Dùng routing policy nào?

Xem đáp án

Latency-based Routing Policy. Route 53 sẽ route user đến Region có latency thấp nhất.

Câu 3: Bạn muốn chuyển 10% traffic sang phiên bản mới để test. Dùng routing policy nào?

Xem đáp án

Weighted Routing Policy. Đặt weight 90 cho version cũ và weight 10 cho version mới.


⬅️ Chương 07: Databases | Chương 09: CloudFront & Caching ➡️