Tiếp tục với chủ đề Guildline Settings các module function cơ bản trên Amazon Web Service, tiếp tục mình xin được giới thiệu về Route 53 trên Amazon Web Services
1. Route 53
Định nghĩa về Route 53
Khái niệm cơ bản: Route 53 là nơi người dùng có thể config và quản lý web domains của website hay application người dùng đang làm chủ trên AWS Định nghĩa của AWS: Amazon Route 53 thực hiện 3 chức năng chính như sau:
- Đăng kí domain (Domain registration): Amazon Route 53 cho phép người dùng đăng kí domain name chẳng hạn như example.com
- Domain Name System (DNS) Service: Amazon Route 53 sẽ tiến hành "dịch" các domain thân thiện với người dùng như www.example.com thành địa chỉ IP Address như 192.0.2.1. Amazon Route 53 respond với các DNS query sử dugnj mạng network global của các server DNS có thẩm quyền, để giảm thiểu độ trễ (latency)
- Health Checking: Amazon Route 53 gửi tự động các request xuyên suốt mạng internet tới application của người dùng, để xác thực các địa chỉ này có thể kết nối tới, khả dụng và đảm bảo các chức năng hoạt động bình thường.
Tìm hiểu về Route 53 basics
Chúng ta cùng tìm hiểu một cách tổng quan dựa trên ví dụ để hiểu rõ hơn cách mà domains và DNS fit với nhau để đảm bảo tính kết nối tới website của người dùng
Câu hỏi đặt ra: Trong xử lý nội bộ khi user nhập vào domain như là www.example.com vào web browser
DNS Server sẽ đóng vai trò là database của website domains và địa chỉ IP tương ứng. Khi website gửi tới DNS Server một domain name thì phía DNS Server sẽ response trả về địa chỉ IP chính xác để có tìm thấy website này trên Internet
Sơ đồ cấu trúc sử dụng Route 53 trên AWS:
Pricing/Cost của Route53:
Lưu ý: Free Tier không khả dụng cho Route 53. Bao gồm các services như sau:
- Số lượng host zone
- Traffic flow
- Standard query
- Latency dựa trên routing
- Geo DNS routing
- Heath check
- Đăng kí và transfer domain Chi tiết tham khảo: https://aws.amazon.com/route53/pricing/
2. Sử dụng Route 53
Phần này phía Amazon Web Service sẽ charge phí nên mình sẽ chỉ điểm qua một số đầu mục quan trọng.
Config Route 53 Đăng kí domain:
- Tìm kiếm và chọn domain name available
- Fill các thông tin vào mẫu Contact Details page
- Review chi tiết và thanh toán: Amazon Account sẽ bị charge phí ngay lập tức cho bất kì domain nào được đăng kí hay transfer. Trong quá trình này, Route 53 cũng sẽ tạo ra "hosted zone" tự động cho domain mới
Hosted zone: Nơi lưu trữ các thông tin và quản lý routing của domain người dùng
- Hoàn thành việc thanh toán và đợi việc khởi tạo domain hoàn tất: Có thể mất từ 5~15 phút
Hosted Zones và Record Sets:
-
Điều hướng tới Hosted Zones và chọn domains user vừa đăng kí: Ở đây, người dùng có thể xem được toàn bộ record sets hiện tại record sets được điền sẵn chính là basic DNS record sets mà AWS config cho người dùng
-
Tạo 2 type A record sets cho người dùng là domain route tới ELB Một record set cho domain của người dùng với prefix "www" và một domain khác không bao gồm prefix "www" Chọn YES cho mục "Allias" Chọn ELB cho mục "Allias Target" Giữ phần "Routing Policy" là Simple Chúng ta có thể chọn "Evaluate Target Health" là No để không bị charge thêm phí
-
Tạo record set và vậy là DONE Có thể mất từ 1~5 phút để tạo record set tới DNS servers Sau khi tạo xong record set chúng tacos thể truy cập trực tiếp domain từ web browser để xem domain có hoạt động hay không
3. CloudFront
CloudFront là gì?
Định nghĩa cơ bản: CloudFront là một AWS Service để nhân rộng data, video và applications trên toàn thể giới để giảm độ trễ (latency), mục đích để người dùng có thể access tới resource với tốc độ nhanh nhất. Định nghĩa của AWS: Amazon CloudFront là một web service để tăng tốc việc phân phối web content tĩnh và động, như là .html, .css, .js và các file hình ảnh tới người dùng. CloudFront gửi content của bạn thông qua network toàn cầu tới các data center được gọi là edge locations. Khi một người dùng request access tới các content bạn cung cấp với CloudFront, user sẽ được định tuyến tới edge location để cung cấp cho user resource họ cần với độ trễ thấp nhất, việc này làm tăng performance của hệ thống. Nếu content đã ở trong edge location với latency thấp nhất, thì CloudFront sẽ gửi đến người dùng ngay lập tức. Tuy nhiên nếu các content này chưa tồn tại ở phía edge location, thì CloudFront sẽ get các resource này ở nguồn như là S3 bucket.
Khởi tạo Basic CloudFront để phân phối cho S3 Object
-
Upload data muốn distirbute cho người dùng lên S3 (Để CloudFront hoạt động, thì cần Public quyền read permission cho từng object)
-
Từ CloudFront Console, chọn Distribution
-
Chọn delivery method cho page content, trong mục Web, chọn Get Started
-
Trên Page Create Distribution, dưới mục Origin Settings, chọn Amazon S3 bucket vừa tạo. Accept toàn bộ default values cho OriginID, Origin Path, Restrict Bucket Access, và Origin Custom Headers.
-
Dưới mục Default Behavior Settings, accept toàn bộ default value, và phía CloudFront sẽ: Forward toàn bộ request sử dụng CloudFront URL tới S3 Bucket đã setting Allow HTTP(S) tới các Object Cache các object trên CloudFront edge location trong vòng 24 giờ Xem AWS document cho list toàn bộ settings liên quan đến default cache behavior
-
Dưới mục Distribute Settings, set các option mong muốn với các key items sau: Price Class: Set maximun price chúng ta muốn trả cho CloudFront service. Default thì CloudFront sẽ cung cấp toàn bộ object từ edge locations trên toàn bộ lãnh thổ CloudFront regions đã có Alternate Domain names: Tạo CNAME để access tới object /images/image.jpg sử dụng các địa chỉ như : http://example.com/images/image.jpg với các địa chỉ như: http://aloalo.cloudfront.net/images/image.jpg Distribution State: Chọn Enable Xem toàn bộ AWS document cho full list setting liên quan tới default cache behavior
-
Chọn Create Distribution, sau khi distribute, giá trị status cột distribution sẽ chuyển từ InProgress thành Deployed
-
Đảm bảo rằng các domain name thay thế được config trên Route 53 và được set trên CloudFront
Nguồn: linuxacademy.com