Supported Postgres versions
ClickPipes supports Postgres version 12 and later.Enable logical replication
You can skip this section if your RDS instance already has the following setting configured:rds.logical_replication = 1
- Create a new parameter group for your Postgres version with the required settings:
- Set
rds.logical_replicationto 1
- Set
- Apply the new parameter group to your RDS Postgres database
- Reboot your RDS instance to apply the changes
Configure database user
Connect to your RDS Postgres instance as an admin user and execute the following commands:-
Create a dedicated user for ClickPipes:
-
Grant schema-level, read-only access to the user you created in the previous step. The following example shows permissions for the
publicschema. Repeat these commands for each schema containing tables you want to replicate: -
Grant replication privileges to the user:
- Create a publication with the tables you want to replicate. We strongly recommend only including the tables you need in the publication to avoid performance overhead.
-
To create a publication for specific tables:
-
To create a publication for all tables in a specific schema:
clickpipes publication defines the set of tables whose change events will be streamed to ClickPipes. We recommend against using FOR ALL TABLES unless you intend to replicate every table, as including unnecessary tables increases WAL traffic from Postgres to ClickPipes and reduces overall replication efficiency.
Using IAM authentication (optional)
Instead of a password, you can authenticate the ClickPipes user via AWS IAM role-based access. Create the user as follows, then grant it the same schema and replication privileges shown above:IAM authentication for replication requires the
rds.iam_auth_for_replication parameter to be set to 1. This is supported from PostgreSQL version 11 onwards; on earlier versions, you can only run Initial Load Only ClickPipes.Configure network access
IP-based access control
If you want to restrict traffic to your RDS instance, please add the documented static NAT IPs to theInbound rules of your RDS security group.
Private Access via AWS PrivateLink
To connect to your RDS instance through a private network, you can use AWS PrivateLink. Follow our AWS PrivateLink setup guide for ClickPipes to set up the connection.Workarounds for RDS Proxy
RDS Proxy doesn’t support logical replication connections. If you have dynamic IP addresses in RDS and can’t use DNS name or a lambda, here are some alternatives:- Using a cron job, resolve the RDS endpoint’s IP periodically and update the NLB if it has changed.
- Using RDS Event Notifications with EventBridge/SNS: Trigger updates automatically using AWS RDS event notifications
- Stable EC2: Deploy an EC2 instance to act as a polling service or IP-based proxy
- Automate IP address management using tools like Terraform or CloudFormation.