В скольких зонах доступности (AZ) можно включить репликацию в Amazon RDS?

«В скольких зонах доступности (AZ) можно включить репликацию в Amazon RDS?» — вопрос из категории Облачные платформы, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В Amazon RDS существует два основных типа репликации, и они работают с разным количеством зон доступности (Availability Zones, AZ):

  1. Multi-AZ Deployment (Синхронная репликация):

    • Количество AZ: Ровно две. RDS автоматически создает синхронную standby-реплику в другой AZ в том же регионе.
    • Цель: Обеспечение высокой доступности и автоматического аварийного восстановления (failover) при сбое в основной AZ. Для приложения это выглядит как единая конечная точка (endpoint).
  2. Read Replicas (Асинхронная репликация):

    • Количество AZ (и регионов): Можно создать до 15 реплик для чтения. Они могут находиться:
      • В той же AZ, что и источник.
      • В другой AZ того же региона.
      • В другом регионе (Cross-Region Read Replica).
    • Цель: Масштабирование рабочей нагрузки на чтение, оффлоадинг отчетов или создание копии данных в другом регионе для Disaster Recovery.

Пример создания 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.