Lộ trình
Amazon Web ServicesAssociateTuần 3: Kiến trúc & bảo mậtBài 15 / 30

Ngày 15: High Availability patterns

Thời lượng: 45 phút
Mục tiêu: 2 nhiệm vụ chính
Tiến độ lộ trình
aws-saa-c03ngày 15
hoàn thành15 / 30 bài
Bối cảnh bài học

Thiết kế High Availability bằng failure domain, redundancy, health detection và state management; không đồng nhất HA với backup.

đọc hiểuthực hànhcheckpoint
Bài giảng hôm nay

Học hiểu, rồi mới thực hành

Thiết kế High Availability bằng failure domain, redundancy, health detection và state management; không đồng nhất HA với backup.

Bắt đầu đọc bài giảng

Nhiệm vụ bài học hôm nay

  • Học thiết kế Multi-AZ, Multi-Region
  • Phân tích 3 case study kiến trúc HA phổ biến
Instructor walkthrough

Bài giảng chi tiết: từ bài toán đến bằng chứng

Scenario xuyên suốt

Một hệ thống “multi-AZ” vẫn có thể mất dịch vụ vì database public, session local hoặc health check sai. Bài học kiểm tra availability end-to-end chứ không chỉ đếm số AZ.

01Đọc bài toán

Xác định actor, workload, constraint và trạng thái cuối cần đạt.

02Vẽ luồng / boundary

Chỉ ra request, dependency, identity và failure domain trước khi chọn công cụ.

03Chọn và thực hành

Thay đổi nhỏ nhất trong lab cô lập; command nào cũng phải nói rõ nó kiểm tra điều gì.

04Kiểm chứng / recovery

Đối chiếu trạng thái thực tế, tạo một failure variant và ghi cách hoàn tác.

Cách nối lý thuyết với thực tế
  • HA giảm ảnh hưởng của failure domain bằng redundancy và failover.
  • Multi-AZ, load balancing, ASG và managed database giải quyết các lớp khác nhau.
  • State/session/data phải externalize hoặc replicate; compute redundancy không tự bảo vệ data.
  • Health check, dependency, deployment và observability quyết định failover có thực sự hoạt động.

HA end-to-end

Availability cần đi qua entry, compute, dependency và data. Hai AZ không giúp nếu session local, database single-AZ hoặc health check không phản ánh dependency.

Bài tập

Tạo failure matrix cho instance/AZ/database/dependency. Ghi detection, failover, data impact, RTO/RPO và test evidence. Sau đó review một design “multi-AZ” để tìm phần redundancy giả.

Bài giảng chuyên sâu

HA end-to-end và redundancy giả

Availability không được đo bằng số AZ trên sơ đồ mà bằng behavior khi failure xảy ra. Entry point, load balancer, compute, dependency, database, session và deployment đều nằm trên request path. Hai AZ vô nghĩa nếu health check chỉ kiểm tra process, session nằm local hoặc database vẫn single-AZ.

Tách HA khỏi backup/DR: HA giảm downtime trong failure dự kiến; backup khôi phục dữ liệu; DR phục hồi khi region/site hoặc sự cố lớn. Externalize state, đặt failure domain đúng và test failover mới chứng minh thiết kế.

Bài tập: failure matrix cho instance, AZ, ALB, DB và dependency gồm detection, failover, data impact, RTO/RPO và test evidence. Failure drill: AZ mất trong deployment và session store unavailable.

Terminal reference

Command list và cách dùng

Chạy từng lệnh theo đúng thứ tự. Trước các lệnh có thể tạo hoặc thay đổi tài nguyên, hãy kiểm tra profile, account và region.

Commands · read-only checkpoints
aws sts get-caller-identity --profile study
aws ec2 describe-instances --profile study --query "Reservations[].Instances[].{Id:InstanceId,AZ:Placement.AvailabilityZone,State:State.Name}" --output table
Hands-on lab

Thực hành theo scenario

Vẽ failure matrix cho instance, AZ, load balancer, database và dependency. Với mỗi failure ghi detection, failover, data impact, expected RTO/RPO và test evidence. Thiết kế một game day read-only trên sơ đồ, không cố tình xóa production resource.

Evidence checkpoint

Kiểm chứng kết quả

Không coi lệnh chạy thành công là đủ. Hãy đối chiếu output với trạng thái mong đợi:

  • Mỗi lớp có failure mode và control.
  • Phân biệt HA với backup/DR.
  • Nêu state/session implication khi instance bị thay.
  • Đặt được RTO/RPO và cách kiểm chứng failover.
Transfer to exam / production

Bẫy thường gặp và trade-off

Multi-AZ là một pattern, không phải đáp án cho mọi failure. Đọc xem đề hỏi tiếp tục phục vụ, khôi phục dữ liệu hay giảm downtime deploy.

Checkpoint · 3 phút

Kiểm tra nhanh

Câu hỏi: Điều nào cần thêm để HA của application không làm mất session khi instance bị thay?

Kết thúc bài

Checklist trước khi sang Ngày 2