Versions prises en charge
Pour transférer les données de votre instance AlloyDB vers ClickHouse Cloud à l’aide de ClickPipes, votre instance doit être configurée pour la réplication logique. Cette fonctionnalité est prise en charge à partir d’AlloyDB version 14.
Activer la réplication logique
Pour vérifier si la réplication logique est activée sur votre instance AlloyDB, exécutez la requête suivante sur votre instance primaire :
SHOW wal_level;Si le résultat est logical, la réplication logique est déjà activée et vous pouvez passer à l’étape suivante. Si le résultat est replica, vous devez définir les flags alloydb.enable_pglogical et alloydb.logical_decoding sur on sur l’instance primaire.
Pour activer ces flags :
-
Dans Google Cloud Console, accédez à la page AlloyDB Clusters. Dans le menu Actions de votre instance primaire, cliquez sur Edit.

-
Faites défiler la page jusqu’à Advanced configuration options et développez la section. Sous Flags, cliquez sur Add a database flag.
- Ajoutez le flag
allowdb.enable_pglogicalet définissez sa valeur suron - Ajoutez le flag
alloydb.logical_decodinget définissez sa valeur suron

- Ajoutez le flag
-
Cliquez sur Update instance pour enregistrer les modifications de configuration. Il est important de noter que cette action déclenche un redémarrage de l’instance primaire.
-
Une fois que l’état de l’instance passe de
UpdatingàReady, exécutez la requête suivante sur votre instance primaire pour vérifier que la réplication logique est activée :SHOW wal_level;Le résultat doit être
logical.
Créer un utilisateur ClickPipes et gérer les privilèges de réplication
Connectez-vous à votre instance AlloyDB en tant qu’administrateur 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 privilèges 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 à l’utilisateur les privilèges de réplication :
ALTER USER clickpipes_user WITH REPLICATION; -
Créez une publication incluant 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 en termes 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 spécifique :
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 comptez répliquer toutes les tables, car inclure des tables inutiles augmente le trafic WAL de Postgres vers ClickPipes et réduit l’efficacité globale de la réplication.
Configurer l’accès réseau
Ensuite, choisissez comment ClickPipes se connectera à votre instance AlloyDB.
Pour une connectivité privée depuis un service ClickHouse Cloud hébergé sur GCP, suivez le guide GCP Private Service Connect afin de configurer un point de terminaison privé inverse pour votre instance AlloyDB.
-
Dans la Google Cloud Console, accédez à la page AlloyDB Clusters. Sélectionnez votre instance primaire pour ouvrir la page Overview.
-
Faites défiler la page jusqu’à Instances in your cluster et cliquez sur Edit primary.
-
Cochez la case Enable Public IP pour autoriser les connexions à l’instance via l’internet public. Sous Authorized external networks, saisissez la liste des adresses IP statiques de ClickPipes pour la région dans laquelle votre service est déployé.

-
Sous Network Security, sélectionnez Require SSL Encryption (default) (si ce n’est pas déjà fait).
-
Cliquez sur Update instance pour enregistrer les modifications de la configuration de sécurité réseau.
Si vous n’autorisez pas l’accès public à votre instance AlloyDB, vous devez d’abord configurer un hôte bastion SSH afin d’établir un tunnel sécurisé pour votre connexion. Pour configurer un hôte bastion SSH sur Google Cloud Platform :
-
Créez et démarrez une instance Google Compute Engine (GCE) en suivant la documentation officielle.
- Assurez-vous que l’instance GCE se trouve dans le même réseau privé virtuel (VPC) que votre instance AlloyDB.
- Assurez-vous que l’instance GCE dispose d’une adresse IP publique statique. Vous utiliserez cette adresse IP pour connecter ClickPipes à votre hôte bastion SSH.
-
Mettez à jour les règles de pare-feu de l’hôte bastion SSH afin d’autoriser le trafic provenant de la liste des adresses IP statiques de ClickPipes pour la région dans laquelle votre service est déployé.
-
Mettez à jour les règles de pare-feu d’AlloyDB afin d’autoriser le trafic provenant de l’hôte bastion SSH.
Et maintenant ?
Vous pouvez maintenant créer votre ClickPipe et commencer à ingérer des données de votre instance Postgres dans ClickHouse Cloud. Veillez à noter les informations de connexion utilisées lors de la configuration de votre instance Postgres, car vous en aurez besoin pendant le processus de création du ClickPipe.