Créer un rattachement de point de terminaison
Pour configurer une connectivité privée pour Integration Connectors, vous devez créer un rattachement PSC (Private Service Connect). Toutefois, pour utiliser le rattachement PSC, vous devez également créer un rattachement de point de terminaison, car vous ne pouvez pas l'utiliser directement. Vous pouvez considérer le rattachement de point de terminaison comme une interface vers le rattachement de service PSC. Une fois créé, vous pouvez utiliser les détails du rattachement de point de terminaison lorsque vous configurez un connecteur pour une connectivité privée. Cette page explique comment créer un rattachement de point de terminaison et suppose que vous connaissez les concepts suivants:
Vous pouvez créer le rattachement de point de terminaison en tant qu'adresse IP ou en tant que nom d'hôte.
- Créer un rattachement de point de terminaison en tant qu'adresse IP
- Créer un rattachement de point de terminaison en tant que nom d'hôte
Créer un rattachement de point de terminaison en tant qu'adresse IP
Pour créer un rattachement de point de terminaison en tant qu'adresse IP, vous pouvez utiliser la console Cloud ou la ligne de commande (gcloud). .Console
Pour créer un rattachement de point de terminaison à partir de la console Cloud, procédez comme suit:
- Ouvrez la page Rattachements de point de terminaison pour Integration Connectors.
- Cliquez sur + Créer. La page Créer un rattachement de point de terminaison s'ouvre.
- Renseignez les champs suivants :
- Nom: nom du rattachement de point de terminaison. Le nom doit être unique. Il ne peut y avoir aucun autre rattachement de point de terminaison portant le même nom, et vous ne pouvez pas le modifier par la suite. Le nom doit commencer par une lettre minuscule suivie de 1 à 63 caractères (lettres minuscules, chiffres ou traits d'union). Il ne peut pas se terminer par un trait d'union. La longueur minimale est de 2.
- ID du rattachement de service: nom du rattachement de service PSC que vous avez déjà créé.
- (Facultatif) Description: saisissez une description du rattachement de point de terminaison.
- (Facultatif) Étiquettes: saisissez les libellés de ressources sous forme de paires clé/valeur. Pour en savoir plus sur les étiquettes, consultez la section Que sont les étiquettes ?
- Cliquez sur Créer.
La colonne Adresse IP indique l'adresse IP du rattachement de point de terminaison. Vous devez utiliser cette adresse IP lorsque vous configurez un connecteur pour une connectivité privée.
gcloud
Pour créer un rattachement de point de terminaison à partir de la ligne de commande, procédez comme suit:
- Obtenez la ressource de rattachement de service PSC:
gcloud compute service-attachments list
La commande renvoie la liste des rattachements de service. Exemple :
NAME REGION TARGET_SERVICE CONNECTION_PREFERENCE demo-sa us-west1 k8s2-tcp-tgysilgj-apps-ingressgateway-fzdhwstg ACCEPT_AUTOMATIC
Vous en aurez besoin aux étapes suivantes.
- Obtenez un jeton d'authentification avant d'exécuter l'API CreateEndpointAttachment:
TOKEN="$(gcloud auth print-access-token)"
- Créez le rattachement de point de terminaison à l'aide de l'API CreateEndpointAttachment. Exemple :
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{ "name": "projects/PROJECT_ID/locations/LOCATION/endpointAttachments/ENDPOINT_ATTACHMENT_NAME", "serviceAttachment": "projects/demo/serviceAttachments/?SERVICE_ATTACHMENT_NAME" }' \ https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/endpointAttachments?endpointAttachmentId=ENDPOINT_ATTACHMENT_NAME
Où :
- LOCATION correspond à la région du rattachement de service. Par exemple,
us-west1
. - PROJECT_ID est le projet Google Cloud dans lequel vous avez créé le rattachement de service PSC.
- ENDPOINT_ATTACHMENT_NAME correspond au nom du rattachement de point de terminaison. Le nom doit être unique. Il ne peut pas exister d'autres rattachements de point de terminaison portant le même nom, et vous ne pouvez pas le modifier par la suite. Le nom doit commencer par une lettre minuscule suivie d'un maximum de 31 caractères (lettres minuscules, chiffres ou traits d'union), mais ne peut pas se terminer par un trait d'union. La longueur minimale est de 2.
- SERVICE_ATTACHMENT_NAME est le nom du rattachement de service. Utilisez le nom du compte de service PSC renvoyé par la commande
gcloud compute service-attachments list
précédemment exécutée.
Une fois que vous avez appelé l'API, Integration Connectors lance une opération de longue durée qui peut prendre un certain temps. Le rattachement de point de terminaison sera créé une fois l'opération terminée.
- LOCATION correspond à la région du rattachement de service. Par exemple,
- Obtenez l'ID de projet du répertoire de service associé à votre projet Google Cloud, puis ajoutez cet ID de projet à la liste d'autorisation de votre rattachement de service.
- Vérifiez si le rattachement de point de terminaison a été créé à l'aide de l'API GetEndpointAttachment.
Exemple :
curl -X GET -H "Authorization: Bearer $TOKEN" \ https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/endpointAttachments/ENDPOINT_ATTACHMENT_NAME
L'API renvoie une réponse semblable à la suivante :
{ "name": "projects/demo-project/locations/us-central1/endpointAttachments/demo-ea", "createTime": "2023-04-17T04:34:59.569527046Z", "updateTime": "2023-04-17T04:37:25.189074195Z", "description": "demo endpoint attachment", "serviceAttachment": "projects/demo-project/regions/us-central1/serviceAttachments/demo-sa", "endpointIp": "10.0.0.0", "labels": {"team":"sre"}, }
L'adresse IP du rattachement de point de terminaison est disponible dans le champ
endpointIp
. Dans cet exemple de réponse, l'adresse IP est10.0.0.0
. Utilisez cette adresse IP lorsque vous configurez un connecteur pour une connectivité privée.
Si le rattachement de point de terminaison a bien été créé, il apparaît sur la page Rattachements de point de terminaison, comme dans l'image suivante:
Les étapes décrites jusqu'à présent montrent comment créer un rattachement de point de terminaison en tant qu'adresse IP. Toutefois, vous pouvez également créer un rattachement de point de terminaison en tant que nom d'hôte et utiliser le nom d'hôte pour configurer un connecteur pour une connectivité privée. Pour comprendre comment créer un rattachement de point de terminaison avec un nom d'hôte, consultez la section Créer un rattachement de point de terminaison en tant que nom d'hôte.
Créer un rattachement de point de terminaison en tant que nom d'hôte
Pour créer un rattachement de point de terminaison en tant que nom d'hôte, procédez comme suit:
- Créez un rattachement de point de terminaison en tant qu'adresse IP. Pour en savoir plus, consultez la section Créer un rattachement de point de terminaison en tant qu'adresse IP.
- Créez une zone gérée privée Cloud DNS dans l'un de vos projets Google Cloud.
Dans cette zone DNS, vous devez ajouter un nom d'hôte que vous souhaitez utiliser pour la configuration du connecteur, et mapper le nom d'hôte à l'adresse IP du rattachement de point de terminaison que vous avez obtenue à l'étape 1. Pour en savoir plus sur la création d'une zone gérée privée Cloud DNS, consultez les pages Créer une zone privée et Ajouter un enregistrement.
- Créez une zone gérée Integration Connectors dans votre projet Google Cloud pour l'utiliser. La zone gérée d'Integration Connectors (zone d'appairage) communique avec la zone gérée privée Cloud DNS (créée à l'étape 2) pour la résolution des noms.
Avant de créer la zone gérée, vous devez attribuer les rôles et autorisations suivants:
- Accordez l'autorisation
connectors.managedZones.create
à l'utilisateur qui crée la zone gérée Integration Connectors.L'autorisation
connectors.managedZones.create
est disponible avec le rôle IAMroles/connectors.admin
ou le rôle IAMroles/connectors.managedZonesAdmin
. Pour en savoir plus sur les différents rôles IAM et les autorisations correspondantes disponibles pour Integration Connectors, consultez la page Rôles IAM et autorisations pour Integration Connectors. - Attribuez le rôle
role/dns.peer
au compte de serviceservice-PROJECT_NUMBER@gcp-sa-connectors.iam.gserviceaccount.com
d'Integration Connectors.Si le projet Google Cloud Cloud DNS est différent du projet Google Cloud Integration Connectors, attribuez le rôle
roles/dns.peer
au compte de service Integration Connectors dans le projet Google Cloud Cloud DNS. Imaginons que vous souhaitiez créer la zone gérée Integration Connectors dans le projet Google Cloud 12345 et que Cloud DNS se trouve dans le projet Google Cloud 67890. Dans ce cas, vous devez attribuer le rôleroles/dns.peer
au compte de serviceservice-12345@gcp-sa-connectors.iam.gserviceaccount.com
dans le projet Google Cloud 67890.
Pour créer une zone gérée Integration Connectors, vous pouvez utiliser la console Cloud ou la ligne de commande (gcloud).
Console
Pour créer une zone gérée Integration Connectors à partir de la console Cloud, procédez comme suit:
- Accédez à la page "Zones gérées" pour Integration Connectors.
- Renseignez les champs suivants :
- Nom: nom de la zone gérée.
- Nom DNS cible: nom Cloud DNS pour lequel vous créez la zone gérée (d'appairage).
- Target project (Projet cible) : nom du projet Google Cloud contenant la zone Cloud DNS privée.
- Réseau cible: nom du réseau VPC dans lequel la zone Cloud DNS privée est gérée.
- (Facultatif) Description: saisissez une description du rattachement de point de terminaison.
- (Facultatif) Étiquettes: saisissez les libellés de ressources sous forme de paires clé/valeur. Pour en savoir plus sur les étiquettes, consultez la section Que sont les étiquettes ?
- Cliquez sur Créer.
gcloud
Pour créer une zone gérée Integration Connectors à partir de la ligne de commande, procédez comme suit:
- Obtenez un jeton d'authentification avant d'exécuter l'API CreateManagedZone:
TOKEN="$(gcloud auth print-access-token)"
- Créez la zone gérée à l'aide de l'API CreateManagedZone. Exemple :
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{ "description": "DESCRIPTION", "dns": "DNS_NAME", "target_project": "TARGET_PROJECT", "target_vpc": "TARGET_VPC" }' \ https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/global/managedZones?managedZoneId=MANAGED_ZONE_NAME
Où :
- DESCRIPTION est une description facultative de la zone gérée.
- DNS_NAME est le nom Cloud DNS pour lequel vous créez la zone gérée (d'appairage).
- TARGET_PROJECT est le nom du projet Google Cloud qui contient la zone Cloud DNS privée.
- TARGET_NETWORK est le nom du réseau VPC dans lequel la zone Cloud DNS privée est gérée.
- PROJECT_ID est le projet Google Cloud que vous utilisez pour Integration Connectors.
- MANAGED_ZONE_NAME est le nom de la zone gérée. Le nom doit être unique. Il ne peut pas exister d'autres zones gérées portant le même nom et vous ne pouvez pas le modifier par la suite. Le nom doit commencer par une lettre minuscule suivie de 1 à 63 caractères (lettres minuscules, chiffres ou traits d'union). Il ne peut pas se terminer par un trait d'union. La longueur minimale est de 2.
Une fois que vous avez appelé l'API, Integration Connectors lance une opération de longue durée qui peut prendre un certain temps. La zone gérée sera créée une fois l'opération terminée.
- Vérifiez si la zone gérée a été créée à l'aide de l'API GetManagedZone.
Exemple :
curl -X GET -H "Authorization: Bearer $TOKEN" \ https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/global/managedZones/MANAGED_ZONE_NAME
L'API renvoie une réponse semblable à la suivante :
{ "name": "projects/demo-project/locations/global/managedZones/demo-mz", "createTime": "2023-04-17T04:34:59.569527046Z", "updateTime": "2023-04-17T04:37:25.189074195Z", "description": "demo managed zone", "dns": "api.private.service.com.", "targetVpc": "target-project-vpc", "targetProject": "target-project" }
- Accordez l'autorisation
Si la création de la zone gérée réussit, celle-ci est répertoriée sur la page Zones gérées, comme dans l'image suivante:
Vérifier la configuration du rattachement de point de terminaison
Vous pouvez vérifier la connectivité du point de terminaison en créant une connexion à votre système backend. Lorsque vous créez la connexion, dans la section Destinations
, sélectionnez Hostname
(Destination type
), puis saisissez le nom d'hôte ou l'adresse IP du point de terminaison appropriés. Si la connexion aboutit, son état passe à Active
sur la page Connexions de la console Cloud.