ClickPipes prend en charge la connectivité PSC interrégionale via l’accès global. L’accès global est requis pour les endpoints situés dans une région différente de celle où s’exécute l’infrastructure ClickPipes. Consultez la documentation sur les régions GCP de ClickPipes pour plus de détails.
Modèles pris en charge
Prérequis
- Un service ClickHouse Cloud hébergé sur GCP. ClickPipes s’exécute dans la même région que votre service ClickHouse Cloud (à quelques exceptions près).
- Les droits IAM nécessaires pour activer PSC sur votre source et gérer les attachements de service PSC (
roles/compute.networkAdmin).
- Le projet consommateur de ClickPipes autorisé à se connecter à votre attachement de service (
clickpipes-production). - Si vous provisionnez ClickPipes par programmation : une clé API ClickHouse Cloud pour l’organisation propriétaire du service.
Créer l’endpoint privé inversé
Pour créer un RPE, vous avez besoin des informations suivantes concernant votre source de données :- URI de l’attachement de service :
projects/<PROJECT>/regions/<REGION>/serviceAttachments/<NAME>, l’endpoint PSC exposé devant votre source de données. - Nom DNS privé : le nom d’hôte auquel votre pipe se connecte. Un endpoint PSC reçoit une adresse IP interne statique sans nom DNS associé. ClickPipes résout donc ce nom d’hôte vers cette adresse IP pour vous.
- Interface utilisateur ClickPipes
- Terraform
- API
- Dans ClickHouse Cloud, ouvrez votre service, puis accédez à Sources de données > ClickPipes.
- Sélectionnez la source de données à partir de laquelle vous souhaitez ingérer des données.
- Sous Configurez votre connexion ClickPipe, activez Utiliser une connexion sécurisée, puis cliquez sur + Endpoint privé inversé et choisissez Attachement de service GCP PSC.
- Renseignez l’URI de l’attachement de service, le nom DNS privé et une description.
- Cliquez sur Créer. L’endpoint passe de
ProvisioningàReady. (Les sources PSC natives, comme Cloud SQL et AlloyDB, acceptent automatiquement la connexion dès que le projet consommateur de ClickPipes figure sur leur liste d’autorisation ; vous ne verrez donc pasPendingAcceptance. Pour un PSC détenu par le producteur, consultez Approuver les connexions détenues par le producteur.)
Noms DNS privés personnalisés
Comme GCP PSC ne propage pas les DNS, un mappage DNS privé personnalisé est requis pour chaque endpoint GCP PSC afin que ClickPipes puisse le résoudre vers l’adresse IP interne statique de l’endpoint. Les règles standard de nommage DNS privé personnalisé de ClickPipes s’appliquent : la prise en charge des caractères génériques, l’unicité entre les endpoints privés inversés d’un service et les restrictions sur les suffixes réservés sont appliquées de manière identique, quel que soit le fournisseur. Pour les sources à plusieurs brokers, comme Managed Kafka, répétez la configuration ci-dessus pour chaque broker annoncé : créez un endpoint privé inversé par attachement de service de broker, avec un mappage DNS privé personnalisé pour le nom d’hôte de ce broker, plutôt que d’utiliser un seul caractère générique pour l’ensemble du cluster. Le nom d’hôte de bootstrap ne nécessite pas d’endpoint dédié : ajoutez-le comme mappage supplémentaire sur l’un des endpoints de broker. Consultez le module Terraformgcp-managed-kafka pour un exemple complet.
Pour GCP PSC, seul le champ privateDnsName du mappage est utilisé. Le champ internalDNSName n’est pas pris en charge, car un endpoint PSC expose une adresse IP statique sans nom DNS auquel l’associer : les mappages sont toujours résolus vers cette adresse IP.
Approbation des connexions PSC détenues par le producteur
Pour un PSC détenu par le producteur, ajoutez le projet consommateur de ClickPipes (clickpipes-production) à la liste d’acceptation automatique de l’attachement de service afin que la connexion soit acceptée automatiquement. Sinon, le RPE reste à l’état PendingAcceptance jusqu’à ce que vous l’approuviez manuellement.
Pour accepter la connexion, la liste des consommateurs autorisés de l’attachement de service doit contenir l’URI du point de terminaison basé sur son ID numérique (projects/<PROJECT>/regions/<REGION>/forwardingRules/<NUMERIC_ID>). Pour obtenir la valeur endpointWithId de la connexion en attente sur l’attachement de service, exécutez :
endpointWithId de l’entrée dont le status est PENDING, supprimez le préfixe https://www.googleapis.com/compute/beta/ et transmettez le résultat à --consumer-accept-list :
--consumer-accept-list remplace la liste d’acceptation au lieu d’y ajouter le nouveau projet consommateur. Si l’attachement de service accepte déjà d’autres projets ou points de terminaison, transmettez-les tous dans la même commande, faute de quoi ceux que vous omettez perdront l’accès.Gestion des points de terminaison privés inversés
Vous pouvez gérer les points de terminaison privés inversés existants dans les paramètres du service ClickHouse Cloud :- Dans la barre latérale de la console ClickHouse Cloud, accédez à
Settings.
ClickPipe reverse private endpoints, cliquez sur Reverse private endpoints.
Des informations détaillées sur le point de terminaison privé inversé s’affichent dans le flyout. Depuis cette vue, vous pouvez supprimer des RPE : cliquez sur le × d’un endpoint et confirmez sa suppression. La suppression est définitive et interrompra tout ClickPipe utilisant actuellement cet endpoint.
Pour modifier les mappages DNS privé personnalisé d’un endpoint, utilisez la Cloud API ou Terraform. La mise à jour remplace la liste complète des mappages au lieu d’y ajouter des éléments.
Si un endpoint affiche Rejected ou Failed, lisez le message sous son status : il permet de distinguer une connexion rejetée par le producteur d’une connexion fermée ou nécessitant une intervention. Dans les deux cas, cela signifie généralement que la liste d’acceptation de l’attachement de service n’inclut pas le projet consommateur de ClickPipes. Pour consulter le status signalé par GCP pour l’endpoint, décrivez les connectedEndpoints de l’attachement de service.
Limitations
- Un attachement de service PSC ne peut être revendiqué que par un seul service ClickHouse Cloud à la fois ; il ne peut pas être réutilisé par plusieurs services. Pour déplacer un attachement de service vers un autre service, contactez le support ClickHouse afin de libérer la revendication existante.