Cấu hình tên miền CloudFront
Hướng Dẫn Cấu Hình Tên Miền example-domain.net với CloudFront và Phân Tích Chi Phí Chi Tiết
1. Giới thiệu
- Mục đích: Báo cáo này cung cấp hướng dẫn chi tiết, từng bước để cấu hình tên miền example-domain.net, đã được đăng ký thông qua Amazon Route 53, trỏ đến một phân phối Amazon CloudFront sử dụng giao thức HTTPS an toàn. Đồng thời, báo cáo sẽ phân tích toàn diện các chi phí liên quan đến việc thiết lập và duy trì cấu hình này.
- Tổng quan: Quá trình này liên quan đến ba dịch vụ chính của AWS: Amazon Route 53 (dịch vụ DNS), AWS Certificate Manager (ACM) (quản lý chứng chỉ SSL/TLS) và Amazon CloudFront (mạng phân phối nội dung - CDN). Các bước chính bao gồm: yêu cầu và xác thực chứng chỉ SSL/TLS miễn phí từ ACM, cấu hình phân phối CloudFront để sử dụng tên miền tùy chỉnh và chứng chỉ này, cuối cùng là tạo các bản ghi DNS cần thiết trong Route 53. Báo cáo này nhấn mạnh việc sử dụng các phương pháp tiết kiệm chi phí như chứng chỉ công khai miễn phí từ ACM và bản ghi Alias của Route 53.
- Sự cần thiết: Việc sử dụng CloudFront kết hợp với tên miền tùy chỉnh và HTTPS là rất quan trọng đối với các trang web hiện đại. Nó không chỉ cải thiện hiệu suất tải trang thông qua mạng lưới edge location toàn cầu của CloudFront mà còn tăng cường bảo mật bằng mã hóa HTTPS và xây dựng thương hiệu thông qua việc sử dụng tên miền riêng.1
2. Điều kiện tiên quyết
- Tài khoản AWS: Cần có một tài khoản AWS đang hoạt động với quyền truy cập đủ để quản lý các dịch vụ Route 53, ACM và CloudFront.
- Đăng ký tên miền: Tên miền example-domain.net phải đã được đăng ký thành công và đang được quản lý trong dịch vụ Route 53 của tài khoản AWS này.
- Phân phối CloudFront (Tùy chọn nhưng khuyến nghị): Mặc dù hướng dẫn này bao gồm các bước cấu hình, việc có sẵn một phân phối CloudFront để chỉnh sửa có thể giúp quá trình diễn ra thuận lợi hơn. Tuy nhiên, các bước cũng có thể được áp dụng khi tạo một phân phối mới.
3. Bước 1: Yêu cầu và Xác thực Chứng chỉ SSL/TLS Miễn phí qua ACM
- Bối cảnh: Để kích hoạt HTTPS cho tên miền tùy chỉnh (example-domain.net và www.example-domain.net), cần có một chứng chỉ SSL/TLS. AWS Certificate Manager (ACM) là dịch vụ được sử dụng để cấp phát và quản lý các chứng chỉ này một cách dễ dàng.2
- Yêu cầu cốt lõi: Khu vực us-east-1 (N. Virginia):
- Điểm dữ liệu: Một yêu cầu bắt buộc và cực kỳ quan trọng là chứng chỉ ACM phải được yêu cầu hoặc nhập vào khu vực us-east-1 (N. Virginia) để có thể sử dụng với CloudFront. Điều này áp dụng bất kể khu vực chính mà người dùng đang hoạt động hay vị trí của các tài nguyên AWS khác.
- Giải thích: Các chứng chỉ ACM tại khu vực us-east-1 khi được liên kết với một phân phối CloudFront sẽ tự động được phân phối đến tất cả các địa điểm biên (edge locations) trên toàn cầu mà phân phối đó được cấu hình để sử dụng. Việc tập trung quản lý chứng chỉ cho dịch vụ toàn cầu như CloudFront tại một khu vực duy nhất (us-east-1) giúp đơn giản hóa quá trình, người dùng không cần phải yêu cầu chứng chỉ ở mọi khu vực có edge location. Tuy nhiên, điều này đòi hỏi người dùng phải chủ động chuyển sang khu vực us-east-1 trong giao diện điều khiển ACM khi thực hiện bước yêu cầu chứng chỉ này. Nếu không thực hiện đúng yêu cầu này, chứng chỉ sẽ không hiển thị để lựa chọn trong phần cài đặt của CloudFront distribution.
- Quy trình: Yêu cầu Chứng chỉ Công khai:
- Truy cập giao diện điều khiển ACM, đảm bảo đã chọn khu vực us-east-1 (N. Virginia).2
- Chọn "Request a certificate" -> "Request a public certificate".
- Nhập các tên miền cần bảo vệ: example-domain.net và www.example-domain.net. Có thể sử dụng tên miền ký tự đại diện (wildcard) như *.example-domain.net để bao gồm www và các tên miền phụ khác trong tương lai, nhưng vẫn cần thêm example-domain.net một cách tường minh cho tên miền gốc (apex domain). Hoặc, liệt kê cả example-domain.net và www.example-domain.net một cách rõ ràng.
- Quy trình: Xác thực Tên miền (Khuyến nghị Phương thức DNS):
- Bối cảnh: ACM cần xác minh rằng người yêu cầu có quyền sở hữu hoặc kiểm soát các tên miền đã khai báo trước khi cấp chứng chỉ.
- Lựa chọn Phương thức: Chọn "DNS validation". Phương thức này được ưu tiên hơn "Email validation", đặc biệt khi tên miền được quản lý bởi Route 53 trong cùng tài khoản AWS, vì ACM thường có thể tự động tạo các bản ghi xác thực cần thiết.
- Tạo Bản ghi CNAME:
- ACM sẽ cung cấp thông tin chi tiết về bản ghi CNAME duy nhất (bao gồm Tên bản ghi - Record Name và Giá trị bản ghi - Record Value) cho mỗi tên miền được yêu cầu.
- Bảng: Cấu trúc Bản ghi CNAME Xác thực ACM
Tên miền Yêu cầu | Tên Bản ghi (Ví dụ) | Loại Bản ghi | Giá trị Bản ghi (Ví dụ) |
example-domain.net | _randstring1.example-domain.net. | CNAME | _randstringA.acm-validations.aws. |
www.example-domain.net | _randstring2.www.example-domain.net. | CNAME | _randstringB.acm-validations.aws. |
*(Lưu ý: `randstring` là các chuỗi ký tự ngẫu nhiên do ACM tạo ra)*
* Nếu Route 53 là nhà cung cấp DNS cho `example-domain.net` và nằm trong *cùng một tài khoản AWS*, giao diện ACM có thể hiển thị nút "Create records in Route 53". Nhấp vào nút này sẽ tự động tạo các bản ghi CNAME cần thiết trong Route 53, đơn giản hóa đáng kể quá trình xác thực.[3, 5]
* Nếu cần tạo thủ công (hoặc người dùng muốn tự tạo), hãy truy cập vào hosted zone của `example-domain.net` trong Route 53 và tạo các bản ghi CNAME với Tên và Giá trị chính xác như ACM đã cung cấp.
* **Quá trình Xác thực:** ACM sẽ định kỳ kiểm tra sự tồn tại của các bản ghi CNAME này trong hệ thống DNS. Khi tìm thấy, trạng thái của chứng chỉ sẽ chuyển từ "Pending validation" sang "Issued". Quá trình này có thể mất từ vài phút đến vài giờ. Chứng chỉ phải ở trạng thái "Issued" mới có thể liên kết với CloudFront.
- Chi phí: Chứng chỉ công khai được cấp phát qua ACM và sử dụng với các dịch vụ tích hợp như CloudFront là hoàn toàn miễn phí.2 Việc này mang lại lợi ích đáng kể về chi phí và vận hành. Trước đây, việc mua và gia hạn chứng chỉ SSL/TLS tốn kém và đòi hỏi quy trình thủ công. Chứng chỉ công khai miễn phí của ACM không chỉ loại bỏ chi phí trực tiếp này mà còn tự động hóa việc gia hạn, giảm bớt gánh nặng vận hành cho người dùng triển khai trên các dịch vụ AWS tích hợp. Điều này hoàn toàn trái ngược với chi phí đáng kể của ACM Private CA (khoảng 400 USD/tháng) hoặc chi phí lịch sử của việc sử dụng chứng chỉ tùy chỉnh trên CloudFront. Nhờ đó, việc bảo mật tên miền tùy chỉnh trên CloudFront trở nên dễ tiếp cận và hiệu quả về mặt chi phí.
4. Bước 2: Cấu hình Phân phối CloudFront
- Bối cảnh: Phân phối CloudFront cần được cấu hình để nhận diện các tên miền tùy chỉnh (example-domain.net, www.example-domain.net) và sử dụng chứng chỉ ACM đã được xác thực ở Bước 1 để phục vụ lưu lượng truy cập HTTPS.
- Quy trình: Thêm Alternate Domain Names (CNAMEs):
- Truy cập giao diện điều khiển CloudFront và chọn phân phối cần cập nhật.
- Vào tab "General" và nhấp "Edit".12
- Trong trường "Alternate Domain Names (CNAMEs)", nhập example-domain.net và www.example-domain.net. Có thể phân tách bằng dấu phẩy hoặc nhập mỗi tên miền trên một dòng mới.12
- Yêu cầu: Đảm bảo các tên miền này được nhập bằng chữ thường.16
- Quy trình: Liên kết Chứng chỉ ACM:
- Trong cùng màn hình chỉnh sửa, tìm đến mục "SSL Certificate".
- Chọn "Custom SSL Certificate".12
- Từ danh sách thả xuống, chọn chứng chỉ ACM đã tạo ở Bước 1 (tại khu vực us-east-1). Chứng chỉ có thể được nhận dạng qua ARN hoặc các tên miền mà nó bao phủ. Nếu có nhiều chứng chỉ, có thể cần phải dán trực tiếp ARN của chứng chỉ.12
- Yêu cầu: Chứng chỉ phải ở trạng thái "Issued" và được tạo/nhập tại khu vực us-east-1.
- Quy trình: Đảm bảo Chọn SNI (Server Name Indication):
- Tìm cài đặt liên quan đến hỗ trợ máy khách (thường có tên "Security Policy" hoặc tương tự).
- Đảm bảo tùy chọn tương ứng với SNI được chọn. Đây thường là tùy chọn mặc định và được khuyến nghị, có thể được gắn nhãn là "Clients that Support Server Name Indication (SNI)".12
- Tuyệt đối tránh chọn tùy chọn liên quan đến "Dedicated IP" hoặc "Legacy Clients" (đôi khi được gắn nhãn "All Clients").12 Việc chọn tùy chọn Dedicated IP sẽ gây ra một khoản phí hàng tháng rất lớn (600 USD cho mỗi chứng chỉ, tính theo giờ 1). Tùy chọn này cấp phát các địa chỉ IP chuyên dụng tại mỗi edge location cho chứng chỉ, một tính năng chỉ cần thiết cho các máy khách hoặc trình duyệt cực kỳ cũ không hỗ trợ SNI. SNI cho phép nhiều tên miền/chứng chỉ chia sẻ cùng một địa chỉ IP, làm cho nó trở nên linh hoạt và hiệu quả hơn về chi phí. Lựa chọn SNI (mặc định/khuyến nghị) cung cấp cùng mức độ bảo mật mã hóa cho các máy khách hiện đại mà không tốn thêm chi phí lưu trữ chứng chỉ.17 Việc vô tình chọn Dedicated IP là một lỗi phổ biến và tốn kém.19 Đây là một bước tránh chi phí quan trọng.
- Khuyến nghị: Đặt Viewer Protocol Policy:
- Truy cập tab "Behaviors" của phân phối.
- Chỉnh sửa (các) hành vi bộ nhớ đệm liên quan (thường là hành vi "Default (*)").
- Đặt "Viewer Protocol Policy" thành "Redirect HTTP to HTTPS" hoặc "HTTPS Only".13
- Giải thích: "Redirect HTTP to HTTPS" tự động chuyển hướng người dùng truy cập trang web qua HTTP sang phiên bản HTTPS an toàn (trả về mã trạng thái 301). "HTTPS Only" chặn hoàn toàn truy cập HTTP (trả về mã trạng thái 403). Tùy chọn chuyển hướng thường được ưu tiên hơn vì trải nghiệm người dùng tốt hơn.13 Lưu ý rằng CloudFront tính phí cho cả yêu cầu HTTP ban đầu và yêu cầu HTTPS được chuyển hướng sau đó khi sử dụng tùy chọn này.15
- Lưu Thay đổi: Lưu cấu hình phân phối. Lưu ý rằng các cập nhật phân phối cần thời gian để được triển khai trên toàn cầu (thường từ 5-20 phút). Trạng thái sẽ chuyển từ "Deploying" sang "Deployed".
5. Bước 3: Trỏ Tên miền đến CloudFront bằng Bản ghi Alias của Route 53
- Bối cảnh: Bước cuối cùng là cấu hình các bản ghi DNS trong Route 53 để khi người dùng nhập example-domain.net hoặc www.example-domain.net vào trình duyệt, yêu cầu của họ được định tuyến đến phân phối CloudFront.
- Khái niệm: Bản ghi Alias so với CNAME:
- Hạn chế của CNAME: Bản ghi CNAME tiêu chuẩn của DNS không thể được tạo cho tên miền gốc (apex, root, hoặc naked domain - ví dụ: example-domain.net). Chúng chỉ hoạt động cho các tên miền phụ (ví dụ: www.example-domain.net).13 Các truy vấn CNAME cũng phải chịu phí truy vấn tiêu chuẩn của Route 53.31
- Ưu điểm của Bản ghi Alias: Bản ghi Alias của Route 53 là một phần mở rộng dành riêng cho AWS. Chúng hoạt động tương tự như CNAME nhưng có thể được sử dụng cho tên miền gốc. Quan trọng hơn, các truy vấn đến bản ghi Alias trỏ đến các tài nguyên AWS cụ thể như phân phối CloudFront, Elastic Load Balancer (ELB), hoặc bucket S3 được cấu hình làm website endpoint là hoàn toàn miễn phí. Route 53 cũng tự động theo dõi các thay đổi địa chỉ IP của tài nguyên đích (ví dụ: các địa chỉ IP của phân phối CloudFront).
- Việc sử dụng bản ghi Alias cho cả example-domain.net và www.example-domain.net mang lại hai lợi ích chính: 1) Cho phép tên miền gốc (example-domain.net) trỏ trực tiếp đến CloudFront, điều không thể thực hiện với CNAME tiêu chuẩn. 2) Loại bỏ chi phí truy vấn DNS của Route 53 cho lưu lượng truy cập đến phân phối CloudFront, giúp tiết kiệm chi phí trực tiếp so với việc sử dụng CNAME tiêu chuẩn (nếu có thể) hoặc các nhà cung cấp DNS khác có thể tính phí cho tất cả các truy vấn. Điều này làm cho Route 53 trở thành lựa chọn DNS hiệu quả nhất về chi phí và chức năng khi định tuyến lưu lượng đến các tài nguyên AWS được hỗ trợ như CloudFront.
- Quy trình: Tạo Bản ghi Alias loại 'A' cho example-domain.net (Tên miền gốc):
- Truy cập giao diện điều khiển Route 53 -> Hosted zones -> Chọn hosted zone example-domain.net.
- Nhấp "Create record".
- Record name: Để trống (biểu thị tên miền gốc).
- Record type: Chọn "A - Routes traffic to an IPv4 address and some AWS resources".
- Alias: Chuyển thành "Yes".
- Route traffic to: Chọn "Alias to CloudFront distribution" từ danh sách thả xuống đầu tiên.
- Choose distribution: Chọn phân phối CloudFront của bạn từ danh sách thả xuống/hộp văn bản thứ hai (sẽ liệt kê các phân phối theo tên miền *.cloudfront.net hoặc cho phép dán tên miền).
- Routing Policy: Chọn "Simple routing" (trừ khi cần các chính sách định tuyến nâng cao như latency hoặc geolocation, những chính sách này sẽ phát sinh phí truy vấn ngay cả đối với bản ghi Alias 31).
- Evaluate Target Health: Tùy chọn. Giữ là "No" đối với đích Alias là CloudFront vì kiểm tra tình trạng của Route 53 không áp dụng trực tiếp ở đây như đối với ELB/EC2.
- Nhấp "Create records".
- Quy trình: Tạo Bản ghi Alias loại 'A' cho www.example-domain.net (Tên miền phụ):
- Lặp lại quy trình trên trong cùng hosted zone.
- Record name: Nhập www.30
- Record type: Chọn "A".
- Alias: Chuyển thành "Yes".
- Route traffic to: Chọn "Alias to CloudFront distribution".
- Choose distribution: Chọn cùng phân phối CloudFront như đã chọn cho tên miền gốc.
- Routing Policy: Chọn "Simple routing".
- Evaluate Target Health: Tùy chọn ("No").
- Nhấp "Create records".
- (Tùy chọn) Quy trình: Tạo Bản ghi Alias loại 'AAAA' cho IPv6:
- Các phân phối CloudFront hỗ trợ IPv6 theo mặc định.14
- Để cho phép truy cập IPv6 qua tên miền tùy chỉnh, lặp lại các bước tạo bản ghi cho cả tên miền gốc (để trống Record name) và www (Record name là www), nhưng chọn Record type: "AAAA - Routes traffic to an IPv6 address and some AWS resources".
- Trỏ các bản ghi Alias AAAA này đến cùng phân phối CloudFront.
- Bảng: Tóm tắt Bản ghi Route 53 Đã tạo
Tên Bản ghi | Loại Bản ghi | Alias | Giá trị/Định tuyến đến (Loại Điểm cuối) | Đích Alias (Tên miền CloudFront) |
example-domain.net | A | Yes | Alias to CloudFront distribution | d111111abcdef8.cloudfront.net (Ví dụ) |
www.example-domain.net | A | Yes | Alias to CloudFront distribution | d111111abcdef8.cloudfront.net (Ví dụ) |
example-domain.net | AAAA | Yes | Alias to CloudFront distribution | d111111abcdef8.cloudfront.net (Ví dụ) |
www.example-domain.net | AAAA | Yes | Alias to CloudFront distribution | d111111abcdef8.cloudfront.net (Ví dụ) |
*(Lưu ý: Cần thay thế tên miền CloudFront ví dụ bằng tên miền thực tế của phân phối)*
6. Bước 4: Kiểm tra
- Lan truyền DNS: Các thay đổi DNS cần thời gian để lan truyền trên toàn cầu. Quá trình này có thể mất từ vài phút đến vài giờ, mặc dù thường nhanh hơn nhiều khi sử dụng tích hợp Route 53/CloudFront.14
- Công cụ Kiểm tra: Sử dụng các công cụ như dig (dòng lệnh) hoặc các trang web kiểm tra DNS trực tuyến (ví dụ: whatsmydns.net) để xác minh rằng example-domain.net và www.example-domain.net phân giải thành các địa chỉ IP của CloudFront (bản ghi A và có thể cả AAAA). Lệnh dig đối với bản ghi Alias sẽ hiển thị các bản ghi A/AAAA kết quả, chứ không phải tên miền đích của alias.
- Kiểm tra Trình duyệt: Truy cập https://example-domain.net và https://www.example-domain.net trong trình duyệt web.
- Xác minh nội dung trang web tải chính xác.
- Kiểm tra chỉ báo bảo mật của trình duyệt (biểu tượng ổ khóa) để xác nhận kết nối HTTPS là an toàn và sử dụng chứng chỉ ACM đã cấp cho example-domain.net.
- Xác nhận rằng việc truy cập qua HTTP sẽ chuyển hướng sang HTTPS (nếu đã cấu hình ở Bước 2).
7. Phân tích Chi phí Toàn diện
- Giới thiệu: Phần này phân tích chi tiết tất cả các chi phí tiềm năng liên quan đến cấu hình đã thiết lập, nhấn mạnh chi phí nhìn chung là thấp khi áp dụng các phương pháp tốt nhất của AWS.
- a) Đăng ký/Gia hạn Tên miền:
- Chi phí ban đầu được đề cập là 15 USD, đây là mức giá thông thường cho tên miền .net. Phí gia hạn hàng năm cho tên miền .net thường dao động trong khoảng 10-20 USD, được thanh toán qua Route 53 Domain Registration.33
- b) Route 53 Hosted Zone:
- Chi phí: 0.50 USD mỗi tháng cho 25 hosted zone đầu tiên. Vì example-domain.net yêu cầu một hosted zone, chi phí cố định sẽ là 0.50 USD/tháng.31
- Lưu ý: Chi phí này được tính hàng tháng và không được hoàn lại theo tỷ lệ nếu xóa giữa tháng (trừ khi xóa trong vòng 12 giờ sau khi tạo).31 Chi phí này bao gồm tối đa 10,000 bản ghi; các bản ghi bổ sung sẽ tốn thêm phí nhưng không có khả năng xảy ra trong trường hợp sử dụng này.31
- c) Truy vấn DNS Route 53:
- Truy vấn Tiêu chuẩn: Chi phí là 0.40 USD cho mỗi triệu truy vấn (cho 1 tỷ truy vấn đầu tiên mỗi tháng).31 Các loại truy vấn khác (Latency, Geolocation) có chi phí cao hơn.31
- Truy vấn Alias đến CloudFront: Miễn phí. Các truy vấn đến bản ghi Alias trỏ đến các phân phối CloudFront (và các tài nguyên AWS cụ thể khác) không bị tính phí. Bằng cách sử dụng bản ghi Alias như hướng dẫn ở Bước 3, người dùng tránh được phí truy vấn tiêu chuẩn 0.40 USD/triệu truy vấn cho tất cả các lượt tra cứu DNS phân giải đến phân phối CloudFront của họ. Nếu sử dụng CNAME tiêu chuẩn hoặc nhà cung cấp DNS khác, chi phí truy vấn này có thể tăng lên, đặc biệt đối với các trang web có lưu lượng truy cập cao. Do đó, đối với example-domain.net trỏ đến CloudFront qua bản ghi Alias, chi phí truy vấn Route 53 thực tế sẽ là 0 USD.
- d) AWS Certificate Manager (ACM):
- Chứng chỉ Công khai: Miễn phí khi sử dụng với các dịch vụ tích hợp như CloudFront.2 Bao gồm việc gia hạn tự động do ACM xử lý.
- Chứng chỉ Riêng tư / Private CA: Không cần thiết cho trường hợp sử dụng này. Cần lưu ý rằng Private CA có chi phí đáng kể (400 USD/tháng) để làm nổi bật giá trị của việc cung cấp chứng chỉ công khai miễn phí.
- e) Sử dụng CloudFront (Sau khi hết Free Tier):
- Free Tier: CloudFront cung cấp một gói miễn phí luôn có sẵn rất hào phóng, bao gồm: 1 TB Data Transfer Out (DTO) mỗi tháng, 10 triệu yêu cầu HTTP/HTTPS mỗi tháng, và 2 triệu lượt gọi CloudFront Function mỗi tháng.1 Hạn mức này được tổng hợp trên tất cả các khu vực (trừ Trung Quốc và GovCloud).40
- Data Transfer Out (DTO):
- Đây là yếu tố chi phí chính sau khi vượt qua hạn mức miễn phí. Chi phí được tính dựa trên mỗi GB dữ liệu được truyền từ các edge location của CloudFront ra internet.
- Chi phí được tính theo bậc (giá mỗi GB giảm khi khối lượng tăng) và thay đổi đáng kể tùy thuộc vào khu vực địa lý của người dùng cuối.1
- Bảng: Chi phí Data Transfer Out của CloudFront (Bậc đầu tiên sau Free Tier)
Nhóm Khu vực | Giá mỗi GB (10 TB đầu tiên/tháng) |
Hoa Kỳ, Mexico, Canada, Châu Âu, Israel | 0.085 USD |
Nam Phi, Kenya, Trung Đông | 0.110 USD |
Nam Mỹ | 0.110 USD |
Nhật Bản | 0.114 USD |
Úc, New Zealand | 0.114 USD |
Hồng Kông, Indonesia, Philippines, Singapore, Hàn Quốc, Đài Loan, Thái Lan | 0.120 USD |
Ấn Độ | 0.109 USD |
*(Nguồn dữ liệu tham khảo: [1, 35])*
* **Data Transfer *vào* CloudFront:** Dữ liệu được truyền *từ* các nguồn gốc AWS (như S3, EC2, ELB) *đến* các edge location của CloudFront là **miễn phí**.[40, 20, 25, 46, 52, 53] Việc miễn phí truyền dữ liệu từ nguồn gốc AWS đến CloudFront là một tối ưu hóa chi phí quan trọng. Nếu nội dung được phục vụ trực tiếp từ S3 hoặc EC2 ra internet, người dùng sẽ phải trả phí DTO tiêu chuẩn (bắt đầu từ khoảng 0.09 USD/GB sau 100GB miễn phí toàn cầu). Bằng cách sử dụng CloudFront, chỉ có việc truyền dữ liệu từ CloudFront đến người dùng bị tính phí (sau 1TB miễn phí) và phần từ nguồn gốc đến CloudFront là miễn phí. Điều này khuyến khích việc sử dụng CloudFront ngay cả đối với lưu lượng truy cập vừa phải bắt nguồn từ AWS, vì nó thay thế hiệu quả chi phí DTO nguồn gốc tiềm ẩn bằng việc truyền dữ liệu miễn phí từ nguồn gốc đến CF cộng với chi phí DTO từ CF đến người dùng có thể rẻ hơn (do các bậc giá/khu vực/gói miễn phí).
* **Yêu cầu HTTP/HTTPS:**
* Chi phí được tính cho mỗi 10,000 yêu cầu sau 10 triệu yêu cầu miễn phí mỗi tháng.
* Yêu cầu HTTPS có chi phí cao hơn một chút so với yêu cầu HTTP. Chi phí cũng thay đổi theo khu vực.[1, 20, 24, 25, 35, 36, 39, 49, 50, 51]
* **Bảng: Chi phí Yêu cầu CloudFront (mỗi 10,000 yêu cầu)**
Nhóm Khu vực | Giá HTTP | Giá HTTPS |
Hoa Kỳ, Mexico, Canada | 0.0075 USD | 0.0100 USD |
Châu Âu, Israel, Nam Phi, Kenya, Trung Đông, Nhật Bản, Châu Á TBD (trừ Úc/NZ), Ấn Độ | 0.0090 USD | 0.0120 USD |
Úc, New Zealand | 0.0090 USD | 0.0125 USD |
Nam Mỹ | 0.0160 USD | 0.0220 USD |
*(Nguồn dữ liệu tham khảo: [35, 49])*
* **Các Chi phí CloudFront Tiềm năng Khác (Đề cập ngắn gọn):**
* Yêu cầu Vô hiệu hóa (Invalidation): 1,000 đường dẫn đầu tiên/tháng miễn phí, sau đó 0.005 USD/đường dẫn.[1, 20, 24, 25, 37, 50, 51] Khuyến nghị sử dụng phiên bản tệp thay thế nếu cần cập nhật thường xuyên.[1]
* Nhật ký Thời gian thực (Real-time Logs): 0.01 USD cho mỗi triệu dòng nhật ký.[1, 24, 25, 35, 49] Nhật ký tiêu chuẩn miễn phí nhưng ít chi tiết/thời gian thực hơn.[37]
* CloudFront Functions/Lambda@Edge: Phát sinh chi phí cho mỗi lượt gọi/thời gian chạy.[1, 20, 24, 35, 49] Không cần thiết cho thiết lập cơ bản này.
* Mã hóa Cấp độ Trường (Field-Level Encryption): 0.02 USD cho mỗi 10,000 yêu cầu.[1, 24, 25, 35, 49, 50] Không cần thiết ở đây.
- f) Chi phí Cao của Dedicated IP Custom SSL (Cần tránh):
- Chi phí: 600 USD mỗi tháng, cho mỗi chứng chỉ SSL tùy chỉnh được liên kết với một phân phối sử dụng tùy chọn này. Chi phí được tính theo giờ.1
- Lý do: Chỉ cần thiết cho các máy khách/trình duyệt rất cũ không hỗ trợ SNI (Server Name Indication). Hầu hết các trình duyệt và máy khách hiện đại đều hỗ trợ SNI.17
- Khuyến nghị: Tuyệt đối không nên chọn tùy chọn này trừ khi có nhu cầu cụ thể đã được chứng minh để hỗ trợ các máy khách lỗi thời. SNI cung cấp cùng mức độ bảo mật cho người dùng hiện đại mà không tốn thêm chi phí cho việc liên kết chứng chỉ.12 Giao diện điều khiển AWS cho phép chọn tùy chọn này, vì vậy cần nhận thức rõ để tránh.18
- Bảng: Tóm tắt Chi phí Hợp nhất
Thành phần Dịch vụ | Cơ sở Tính phí | Chi phí/Tỷ lệ Ước tính | Ghi chú / Ảnh hưởng Free Tier |
Gia hạn Tên miền (example-domain.net) | Hàng năm | ~15-20 USD | Phí hàng năm |
Route 53 Hosted Zone | Mỗi Zone/Tháng | 0.50 USD | Chi phí cố định hàng tháng |
Truy vấn DNS Route 53 (Alias đến CF) | Mỗi triệu truy vấn | 0.00 USD | Miễn phí do đích Alias là CloudFront |
Chứng chỉ Công khai ACM | Mỗi Chứng chỉ | 0.00 USD | Miễn phí cho chứng chỉ công khai trên CF |
CloudFront DTO | Mỗi GB/Tháng | Thay đổi theo Khu vực (VD: 0.085 USD/GB US/EU) | 1 TB đầu tiên Miễn phí |
Yêu cầu HTTPS CloudFront | Mỗi 10,000 Yêu cầu/Tháng | Thay đổi theo Khu vực (VD: 0.0100 USD US/EU) | 10 triệu yêu cầu đầu tiên Miễn phí |
CloudFront Dedicated IP SSL | Mỗi Chứng chỉ/Tháng | 600.00 USD | Tránh trừ khi thực sự cần thiết |
8. Kết luận
- Tóm tắt: Báo cáo đã trình bày chi tiết các bước cấu hình tên miền example-domain.net với CloudFront và HTTPS, sử dụng chứng chỉ miễn phí từ ACM (tại us-east-1) và bản ghi Alias của Route 53. Quá trình này bao gồm yêu cầu và xác thực chứng chỉ, cập nhật cấu hình CloudFront và tạo bản ghi DNS chính xác.
- Điểm chính: Các điểm chi phí quan trọng bao gồm chi phí cố định thấp hàng tháng cho Hosted Zone (0.50 USD) và phí gia hạn tên miền hàng năm. Các dịch vụ miễn phí được tận dụng hiệu quả là chứng chỉ công khai ACM và truy vấn DNS Alias đến CloudFront. CloudFront cung cấp một gói miễn phí đáng kể (1TB DTO, 10 triệu yêu cầu/tháng). Sau khi hết hạn mức miễn phí, chi phí chính sẽ đến từ Data Transfer Out và số lượng yêu cầu HTTP/HTTPS, phụ thuộc vào lưu lượng và khu vực địa lý của người dùng. Điều quan trọng nhất về mặt chi phí là việc sử dụng SNI (mặc định) thay vì tùy chọn Dedicated IP SSL (600 USD/tháng) để liên kết chứng chỉ tùy chỉnh trong CloudFront.
- Lời kết: Việc tuân theo các bước trong hướng dẫn này sẽ giúp thiết lập một cấu hình hiệu suất cao, an toàn và tối ưu về chi phí cho example-domain.net trên AWS. Khuyến nghị người dùng nên theo dõi việc sử dụng tài nguyên và chi phí thông qua AWS Cost Explorer và thiết lập cảnh báo thanh toán (Billing alerts) để quản lý ngân sách hiệu quả.46