Versions de Postgres prises en charge
ClickPipes prend en charge Aurora PostgreSQL-Compatible Edition à partir de la version 12.
Activer la réplication logique
Vous pouvez ignorer cette section si votre instance Aurora dispose déjà des paramètres suivants :
rds.logical_replication = 1
Ce paramètre est généralement préconfiguré si vous avez déjà utilisé un autre outil de réplication des données.
postgres=> SHOW rds.logical_replication ;
rds.logical_replication
-------------------------
on
(1 row)Si ce n’est pas déjà fait, suivez ces étapes :
- Créez un nouveau groupe de paramètres pour votre version d’Aurora PostgreSQL avec le paramètre requis :
- Définissez
rds.logical_replicationsur 1
- Définissez


- Appliquez le nouveau groupe de paramètres à votre cluster Aurora PostgreSQL

- Redémarrez votre cluster Aurora pour appliquer les modifications

Configurer un utilisateur de base de données
Connectez-vous à votre instance writer Aurora PostgreSQL en tant qu’utilisateur admin et exécutez les commandes suivantes :
-
Créez un utilisateur dédié pour ClickPipes :
CREATE USER clickpipes_user PASSWORD 'some-password'; -
Accordez à l’utilisateur créé à l’étape précédente un accès en lecture seule au niveau du schéma. L’exemple suivant montre les permissions pour le schéma
public. Répétez ces commandes pour chaque schéma contenant des tables que vous souhaitez répliquer :GRANT USAGE ON SCHEMA "public" TO clickpipes_user; GRANT SELECT ON ALL TABLES IN SCHEMA "public" TO clickpipes_user; ALTER DEFAULT PRIVILEGES IN SCHEMA "public" GRANT SELECT ON TABLES TO clickpipes_user; -
Accordez les privilèges de réplication à l’utilisateur :
GRANT rds_replication TO clickpipes_user; -
Créez une publication avec les tables que vous souhaitez répliquer. Nous vous recommandons vivement de n’inclure dans la publication que les tables nécessaires afin d’éviter tout surcoût de performances.
-
Pour créer une publication pour des tables spécifiques :
CREATE PUBLICATION clickpipes FOR TABLE table_to_replicate, table_to_replicate2;-
Pour créer une publication pour toutes les tables d’un schéma donné :
CREATE PUBLICATION clickpipes FOR TABLES IN SCHEMA "public";
-
La publication clickpipes définit l’ensemble des tables dont les événements de modification seront transmis à ClickPipes. Nous déconseillons d’utiliser FOR ALL TABLES sauf si vous avez l’intention de répliquer chaque table, car l’inclusion de tables inutiles augmente le trafic WAL de Postgres vers ClickPipes et réduit l’efficacité globale de la réplication.
Utilisation de l’authentification IAM (facultatif)
Instead of a password, you can authenticate the ClickPipes user with an AWS IAM role. This lets ClickPipes connect to your Amazon Aurora cluster without storing database credentials.
Enable IAM authentication
- Log in to your AWS account and go to the Aurora cluster you want to configure.
- Click Modify.
- Scroll to the Database authentication section.
- Select Password and IAM database authentication.
- Click Continue.
- Review the changes and select Apply immediately.
Create the ClickPipes user
Create the ClickPipes user with IAM authentication enabled, then grant it the same schema and replication privileges shown above:
CREATE USER clickpipes_iam_user;
GRANT rds_iam TO clickpipes_iam_user;Obtain the ClickHouse service IAM role ARN
- Log in to your ClickHouse Cloud account.
- Select the ClickHouse service you want to connect.
- Select the Settings tab.
- Scroll to the Network security information section at the bottom of the page.
- Copy the service's Service role ID (IAM) value, shown below.

This value is your {ClickHouse_IAM_ARN} — the role ClickPipes uses to access your Aurora cluster.
Obtain the resource ID
- Log in to your AWS account and go to the Aurora cluster you want to configure.
- Select the Configuration tab.
- Note the Resource ID value — it looks like
cluster-xxxxxxxxxxxxxx. This is your{RDS_RESOURCE_ID}, which you reference in the permissions policy.
Create the IAM role
- Log in to your AWS account with an IAM user that has permission to create and manage IAM roles.
- Open the IAM console.
- Create a new IAM role with the following trust and permissions policies.
Trust policy (replace
{ClickHouse_IAM_ARN}with the IAM role ARN of your ClickHouse instance):{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "{ClickHouse_IAM_ARN}" }, "Action": [ "sts:AssumeRole", "sts:TagSession" ] } ] }Permissions policy (replace
{RDS_RESOURCE_ID}with the resource ID of your Aurora cluster,{RDS_REGION}with its region, and{AWS_ACCOUNT}with your AWS account ID):{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:{RDS_REGION}:{AWS_ACCOUNT}:dbuser:{RDS_RESOURCE_ID}/clickpipes_iam_user" ] } ] } - Once the role is created, copy its ARN. This is your
{RDS_ACCESS_IAM_ROLE_ARN}.
You can now use this IAM role to authenticate with your Aurora cluster from ClickPipes.
Configurer l’accès au réseau
Contrôle d’accès basé sur l’adresse IP
Si vous souhaitez restreindre le trafic vers votre cluster Aurora, ajoutez les adresses IP NAT statiques documentées aux Inbound rules de votre groupe de sécurité Aurora.


Accès privé via AWS PrivateLink
Pour vous connecter à votre cluster Aurora via un réseau privé, vous pouvez utiliser AWS PrivateLink. Suivez notre guide de configuration d’AWS PrivateLink pour ClickPipes pour établir la connexion.
Considérations spécifiques à Aurora
Lors de la configuration de ClickPipes avec Aurora PostgreSQL, gardez les points suivants à l'esprit :
-
Endpoint de connexion : connectez-vous toujours à l'endpoint writer de votre cluster Aurora, car la réplication logique nécessite un accès en écriture pour créer des slots de réplication et doit se connecter à l'instance primaire.
-
Gestion du basculement : en cas de basculement, Aurora promeut automatiquement un reader comme nouveau writer. ClickPipes détectera la déconnexion et tentera de se reconnecter à l'endpoint writer, qui pointera alors vers la nouvelle instance primaire.
-
Base de données globale : si vous utilisez Aurora Global Database, vous devez vous connecter à l'endpoint writer de la région primaire, car la réplication interrégion gère déjà le transfert des données entre les régions.
-
Considérations relatives au stockage : la couche de stockage d'Aurora est partagée par toutes les instances d'un cluster, ce qui peut offrir de meilleures performances pour la réplication logique par rapport à RDS standard.
Gérer les endpoints dynamiques du cluster
Bien qu’Aurora fournisse des endpoints stables qui redirigent automatiquement vers l’instance appropriée, voici quelques approches supplémentaires pour garantir une connectivité fiable :
-
Pour les configurations à haute disponibilité, configurez votre application pour utiliser le writer endpoint d’Aurora, qui pointe automatiquement vers l’instance primaire active.
-
Si vous utilisez une réplication inter-régions, envisagez de configurer des ClickPipes distincts pour chaque région afin de réduire la latence et d’améliorer la tolérance aux pannes.
Et maintenant ?
Vous pouvez maintenant créer votre ClickPipe et commencer à ingérer des données de votre cluster Aurora PostgreSQL dans ClickHouse Cloud. Veillez à noter les informations de connexion utilisées lors de la configuration de votre cluster Aurora PostgreSQL, car vous en aurez besoin lors de la création du ClickPipe.