Руководство по настройке источника данных RDS Postgres
Поддерживаемые версии Postgres
ClickPipes поддерживает Postgres начиная с версии 12.
Включить логическую репликацию
Вы можете пропустить этот раздел, если в вашем экземпляре RDS уже заданы следующие параметры:
rds.logical_replication = 1wal_sender_timeout = 0
Эти параметры обычно уже настроены, если вы ранее использовали другой инструмент репликации данных.
Если это ещё не настроено, выполните следующие шаги:
- Создайте новую группу параметров для вашей версии Postgres с необходимыми настройками:
- Установите значение
rds.logical_replicationравным 1 - Установите значение
wal_sender_timeoutравным 0
- Установите значение



- Примените новую группу параметров к вашей базе данных RDS Postgres

- Перезапустите экземпляр RDS, чтобы применить изменения

Настройка пользователя базы данных
Подключитесь к вашему экземпляру RDS Postgres под учётной записью администратора и выполните следующие команды:
-
Создайте отдельного пользователя для ClickPipes:
-
Предоставьте этому пользователю права только на чтение на уровне схемы. В следующем примере показаны права для схемы
public. Повторите эти команды для каждой схемы, содержащей таблицы, которые вы хотите реплицировать: -
Предоставьте пользователю привилегии репликации:
-
Создайте publication с таблицами, которые вы хотите реплицировать. Настоятельно рекомендуется включать в publication только те таблицы, которые вам действительно нужны, чтобы избежать излишней нагрузки на производительность.
ПримечаниеЛюбая таблица, включённая в publication, должна либо иметь определённый primary key, либо её replica identity должна быть настроена на
FULL. См. раздел Postgres FAQs для рекомендаций по выбору области действия.-
Чтобы создать publication для конкретных таблиц:
-
Чтобы создать publication для всех таблиц в конкретной схеме:
Publication
clickpipesбудет содержать набор событий изменений, сгенерированных из указанных таблиц, и позднее будет использоваться для приёма потока репликации. -
Настройка сетевого доступа
Управление доступом на основе IP-адресов
Если вы хотите ограничить трафик к своему экземпляру RDS, добавьте задокументированные статические NAT IP-адреса в раздел Inbound rules группы безопасности RDS.


Приватный доступ через AWS PrivateLink
Чтобы подключиться к вашему экземпляру RDS по частной сети, вы можете использовать AWS PrivateLink. Воспользуйтесь нашим руководством по настройке AWS PrivateLink для ClickPipes, чтобы настроить подключение.
Обходные решения для RDS Proxy
RDS Proxy не поддерживает подключения логической репликации. Если у вас динамические IP‑адреса в RDS и вы не можете использовать DNS‑имя или AWS Lambda, вот несколько альтернатив:
- С помощью cron‑задания периодически разрешайте IP‑адрес конечной точки RDS и обновляйте NLB, если он изменился.
- Использование RDS Event Notifications с EventBridge/SNS: автоматически инициируйте обновления с помощью уведомлений о событиях AWS RDS.
- Постоянный экземпляр EC2: разверните экземпляр EC2, который будет выступать в роли сервиса опроса или IP‑прокси.
- Автоматизируйте управление IP‑адресами с помощью таких инструментов, как Terraform или CloudFormation.
Что дальше?
Теперь вы можете создать свой ClickPipe и начать приём данных из экземпляра Postgres в ClickHouse Cloud. Обязательно запишите параметры подключения, которые вы использовали при настройке экземпляра Postgres, так как они понадобятся вам при создании ClickPipe.