Ответ
В Amazon RDS существует два основных типа репликации, и они работают с разным количеством зон доступности (Availability Zones, AZ):
-
Multi-AZ Deployment (Синхронная репликация):
- Количество AZ: Ровно две. RDS автоматически создает синхронную standby-реплику в другой AZ в том же регионе.
- Цель: Обеспечение высокой доступности и автоматического аварийного восстановления (failover) при сбое в основной AZ. Для приложения это выглядит как единая конечная точка (endpoint).
-
Read Replicas (Асинхронная репликация):
- Количество AZ (и регионов): Можно создать до 15 реплик для чтения. Они могут находиться:
- В той же AZ, что и источник.
- В другой AZ того же региона.
- В другом регионе (Cross-Region Read Replica).
- Цель: Масштабирование рабочей нагрузки на чтение, оффлоадинг отчетов или создание копии данных в другом регионе для Disaster Recovery.
- Количество AZ (и регионов): Можно создать до 15 реплик для чтения. Они могут находиться:
Пример создания Read Replica в другой AZ через AWS CLI:
aws rds create-db-instance-read-replica
--db-instance-identifier myapp-read-replica-1
--source-db-instance-identifier myapp-primary-db
--availability-zone us-east-1b # Указываем целевую AZ
Важно: Multi-AZ и Read Replicas — это не взаимоисключающие технологии. Можно иметь основной инстанс в конфигурации Multi-AZ и при этом создавать для него Read Replicas.