Skip to main content
Private Service Connect (PSC) est une fonctionnalité réseau de Google Cloud qui permet aux consommateurs d’accéder de manière privée à des services managés au sein de leur réseau VPC (Virtual Private Cloud). De même, elle permet aux producteurs de services managés d’héberger ces services dans leurs propres réseaux VPC distincts et d’offrir une connexion privée à leurs consommateurs. Les producteurs de services publient leurs applications à destination des consommateurs en créant des services Private Service Connect. Les consommateurs de services accèdent directement à ces services Private Service Connect via l’un de ces types de connexion Private Service Connect.
GCP Private Service Connect prend uniquement en charge les connexions initiées depuis votre VPC GCP vers ClickHouse Cloud. Il ne peut pas être utilisé pour des connexions initiées depuis ClickHouse Cloud vers des services de votre VPC, comme une base de données privée.Par défaut, un service ClickHouse n’est pas accessible via une connexion Private Service Connect, même si la connexion PSC est approuvée et établie ; vous devez ajouter explicitement l’ID PSC à la liste d’autorisation au niveau de l’instance en effectuant l’étape ci-dessous.
Considérations importantes pour l’utilisation de Global Access avec Private Service Connect :
  1. Les régions utilisant Global Access doivent appartenir au même VPC.
  2. Global Access doit être explicitement activé au niveau du PSC (voir la capture d’écran ci-dessous).
  3. Assurez-vous que les règles de votre pare-feu ne bloquent pas l’accès à PSC depuis d’autres régions.
  4. Gardez à l’esprit que des frais de transfert de données inter-régions sur GCP peuvent s’appliquer.
La connectivité inter-régions n’est pas prise en charge. Les régions du producteur et du consommateur doivent être identiques. Cependant, vous pouvez vous connecter depuis d’autres régions au sein de votre VPC en activant Global Access au niveau de Private Service Connect (PSC). Effectuez les étapes suivantes pour activer GCP PSC :
  1. Récupérez le service attachment GCP pour Private Service Connect.
  2. Créez un point de terminaison de service.
  3. Ajoutez l’« Endpoint ID » au service ClickHouse Cloud.
  4. Ajoutez l’« Endpoint ID » à la liste d’autorisation du service ClickHouse.

Attention

ClickHouse tente de regrouper vos services afin de réutiliser le même PSC endpoint publié dans la région GCP. Toutefois, ce regroupement n’est pas garanti, surtout si vos services sont répartis entre plusieurs organisations ClickHouse. Si PSC est déjà configuré pour d’autres services dans votre organisation ClickHouse, vous pourrez souvent ignorer la plupart des étapes grâce à ce regroupement et passer directement à l’étape finale : Ajouter l‘“Endpoint ID” à la liste d’autorisation du service ClickHouse. Vous trouverez des exemples Terraform ici.

Avant de commencer

Des exemples de code sont fournis ci-dessous pour montrer comment configurer Private Service Connect au sein d’un service ClickHouse Cloud. Dans les exemples ci-dessous, nous utiliserons :
  • région GCP : us-central1
  • projet GCP (projet GCP du client) : my-gcp-project
  • adresse IP privée GCP dans le projet GCP du client : 10.128.0.2
  • VPC GCP dans le projet GCP du client : default
Vous devrez récupérer des informations sur votre service ClickHouse Cloud. Vous pouvez le faire soit via la console ClickHouse Cloud, soit via la ClickHouse API. Si vous prévoyez d’utiliser la ClickHouse API, veuillez définir les variables d’environnement suivantes avant de continuer :
Vous pouvez créer une nouvelle clé API ClickHouse Cloud ou utiliser une clé existante. Récupérez l’INSTANCE_ID de votre instance ClickHouse en filtrant par région, fournisseur et nom du service :
  • Vous pouvez récupérer votre Organization ID dans la ClickHouse console (Organization -> Organization Details).
  • Vous pouvez créer une nouvelle clé ou utiliser une clé existante.

Obtenir le service attachment GCP et le nom DNS pour Private Service Connect

Option 1 : console ClickHouse Cloud

Dans la console ClickHouse Cloud, ouvrez le service que vous souhaitez connecter via Private Service Connect, puis ouvrez le menu Settings. Cliquez sur le bouton Set up private endpoint. Notez le Service name (endpointServiceId) et le DNS name (privateDnsHostname). Vous les utiliserez aux étapes suivantes.

Option 2 : API

Vous devez disposer d’au moins une instance déployée dans la région pour effectuer cette étape.
Récupérez le service attachment GCP et le nom DNS pour Private Service Connect :
Prenez note de endpointServiceId et de privateDnsHostname. Vous les utiliserez dans les étapes suivantes.

Créer un point de terminaison de service

Cette section présente les détails propres à ClickHouse pour configurer ClickHouse via GCP PSC (Private Service Connect). Les étapes propres à GCP sont fournies à titre de référence pour vous indiquer où trouver les informations nécessaires, mais elles peuvent évoluer au fil du temps sans préavis de la part du fournisseur cloud GCP. Veuillez adapter la configuration GCP à votre cas d’usage.Veuillez noter que ClickHouse n’est pas responsable de la configuration des points de terminaison GCP PSC ou des enregistrements DNS requis.Pour tout problème lié aux tâches de configuration GCP, contactez directement le support GCP.
Dans cette section, vous allez créer un point de terminaison de service.

Ajout d’une Private Service Connection

Tout d’abord, vous allez créer une Private Service Connection.

Option 1 : Utiliser la console Google Cloud

Dans la console Google Cloud, accédez à Network services -> Private Service Connect. Ouvrez la boîte de dialogue de création de Private Service Connect en cliquant sur le bouton Connect Endpoint.
  • Target : utilisez Published service
  • Target service : utilisez endpointServiceIdAPI ou Service nameconsole à l’étape Obtain GCP service attachment for Private Service Connect.
  • Endpoint name : définissez un nom pour l’Endpoint name PSC.
  • Network/Subnetwork/IP address : choisissez le réseau à utiliser pour la connexion. Vous devrez créer une adresse IP ou utiliser une adresse existante pour le point de terminaison Private Service Connect. Dans notre exemple, nous avons créé au préalable une adresse nommée your-ip-address et lui avons attribué l’adresse IP 10.128.0.2.
  • Pour rendre le point de terminaison accessible depuis n’importe quelle région, vous pouvez cocher la case Enable global access.
Pour créer le point de terminaison PSC, utilisez le bouton ADD ENDPOINT. La colonne Status passera de Pending à Accepted une fois la connexion approuvée. Copiez PSC Connection ID ; vous l’utiliserez comme Endpoint ID dans les étapes suivantes.

Option 2 : utiliser Terraform

utilisez endpointServiceIdAPI ou Service nameconsole de l’étape Obtenir le service attachment GCP pour Private Service Connect

Définir le nom DNS privé de l’endpoint

Il existe plusieurs façons de configurer le DNS. Configurez-le en fonction de votre cas d’usage.
Vous devez faire pointer le « nom DNS », obtenu à l’étape Obtain GCP service attachment for Private Service Connect, vers l’adresse IP de l’endpoint GCP Private Service Connect. Cela garantit que les services/composants de votre VPC/réseau pourront le résoudre correctement.
Il ne suffit pas de se connecter directement à l’adresse IP de l’endpoint PSC. ClickHouse Cloud achemine les connexions en fonction du nom DNS (via le SNI pendant le handshake TLS) ; vous devez donc configurer le DNS pour qu’il résolve le nom d’hôte DNS privé (privateDnsHostname) vers l’adresse IP de l’endpoint. Sans cela, ClickHouse Cloud ne pourra pas identifier à quel service la connexion est destinée, et la connexion échouera.

Ajouter l’Endpoint ID à l’organisation ClickHouse Cloud

Option 1 : console ClickHouse Cloud

Pour ajouter un endpoint à votre organisation, passez à l’étape Ajouter “Endpoint ID” à la liste d’autorisation du service ClickHouse. L’ajout du PSC Connection ID à la liste d’autorisation du service via la console ClickHouse Cloud l’ajoute automatiquement à l’organisation. Pour supprimer un endpoint, ouvrez Organization details -> Private Endpoints et cliquez sur le bouton de suppression pour retirer l’endpoint.

Option 2 : API

Définissez ces variables d’environnement avant d’exécuter des commandes : Remplacez ENDPOINT_ID ci-dessous par la valeur indiquée dans Endpoint ID à l’étape Ajout d’une Private Service Connection. Pour ajouter un endpoint, exécutez :
Pour supprimer un endpoint, exécutez :
Ajouter ou supprimer un Private Endpoint pour une organisation :

Ajouter « Endpoint ID » à la liste d’autorisation du service ClickHouse

Vous devez ajouter un Endpoint ID à la liste d’autorisation de chaque instance devant être accessible via Private Service Connect.

Option 1 : console ClickHouse Cloud

Dans la console ClickHouse Cloud, ouvrez le service que vous souhaitez connecter via Private Service Connect, puis accédez à Settings. Saisissez l’Endpoint ID récupéré lors de l’étape Ajout d’une Private Service Connection. Cliquez sur Create endpoint.
Si vous souhaitez autoriser l’accès depuis une connexion Private Service Connect existante, utilisez le menu déroulant des endpoints existants.

Option 2 : API

Définissez ces variables d’environnement avant d’exécuter la moindre commande : Remplacez ENDPOINT_ID ci-dessous par la valeur de Endpoint ID indiquée à l’étape Ajout d’une Private Service Connection. Exécutez cette opération pour chaque service devant être accessible via Private Service Connect. Pour ajouter :
À supprimer :

Accéder à l’instance à l’aide de Private Service Connect

Chaque service pour lequel Private Service Connect est activé dispose d’un point de terminaison public et d’un point de terminaison privé. Pour vous connecter à l’aide de Private Service Connect, vous devez utiliser le point de terminaison privé, c’est-à-dire le privateDnsHostname obtenu à l’étape Obtenir le service attachment GCP pour Private Service Connect.

Récupérer le nom d’hôte DNS privé

Option 1 : console ClickHouse Cloud

Dans la console ClickHouse Cloud, accédez à Settings. Cliquez sur le bouton Set up private endpoint. Dans le volet qui s’ouvre, copiez le DNS Name.

Option 2 : API

Dans cet exemple, la connexion au nom d’hôte xxxxxxx.yy-xxxxN.p.gcp.clickhouse.cloud sera acheminée via Private Service Connect. En revanche, xxxxxxx.yy-xxxxN.gcp.clickhouse.cloud sera acheminé via Internet.

Dépannage

Tester la configuration DNS

DNS_NAME - Utilisez privateDnsHostname indiqué à l’étape Obtenir le service attachment GCP pour Private Service Connect

Connexion réinitialisée par l’hôte distant

Tester la connectivité

Si vous rencontrez des problèmes de connexion via un lien PSC, vérifiez la connectivité à l’aide de openssl. Assurez-vous que l’état du point de terminaison Private Service Connect est Accepted : OpenSSL doit pouvoir se connecter (la sortie doit afficher CONNECTED). errno=104 est attendu. DNS_NAME - Utilisez privateDnsHostname de l’étape Obtain GCP service attachment for Private Service Connect

Vérification des filtres d’endpoint

API REST

Connexion à une base de données distante

Selon la documentation GCP Private Service Connect :
Conception orientée service : les services producteurs sont publiés via des équilibreurs de charge qui exposent une adresse IP unique au réseau VPC consommateur. Le trafic du consommateur qui accède aux services producteurs est unidirectionnel et ne peut accéder qu’à l’adresse IP du service, plutôt qu’à l’ensemble d’un réseau VPC appairé.
Pour connecter les fonctions de table MySQL ou PostgreSQL dans ClickHouse Cloud à une base de données hébergée dans votre VPC GCP, configurez les règles de pare-feu de votre VPC GCP afin d’autoriser les connexions depuis ClickHouse Cloud. Consultez les adresses IP de sortie par défaut des régions ClickHouse Cloud, ainsi que les adresses IP statiques disponibles.

Informations complémentaires

Pour plus de détails, consultez cloud.google.com/vpc/docs/configure-private-service-connect-services.
Dernière modification le 24 juillet 2026