- Les régions utilisant Global Access doivent appartenir au même VPC.
- Global Access doit être explicitement activé au niveau du PSC (voir la capture d’écran ci-dessous).
- Assurez-vous que les règles de votre pare-feu ne bloquent pas l’accès à PSC depuis d’autres régions.
- Gardez à l’esprit que des frais de transfert de données inter-régions sur GCP peuvent s’appliquer.
- Récupérez le service attachment GCP pour Private Service Connect.
- Créez un point de terminaison de service.
- Ajoutez l’« Endpoint ID » au service ClickHouse Cloud.
- Ajoutez l’« Endpoint ID » à la liste d’autorisation du service ClickHouse.
Attention
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
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
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.
endpointServiceId et de privateDnsHostname. Vous les utiliserez dans les étapes suivantes.
Créer un point de terminaison de service
Ajout d’une Private Service Connection
Option 1 : Utiliser la console Google Cloud
- Target : utilisez Published service
- Target service : utilisez
endpointServiceIdAPI ouService 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.
Option 2 : utiliser Terraform
utilisez
endpointServiceIdAPI ou Service nameconsole de l’étape Obtenir le service attachment GCP pour Private Service ConnectDé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.
Ajouter l’Endpoint ID à l’organisation ClickHouse Cloud
Option 1 : console ClickHouse Cloud
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
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 :
Ajouter « Endpoint ID » à la liste d’autorisation du service ClickHouse
Option 1 : console ClickHouse Cloud
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
Accéder à l’instance à l’aide de Private Service Connect
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
Option 2 : API
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
privateDnsHostname indiqué à l’étape Obtenir le service attachment GCP pour Private Service Connect
Connexion réinitialisée par l’hôte distant
- Il est très probable que l’Endpoint ID n’ait pas été ajouté à la liste d’autorisation du service. Revenez à l’étape Ajouter l’Endpoint ID à la liste d’autorisation des services.
Tester la connectivité
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
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.