Route 53 trong 5 ngày

Ngày 1: Amazon Route 53 - Nền tảng và Khái niệm Cơ bản

  • Buổi sáng:

    • Amazon Route 53 là gì? Tìm hiểu về dịch vụ DNS được quản lý của AWS, khả năng mở rộng, tính linh hoạt và độ tin cậy cao.

    • Khái niệm Domain: Domain là tên miền duy nhất đại diện cho website hoặc ứng dụng của bạn. DNS (Domain Name System) là hệ thống phân giải tên miền thành địa chỉ IP. Route 53 đóng vai trò như một DNS server, giúp người dùng truy cập vào website của bạn thông qua tên miền.

    • Đăng ký Domain với Route 53: Hướng dẫn đăng ký tên miền mới, chuyển tên miền từ nhà cung cấp khác sang Route 53, quản lý thông tin tên miền (ví dụ: cập nhật nameserver, gia hạn, v.v.).

    • Hosted Zones và Record Sets:

      • Public Hosted Zone: Chứa các bản ghi DNS cho tên miền public, có thể truy cập từ Internet.

      • Private Hosted Zone: Chứa các bản ghi DNS cho tên miền private, chỉ có thể truy cập từ bên trong VPC (Virtual Private Cloud) của bạn.

      • Record Set: Tập hợp các bản ghi DNS có cùng tên và loại (ví dụ: A, AAAA, CNAME, MX, TXT, NS, SOA).

    • Thực hành:

      1. Tạo một public hosted zone cho một tên miền mới (ví dụ: "mywebsite.com").

      2. Thêm một bản ghi A trỏ đến địa chỉ IP của máy chủ web của bạn.

      3. Tạo một private hosted zone cho một tên miền nội bộ (ví dụ: "corp.local").

  • Buổi chiều:

    • Routing Policies: Tìm hiểu về các loại routing policy khác nhau trong Route 53:

      • Simple Routing: Định tuyến tất cả traffic đến một địa chỉ IP duy nhất.

      • Weighted Routing: Phân bổ traffic theo tỷ lệ phần trăm giữa nhiều địa chỉ IP.

      • Latency Routing: Định tuyến traffic đến region AWS có độ trễ thấp nhất.

      • Failover Routing: Tự động chuyển traffic sang một địa chỉ IP dự phòng khi địa chỉ IP chính không khả dụng.

      • Geolocation Routing: Định tuyến traffic dựa trên vị trí địa lý của người dùng.

      • Geoproximity Routing: Định tuyến traffic dựa trên khoảng cách địa lý giữa người dùng và địa chỉ IP.

      • Multivalue Answer Routing: Trả về nhiều giá trị cho một truy vấn DNS (ví dụ: nhiều địa chỉ IP cho một tên miền).

    • Thực hành:

      1. Tạo một weighted routing policy để phân bổ 70% traffic đến một web server và 30% traffic đến một web server khác.

      2. Cấu hình failover routing cho một website, sử dụng một web server chính và một web server dự phòng.

      3. Tạo một private hosted zone và thêm một bản ghi A trỏ đến một EC2 instance trong VPC của bạn.

Ngày 2: Health Checks và DNS Failover - Đảm bảo Tính sẵn sàng

  • Buổi sáng:

    • Health Checks: Tìm hiểu cách sử dụng health check để giám sát tình trạng của các endpoint (ví dụ: web server, database server). Route 53 cung cấp ba loại health check:

      • Endpoint health checks: Kiểm tra khả năng kết nối đến một endpoint cụ thể (ví dụ: kiểm tra xem web server có phản hồi với request HTTP không).

      • Calculated health checks: Kết hợp kết quả của nhiều health check khác nhau để đưa ra đánh giá tổng thể về tình trạng của một endpoint.

      • CloudWatch alarm health checks: Kiểm tra xem một CloudWatch alarm có ở trạng thái "ALARM" hay không.

    • Thực hành:

      1. Tạo một endpoint health check để giám sát web server của bạn.

      2. Tạo một calculated health check để kết hợp kết quả của nhiều endpoint health check.

      3. Tạo một CloudWatch alarm health check để giám sát một metric của web server (ví dụ: CPU utilization).

  • Buổi chiều:

    • DNS Failover: Tìm hiểu cách sử dụng DNS failover để tự động chuyển traffic sang một endpoint dự phòng khi endpoint chính không khả dụng. DNS failover hoạt động dựa trên kết quả của health check.

    • Thực hành:

      1. Cấu hình DNS failover cho website của bạn, sử dụng hai web server (một chính, một dự phòng) và một endpoint health check.

      2. Thử nghiệm DNS failover bằng cách tắt web server chính và kiểm tra xem traffic có được chuyển sang web server dự phòng không.

      3. Cấu hình DNS failover cho một bản ghi A trong private hosted zone, trỏ đến hai EC2 instance trong VPC của bạn.

Ngày 3: Route 53 Traffic Flow & Resolver - Kiểm soát và Mở rộng

  • Buổi sáng:

    • Route 53 Traffic Flow: Tìm hiểu cách sử dụng traffic policy để định tuyến traffic dựa trên nhiều tiêu chí khác nhau, bao gồm:

      • Geolocation: Định tuyến traffic dựa trên vị trí địa lý của người dùng.

      • Truy vấn DNS: Định tuyến traffic dựa trên tên miền hoặc loại bản ghi DNS.

      • Độ trễ: Định tuyến traffic đến region AWS có độ trễ thấp nhất.

      • Weighted routing: Phân bổ traffic theo tỷ lệ phần trăm giữa nhiều endpoint.

    • Thực hành:

      1. Tạo một traffic policy để định tuyến traffic từ các quốc gia khác nhau đến các web server khác nhau.

      2. Sử dụng traffic policy để thực hiện A/B testing cho website của bạn.

      3. Tạo một traffic policy để định tuyến traffic đến một web server cụ thể khi người dùng truy cập vào một subdomain cụ thể.

  • Buổi chiều:

    • Route 53 Resolver: Tìm hiểu cách sử dụng Route 53 Resolver để giải quyết truy vấn DNS giữa các VPC và giữa VPC với mạng on-premises. Route 53 Resolver bao gồm hai thành phần chính:

      • Inbound Resolver: Cho phép các máy chủ DNS bên ngoài VPC truy vấn các bản ghi DNS trong private hosted zone của bạn.

      • Outbound Resolver: Cho phép các instance trong VPC truy vấn các bản ghi DNS bên ngoài VPC.

    • Thực hành:

      1. Thiết lập một inbound resolver để cho phép các máy chủ DNS bên ngoài VPC truy vấn các bản ghi DNS trong private hosted zone của bạn.

      2. Thiết lập một outbound resolver để cho phép các instance trong VPC truy vấn các bản ghi DNS bên ngoài VPC.

      3. Tạo một resolver endpoint và liên kết nó với một VPC. Sau đó, cấu hình một EC2 instance trong VPC đó để sử dụng resolver endpoint này.

Ngày 4: Route 53 DNS Firewall & Profiles - Bảo mật DNS

  • Buổi sáng:

    • Route 53 DNS Firewall: Tìm hiểu cách sử dụng DNS Firewall để bảo vệ hệ thống DNS của bạn khỏi các cuộc tấn công DDoS, giả mạo DNS và các mối đe dọa khác. DNS Firewall cho phép bạn tạo các quy tắc để chặn hoặc cho phép truy vấn DNS dựa trên các tiêu chí khác nhau, bao gồm:

      • Tên miền: Chặn hoặc cho phép truy vấn đến các tên miền cụ thể.

      • Loại bản ghi DNS: Chặn hoặc cho phép truy vấn các loại bản ghi DNS cụ thể (ví dụ: A, AAAA, MX).

      • Địa chỉ IP: Chặn hoặc cho phép truy vấn từ các địa chỉ IP cụ thể.

    • Thực hành:

      1. Tạo một DNS Firewall rule group để chặn truy vấn đến các tên miền độc hại.

      2. Tạo một DNS Firewall rule để cho phép truy vấn đến các tên miền an toàn.

      3. Tạo một DNS Firewall rule để chặn truy vấn từ các địa chỉ IP cụ thể.

  • Buổi chiều:

    • Route 53 Profiles: Tìm hiểu cách sử dụng Route 53 Profiles để quản lý tập trung các cấu hình DNS Firewall, private hosted zone và resolver rules. Route 53 Profiles cho phép bạn áp dụng các cấu hình này cho nhiều VPC và AWS accounts.

    • Thực hành:

      1. Tạo một Route 53 Profile và liên kết nó với một DNS Firewall rule group.

      2. Liên kết Route 53 Profile với một private hosted zone.

      3. Liên kết Route 53 Profile với một resolver rule.

Ngày 5: Tích hợp Route 53 với các dịch vụ AWS khác & Best Practices

  • Buổi sáng:

    • Tích hợp với các dịch vụ AWS:

      • Elastic Load Balancing (ELB) và Application Load Balancer (ALB): Sử dụng Route 53 để định tuyến traffic đến các target group của ELB/ALB, giúp cân bằng tải và đảm bảo tính sẵn sàng cho ứng dụng của bạn.

      • CloudFront: Sử dụng Route 53 để quản lý các bản ghi DNS cho CloudFront distributions, giúp tăng tốc độ phân phối nội dung trên toàn cầu.

      • Amazon S3: Sử dụng Route 53 để lưu trữ website tĩnh hoặc các file khác trên S3, giúp giảm tải cho web server của bạn.

      • API Gateway: Sử dụng Route 53 để định tuyến traffic đến các API được quản lý bởi API Gateway, giúp bạn dễ dàng tạo và quản lý các API.

    • Thực hành:

      1. Tạo một ELB/ALB và cấu hình Route 53 để định tuyến traffic đến các target group của ELB/ALB.

      2. Tạo một CloudFront distribution và cấu hình Route 53 để quản lý các bản ghi DNS cho distribution đó.

      3. Tạo một S3 bucket và cấu hình Route 53 để định tuyến traffic đến bucket đó.

  • Buổi chiều:

    • Best Practices: Tìm hiểu các best practice để sử dụng Route 53 một cách hiệu quả và an toàn:

      • Sử dụng nhiều health checks: Giám sát tình trạng của các endpoint từ nhiều vị trí địa lý khác nhau để tăng tính sẵn sàng.

      • Theo dõi và giám sát: Sử dụng CloudWatch để theo dõi các metric của Route 53 và nhận thông báo khi có sự cố.

      • Sử dụng DNSSEC: Kích hoạt DNSSEC để bảo vệ hệ thống DNS của bạn khỏi các cuộc tấn công giả mạo DNS.

      • Quản lý IAM: Sử dụng IAM để kiểm soát quyền truy cập vào các resource Route 53 của bạn.

      • Sử dụng Alias Record: Sử dụng Alias Record để trỏ đến các resource AWS khác (ví dụ: ELB, CloudFront, S3) mà không cần phải quản lý các bản ghi A hoặc AAAA.

      • Sử dụng Route 53 Resolver DNS Firewall: Kích hoạt DNS Firewall để bảo vệ hệ thống DNS của bạn khỏi các cuộc tấn công DDoS và các mối đe dọa khác.

    • Thực hành:

      1. Review cấu hình Route 53 của bạn và áp dụng các best practice đã học.

      2. Kích hoạt DNSSEC cho tên miền của bạn.

      3. Tạo một IAM policy để kiểm soát quyền truy cập vào các resource Route 53 của bạn.

      4. Sử dụng Alias Record để trỏ đến một ELB/ALB hoặc CloudFront distribution.

Tài liệu đọc thêm: https://docs.aws.amazon.com/whitepapers/latest/hybrid-cloud-dns-options-for-vpc/hybrid-cloud-dns-options-for-vpc.html