Skip to content

Các mô hình triển khai Amazon RDS

Amazon RDS cung cấp nhiều mô hình triển khai khác nhau để phù hợp với nhu cầu và yêu cầu của ứng dụng. Các mô hình này bao gồm Single-AZ, Multi-AZ, Read Replica, và kết hợp giữa Multi-AZ với Read Replica. Mỗi mô hình có những tính năng, lợi ích và trường hợp sử dụng riêng.

Single-AZ Deployment

Trong mô hình này, Amazon RDS triển khai cơ sở dữ liệu trên 1 Instance nằm trong một Availability Zone (AZ) duy nhất. Đây là mô hình đơn giản và tiết kiệm chi phí, phù hợp với các ứng dụng không yêu cầu tính sẵn sàng cao hoặc có thể chấp nhận downtime trong trường hợp xảy ra sự cố.

Single-AZ trong RDS
⚠️

Có thể chuyển đổi từ Single-AZ sang Multi-AZ với Zero downtime bằng cách sử dụng tính năng DB Instance Modify.

Multi-AZ Deployment (Disaster Recovery)

Amazon RDS tạo một bản sao đồng bộ (Standby) trong một AZ khác. Khi xảy ra lỗi (như mất kết nối, hỏng phần cứng), hệ thống tự động chuyển sang Standby.

  • Tính năng: Dùng để tự động sao lưu đồng bộ dữ liệu từ Master DB
  • Trường hợp sử dụng: Ứng dụng yêu cầu tính sẵn sàng cao, như ứng dụng tài chính, thương mại điện tử, và các hệ thống quan trọng khác.
Multi-AZ trong RDS
⚠️
  • Với mô hình này dữ liệu chỉ có thể ghi vào Instance chính (Master DB)
  • Standby DB không dùng để đọc dữ liệu - chỉ phục vụ HA.
  • Khi có sự cố Standby DB tự động được promote lên thành Master DB mà Endpoint URL không bị thay đổi
  • Cost lúc này sẽ x2 so với Single Instance

Multi-AZ Cluster Deployment

Multi-AZ DB Cluster là một kiến trúc triển khai mới của Amazon RDS (áp dụng cho các engine như RDS for MySQL, PostgreSQL và đặc biệt gần với kiến trúc Aurora), cho phép triển khai nhiều instance RDS ở nhiều Availability Zones (AZ) trong một cluster duy nhất, nhằm nâng cao tính sẵn sàng (High Availability), hiệu suất đọc, và khả năng failover nhanh.

1 Cluster DB Multi-AZ có 1 writer DB instance2 reader DB instances trên 3 AZ riêng biệt trong cùng một Region.

Multi-AZ trong RDS

Read Replica Deployment (Horizontal Scaling)

Mô hình Read Replica cho phép bạn tạo các bản sao chỉ đọc của cơ sở dữ liệu chính để phân phối tải và cải thiện hiệu suất đọc. Các Read Replica có thể được triển khai trong cùng một AZ hoặc các AZ khác nhau. Đặc điểm:

  • Dùng để phân tải đọc (read-heavy workloads)
  • Có thể Cross-AZ hoặc Cross-Region
  • Có thể tạo tối đa 15 Read Replica cho mỗi DB Instance
  • Với mỗi Read Replica, Endpoint sẽ khác nhau -> bạn cần quản lý các endpoint này trong ứng dụng.
  • Không tự động failover như Multi-AZ
  • Replicas có thể promote thành DB độc lập
Multi-AZ trong RDS

Multi-AZ kết hợp Read Replica

Kết hợp mô hình Multi-AZ với Read Replica cho phép bạn có được cả tính sẵn sàng cao và hiệu suất đọc tốt. Trong mô hình này, bạn có thể có một phiên bản chính trong một AZ và các Read Replica trong các AZ khác.

⚠️

Với cách kết hợp này sẽ tăng tính sẵn sàng, khả năng chịu lỗi và hiệu suất đọc của ứng dụng. Tuy nhiên chi phí sẽ cao hơn do phải duy trì nhiều bản sao và các instance trong các AZ khác nhau.