Chọn thiết kế sẵn sàng trên nhiều zone và region
Đã hoàn tấtSo sánh tính sẵn sàng cao, Multi-AZ và thiết kế đa region. Theo dõi toàn bộ đường đi của request và kiểm thử sự cố mà mỗi thiết kế phải chịu được.
Xuất bản bởi TaigaCách chúng tôi viết
Kiểm tra mức hiểuHai bản sao web chạy trong hai AZ khác nhau. Cả hai đều cần cùng một cơ sở dữ liệu trong một AZ. Điều này chứng minh điều gì?Làm bài tập
Bạn sẽ học gì
- Giải thích sự khác nhau giữa Availability Zone và Region.
- Tìm các phụ thuộc dùng chung có thể làm thiết kế sẵn sàng mất tác dụng.
- So sánh giá trị kinh doanh và chi phí vận hành của triển khai đa region.
Bắt đầu từ thao tác của người dùng
Tính sẵn sàng cao (HA) nhằm giữ cho dịch vụ có thể sử dụng được khi một số thành phần gặp sự cố. Xác định thế nào là sử dụng được trước khi chọn kiến trúc. Một trang đặt chỗ tải được nhưng mọi request đặt chỗ đều thất bại không phải là dịch vụ đặt chỗ sẵn sàng.
Đặt mục tiêu mức dịch vụ (SLO) cho thao tác quan trọng. Xác định request nào được tính, thế nào là thành công và khoảng thời gian đo. SLA của dịch vụ cloud mô tả cam kết của nhà cung cấp đó. Nó không xác lập tính sẵn sàng được đo của ứng dụng của bạn.
Ví dụ, tính sẵn sàng 99,9% đo theo thời gian cho phép 43,2 phút không sẵn sàng trong một tháng 30 ngày. SLO đo theo request có mẫu số khác. Cả hai cách đo đều không cho biết bạn có thể mất bao nhiêu dữ liệu hoặc bảo đảm thời gian tối đa của từng lần gián đoạn.
Hiểu các ranh giới lỗi
AWS Availability Zone (AZ) là một vị trí hạ tầng được cô lập trong một Region. Một Region chứa nhiều AZ. Thiết kế đa region phân bố các thành phần workload trên nhiều Region. Các nhà cung cấp khác có ranh giới và hành vi dịch vụ riêng; hãy kiểm tra dịch vụ đã chọn.
| Thiết kế | Sự cố mà thiết kế có thể giúp xử lý | Phần vẫn cần thiết kế |
|---|---|---|
| Nhiều process trong một AZ | Process hoặc host gặp sự cố | Mất AZ và các phụ thuộc dùng chung |
| Multi-AZ trong một Region | Mất một AZ | Sự cố cấp region, dữ liệu bị hỏng và khôi phục |
| Nhiều Region | Mất một Region | Định tuyến, tính nhất quán dữ liệu, năng lực xử lý và dịch vụ dùng chung |
Đây là các khả năng thiết kế, không phải bảo đảm về tính sẵn sàng. Một nhãn gọi không chứng minh mọi thành phần cần thiết đều sử dụng ranh giới dự kiến.
Theo dõi toàn bộ đường đi của request
Xét một dịch vụ đặt chỗ giả định. Các bản sao web chạy trong hai AZ. Cả hai sử dụng một cơ sở dữ liệu và một gateway kết nối ra ngoài trong AZ A. Gateway cần thiết để gọi nhà cung cấp thanh toán.
Nếu AZ A gặp sự cố, bản sao web trong AZ B có thể vẫn hoạt động bình thường nhưng việc đặt chỗ vẫn thất bại. Nhóm phải đánh giá cơ sở dữ liệu, đường mạng, nhà cung cấp danh tính, phụ thuộc thanh toán và định tuyến. Kiểm tra chế độ thực tế của cơ sở dữ liệu được quản lý: replication, failover và hành vi đọc khác nhau theo sản phẩm và cấu hình.
Cũng cần kiểm tra năng lực xử lý. Các tài nguyên còn hoạt động phải xử lý được tải yêu cầu. Thiết kế dựa vào việc tạo thêm tài nguyên trong sự cố phụ thuộc vào quota, tài nguyên sẵn có và các thao tác control plane.
Thực hiện diễn tập có kiểm soát với ranh giới, điều kiện dừng và người phụ trách được xác định. Xác minh một lượt đặt chỗ hoàn chỉnh, bao gồm đối soát thanh toán. Ghi lại các request thất bại và thời gian khôi phục hoạt động có ích.
Quyết định xem một Region khác có giải quyết vấn đề hay không
Vận hành đa region làm tăng truyền dữ liệu, tài nguyên trùng lặp, công việc phối hợp triển khai và vận hành. Active/passive giữ một môi trường sẵn sàng tiếp nhận lưu lượng. Active/active phục vụ lưu lượng tại nhiều môi trường. Mức độ sẵn sàng và hành vi dữ liệu cần thiết khác nhau.
Với dịch vụ đặt chỗ, việc ghi đồng thời đặt ra câu hỏi: hai Region có thể bán cùng một chỗ không? Xác định bên có thẩm quyền xác nhận đặt chỗ và hành vi khi replication bị gián đoạn. “Replicate cơ sở dữ liệu” chưa phải câu trả lời đầy đủ.
Kiểm tra vị trí dữ liệu được phép, khóa mã hóa, chứng chỉ, DNS, secret và dịch vụ bên ngoài. Sự cố ở dịch vụ danh tính dùng chung hoặc một bản phát hành lỗi có thể ảnh hưởng đến nhiều Region. Thêm vị trí không loại bỏ mọi nguyên nhân chung.
Kết nối tính sẵn sàng với khôi phục
HA xử lý các sự cố đã xác định trong quá trình vận hành. Khôi phục sau thảm họa đưa dịch vụ và dữ liệu về trạng thái sử dụng được sau một sự kiện gây gián đoạn. Dịch vụ đa region vẫn cần kế hoạch khôi phục khi dữ liệu bị xóa hoặc bị hỏng.
Ghi lại các kịch bản sự cố đã chọn và những kịch bản mà doanh nghiệp chấp nhận. Duy trì test và định nghĩa hạ tầng phù hợp khi ứng dụng thay đổi. Tiếp tục với RTO, RPO và khôi phục sau thảm họa.
Làm bài tập
Một dịch vụ đặt chỗ giả định chạy các bản sao web trong hai AZ. Cơ sở dữ liệu và gateway kết nối ra ngoài nằm trong một AZ. Vẽ đường đi của request. Giả sử AZ đó mất hoạt động. Xác định phần nào còn hoạt động, phần nào bị lỗi và test nào sẽ xác minh kết luận của bạn.
Tải worksheet (Markdown)Bỏ chọn sẽ xóa toàn bộ tiến độ đã lưu trong trình duyệt này.
Tiến độ ở trong trình duyệt này. Không tài khoản, không theo dõi.
Nguồn và đọc thêm
- AWS: Deploy the workload to multiple locations ↗
- AWS: Shared responsibility model for resiliency ↗
- Google SRE: Implementing SLOs ↗