Поддерживаемые версии Postgres
Включите логическую репликацию
rds.logical_replication = 1
- Создайте новую группу параметров для вашей версии Postgres с требуемыми настройками:
- Установите
rds.logical_replicationв значение 1
- Установите
- Примените новую группу параметров к вашей базе данных RDS Postgres
- Перезагрузите экземпляр RDS, чтобы изменения вступили в силу
Настройка пользователя базы данных
-
Создайте отдельного пользователя для ClickPipes:
-
Выдайте пользователю, созданному на предыдущем шаге, права только для чтения на уровне схемы. В следующем примере показаны разрешения для схемы
public. Повторите эти команды для каждой схемы, содержащей таблицы, которые вы хотите реплицировать: -
Выдайте пользователю права на репликацию:
- Создайте публикацию с таблицами, которые вы хотите реплицировать. Мы настоятельно рекомендуем включать в публикацию только необходимые таблицы, чтобы избежать лишних накладных расходов на производительность.
-
Чтобы создать публикацию для определённых таблиц:
-
Чтобы создать публикацию для всех таблиц в определённой схеме:
-
Чтобы создать публикацию для всех таблиц в определённой схеме:
clickpipes определяет набор таблиц, события изменений в которых будут передаваться в ClickPipes. Мы не рекомендуем использовать FOR ALL TABLES, если только вы не собираетесь реплицировать все таблицы, поскольку включение лишних таблиц увеличивает объём WAL-трафика из Postgres в ClickPipes и снижает общую эффективность репликации.
Использование IAM-аутентификации (необязательно)
Для IAM-аутентификации при репликации необходимо, чтобы параметр
rds.iam_auth_for_replication был установлен в 1. Это поддерживается, начиная с PostgreSQL 11; в более ранних версиях можно запускать только ClickPipes в режиме Initial Load Only.Настройка сетевого доступа
Управление доступом по IP-адресам
Inbound rules группы безопасности RDS.
Частный доступ через AWS PrivateLink
Варианты обхода для RDS Proxy
- Используйте задание cron, чтобы периодически определять IP-адрес конечной точки RDS и обновлять NLB, если он изменился.
- Используйте уведомления о событиях RDS с EventBridge/SNS: автоматически запускайте обновления через уведомления AWS RDS о событиях.
- Стабильный EC2: разверните экземпляр EC2, который будет выступать в роли сервиса опроса или IP-прокси.
- Автоматизируйте управление IP-адресами с помощью таких инструментов, как Terraform или CloudFormation.