Puoi utilizzare l'API Datastream per creare, recuperare, elencare ed eliminare le configurazioni di connettività privata. Queste configurazioni consentono a Datastream di comunicare privatamente con le origini dati in Google Cloud o con le origini esterne connesse tramite Cloud VPN o Cloud Interconnect. Puoi stabilire una connettività privata utilizzando il peering di rete Virtual Private Cloud (VPC) o un'interfaccia Private Service Connect.
Per utilizzare una connessione privata, gli stream, i profili di connessione e la configurazione di connettività privata devono trovarsi nella stessa regione. Per evitare di aggiungere manualmente regole firewall tra regioni, esegui il database di origine in una subnet in quella regione.
Crea una configurazione di connettività privata utilizzando il peering VPC
Prima di creare una configurazione di connettività privata, assicurati di:
- Assicurati di avere una rete VPC per stabilire una connessione in peering con la rete privata di Datastream. Per ulteriori informazioni sulla creazione di una rete VPC, consulta Utilizzo del peering di rete VPC.
- Avere un intervallo IP disponibile (con un blocco CIDR minimo di /29) sulla rete VPC. Datastream utilizza questo intervallo IP per creare il peering VPC con il VPC fornito, pertanto l'intervallo non può sovrapporsi alle subnet all'interno del VPC. Di conseguenza, Datastream può comunicare con l'origine.
Esistono due parametri associati alla creazione di una configurazione di connettività privata:
vpcName:Specifica il nome e il percorso della rete VPC.subnet:Specifica un intervallo IP disponibile sulla rete VPC.
Il codice seguente mostra una richiesta per creare una configurazione di connettività privata e specifica il metodo di connettività utilizzando il peering VPC (vpcPeeringConfig).
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" } }
Ad esempio:
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"
}
}
Una volta creata la configurazione di connettività privata, puoi visualizzare le informazioni corrispondenti chiamando il metodo privateConnections/get. L'output visualizzato è simile al seguente:
{
"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
Ad esempio:
gcloud datastream private-connections create my-privateConnection --location=us-central1--display-name=my-private-connection --vpc=my-vpc --subnet=10.11.12.13/29
Crea una configurazione di connettività privata utilizzando un'interfaccia Private Service Connect
Prima di creare una configurazione di connettività privata, assicurati di:
Assicurati di avere una rete VPC che puoi connettere alla rete privata di Datastream. Per ulteriori informazioni sulla creazione di una rete VPC, consulta Crea e gestisci le reti VPC.
Crea un collegamento di rete nel progetto VPC.
Verifica che Google Cloud e il firewall on-premise consentano il traffico dall'intervallo di indirizzi IP del collegamento di rete al database di origine da cui vuoi trasmettere i flussi di dati.
Il seguente codice mostra una richiesta per creare una configurazione di connettività privata utilizzando le interfacce Private Service Connect. Devi prima eseguire un comando per creare una configurazione di connettività privata con il flag validateOnly (--validate-only per 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
Nella risposta, ricevi il nome del progetto producer da approvare. Devi aggiungerlo all'elenco dei progetti consentiti per il collegamento di rete:
- Utilizza il metodo
describeper ottenere il valoreproducer-accept-listcorrente per il collegamento di rete. Per ulteriori informazioni, consulta la documentazione di Google Cloud SDK di Compute Engine. - Aggiungi il progetto producer a questo elenco utilizzando il metodo
update. Per saperne di più, consulta la documentazione di Google Cloud SDK per Compute Engine.
Dopo aver aggiunto il progetto producer all'elenco dei progetti consentiti, esegui il comando per creare nuovamente la configurazione della connettività privata, questa volta senza il flag 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" } }
Ad esempio:
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
Ad esempio:
gcloud datastream private-connections create my-private-connection --location=us-central1--display-name=my-private-connection --network-attachment=my-network-attachment
Ottieni informazioni su una configurazione di connettività privata
Il codice seguente mostra una richiesta per recuperare informazioni su una configurazione di connettività privata creata.
REST
GET https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/ LOCATION/privateConnections/PRIVATE_CONNECTIVITY_CONFIGURATION_ID
Ad esempio:
GET https://datastream.googleapis.com/v1/projects/myProjectId/locations/
us-central1/privateConnections/myPrivateConnection
gcloud
Per saperne di più sull'utilizzo di gcloud per recuperare informazioni sulla configurazione della connettività privata, consulta la documentazione di Google Cloud SDK.
Elenca le configurazioni di connettività privata
Il codice seguente mostra una richiesta per recuperare informazioni su tutte le configurazioni di connettività privata.
REST
GET https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/ LOCATION/privateConnections
gcloud
Per saperne di più sull'utilizzo di gcloud per recuperare informazioni su tutte le configurazioni di connettività privata, consulta la documentazione di Google Cloud SDK.
Eliminazione di una configurazione di connettività privata
Il codice seguente mostra una richiesta di eliminazione di una configurazione di connettività privata. Dopo l'eliminazione della configurazione, i profili di connessione che la utilizzano non funzioneranno. Inoltre, gli stream che utilizzano questi profili di connessione non saranno utilizzabili.
Per risolvere il problema, assegna una configurazione di connettività privata diversa a ogni profilo di connessione. Per saperne di più, consulta Aggiorna un profilo di connessione.
REST
DELETE https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/ LOCATION/privateConnections/[private-connectivity-configuration-id] {"force": true}
Ad esempio:
DELETE https://datastream.googleapis.com/v1/projects/myProjectId/locations/
us-central1/privateConnections/myPrivateConnection {"force": true}
gcloud
Per saperne di più sull'utilizzo di gcloud per eliminare la configurazione della connettività privata, consulta la documentazione di Google Cloud SDK.
Passaggi successivi
- Scopri di più sulla connettività privata.
- Scopri altre opzioni di connettività di rete che puoi utilizzare con Datastream.
- Scopri come utilizzare l'API Datastream per gestire i profili di connessione.
- Scopri come utilizzare l'API Datastream per gestire gli stream.
- Per ulteriori informazioni sull'utilizzo dell'API Datastream, consulta la documentazione di riferimento.