Gérer les configurations de connectivité privée

Sur cette page, vous allez apprendre à utiliser l'API Datastream pour obtenir des informations sur, créer et supprimer des configurations de connectivité privée.

Les configurations de connectivité privée contiennent des informations que Datastream utilise pour communiquer avec une source de données sur un réseau privé (en interne dans Google Cloud, ou avec des sources externes connectées via VPN ou interconnexion). Cette communication se fait via une interface Private Service Connect ou une connexion d'appairage de cloud privé virtuel (VPC).

Créer une configuration de connectivité privée à l'aide de l'appairage de VPC

Avant de créer une configuration de connectivité privée, assurez-vous que les conditions suivantes sont satisfaites :

  • Vous disposez d'un réseau VPC à appairer avec le réseau privé de Datastream. Pour en savoir plus sur la création d'un réseau VPC, consultez Utiliser l'appairage de réseaux VPC.
  • Vous disposez d'une plage d'adresses IP disponible (avec un bloc CIDR d'au moins /29) sur le réseau VPC. Datastream utilise cette plage d'adresses IP pour créer un appairage VPC avec le VPC fourni. La plage ne peut donc pas chevaucher les sous-réseaux de ce VPC. Ainsi, Datastream peut communiquer avec la source.

Deux paramètres sont associés à la création d'une configuration de connectivité privée :

  • vpcName:, qui indique le nom et le chemin d'accès du réseau VPC.
  • subnet: qui fournit une plage d'adresses IP disponibles sur le réseau VPC.

Le code suivant montre une demande de création de configuration de connectivité privée et spécifie l'utilisation de l'appairage de VPC (vpcPeeringConfig) comme méthode de connectivité.

REST

POST https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/
LOCATION/privateConnections?privateConnectionId=PRIVATE_CONNECTIVITY_CONFIGURATION_ID
{
  "displayName": "DISPLAY_NAME",
  "vpcPeeringConfig": {
      "vpcName": "VPC_NAME",
      "subnet": "SUBNET"
  }
}

Exemple :

POST https://datastream.googleapis.com/v1/projects/myProjectId/locations/
us-central1/privateConnections?privateConnectionId=myPrivateConnection
{
  "displayName": "my-private-connection",
  "vpcPeeringConfig": {
    "vpcName": "projects/my-project/global/networks/my-vpc",
    "subnet": "10.11.12.13/29"
  }
}

Une fois la configuration de connectivité privée créée, vous pouvez afficher des informations la concernant en appelant la méthode privateConnections/get. Un résultat semblable aux lignes suivantes s'affiche :

{
  "name": "projects/projectId/location/us-central1/privateConnections/myPrivateConnection",
  "createTime": "2019-12-22T16:17:37.159786963Z",
  "updateTime": "2019-12-22T16:17:37.159786963Z",
  "displayName": "my-private-connection",
  "state": "CREATED",
  "vpcPeeringConfig": {
    "vpcName": "projects/my-project/global/networks/my-vpc",
    "subnet": "10.11.12.13/29"
  }  
}

gcloud

gcloud datastream private-connections create PRIVATE_CONNECTION_NAME --location=LOCATION --display-name=DISPLAY_NAME --vpc=VPC_NAME --subnet=SUBNET

Exemple :

gcloud datastream private-connections create my-privateConnection --location=us-central1 --display-name=my-private-connection --vpc=my-vpc --subnet=10.11.12.13/29

Créer une configuration de connectivité privée à l'aide d'une interface Private Service Connect

Avant de créer une configuration de connectivité privée, assurez-vous que les conditions suivantes sont satisfaites :

  • Vous devez disposer d'un réseau VPC à connecter au réseau privé de Datastream. Pour en savoir plus sur la création d'un réseau VPC, consultez Créer et gérer des réseaux VPC.

  • Créez un rattachement de réseau dans votre projet VPC.

  • Vérifiez que Google Cloud et le pare-feu sur site autorisent le trafic depuis la plage d'adresses IP du rattachement de réseau vers la base de données source à partir de laquelle vous souhaitez diffuser des données.

Le code suivant montre une requête de création d'une configuration de connectivité privée à l'aide d'interfaces Private Service Connect. Vous devez d'abord exécuter une commande pour créer une configuration de connectivité privée avec l'option validateOnly (--validate-only pour Google Cloud CLI) :

REST

POST "https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/
LOCATION/privateConnections?privateConnectionId=PRIVATE_CONNECTIVITY_CONFIGURATION_ID&validateOnly=true"

gcloud

gcloud datastream private-connections create PRIVATE_CONNECTION_NAME --location=LOCATION --display-name=DISPLAY_NAME --network-attachment=NETWORK_ATTACHMENT_NAME --validate-only

Dans la réponse, vous obtenez le nom du projet producteur à approuver. Vous devez l'ajouter à la liste des projets autorisés pour le rattachement de réseau :

  1. Utilisez la méthode describe pour obtenir le producer-accept-list actuel pour votre pièce jointe réseau. Pour en savoir plus, consultez la documentation du SDK Google Cloud pour Compute Engine.
  2. Ajoutez le projet producteur à cette liste à l'aide de la méthode update. Pour en savoir plus, consultez la documentation du SDK Google Cloud pour Compute Engine.

Une fois que vous avez ajouté le projet producteur à la liste des projets autorisés, exécutez à nouveau la commande pour créer la configuration de connectivité privée, cette fois sans l'option validateOnly :

REST

POST https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/
LOCATION/privateConnections?privateConnectionId=PRIVATE_CONNECTIVITY_CONFIGURATION_ID
{
  "displayName": "DISPLAY_NAME",
  "pscInterfaceConfig": {
      "networkAttachment": "NETWORK_ATTACHMENT_NAME"
  }
}

Exemple :

POST https://datastream.googleapis.com/v1/projects/myProjectId/locations/
us-central1/privateConnections?privateConnectionId=myPrivateConnection
{
  "displayName": "my-private-connection",
  "pscInterfaceConfig": {
    "networkAttachment": "projects/my-project/regions/us-central1/networkAttachments/my-na"
  }
}

gcloud

gcloud datastream private-connections create PRIVATE_CONNECTION_NAME --location=LOCATION --display-name=DISPLAY_NAME --network-attachment=NETWORK_ATTACHMENT_NAME

Exemple :

gcloud datastream private-connections create my-private-connection --location=us-central1 --display-name=my-private-connection --network-attachment=my-network-attachment

Obtenir des informations sur une configuration de connectivité privée

Le code suivant montre une requête de récupération d'informations pour une configuration de connectivité privée préalablement créée.

REST

GET https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/
LOCATION/privateConnections/PRIVATE_CONNECTIVITY_CONFIGURATION_ID

Exemple :

GET https://datastream.googleapis.com/v1/projects/myProjectId/locations/
us-central1/privateConnections/myPrivateConnection
     

gcloud

Pour en savoir plus sur l'utilisation de gcloud afin de récupérer des informations sur votre configuration de connectivité privée, consultez la documentation du SDK Google Cloud.

Répertorier les configurations de connectivité privée

Le code suivant montre une requête de récupération d'informations sur toutes vos configurations de connectivité privée.

REST

GET https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/
LOCATION/privateConnections

gcloud

Pour en savoir plus sur l'utilisation de gcloud afin de récupérer des informations sur toutes vos configurations de connectivité privée, consultez la documentation du SDK Google Cloud.

Supprimer une configuration de connectivité privée

Le code suivant montre une requête de suppression d'une configuration de connectivité privée. Une fois la configuration supprimée, les profils de connexion utilisant cette configuration ne fonctionneront plus. En outre, les flux utilisant ces profils de connexion ne seront pas exploitables.

Pour résoudre ce problème, attribuez une configuration de connectivité privée différente à chaque profil de connexion. Pour en savoir plus, consultez la page Mettre à jour un profil de connexion.

REST

DELETE https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/
LOCATION/privateConnections/[private-connectivity-configuration-id] {"force": true} 

Exemple :

DELETE https://datastream.googleapis.com/v1/projects/myProjectId/locations/
us-central1/privateConnections/myPrivateConnection {"force": true} 

gcloud

Pour en savoir plus sur la suppression de votre configuration de connectivité privée à l'aide de gcloud, consultez la documentation du SDK Google Cloud.

Étapes suivantes