Mit der Datastream API können Sie Konfigurationen für private Konnektivität erstellen, abrufen, auflisten und löschen. Mit diesen Konfigurationen kann Datastream privat mit Datenquellen in Google Cloud oder externen Quellen kommunizieren, die über Cloud VPN oder Cloud Interconnect verbunden sind. Sie können eine private Verbindung über VPC-Netzwerk-Peering (Virtual Private Cloud) oder eine Private Service Connect-Schnittstelle herstellen.
Wenn Sie eine private Verbindung verwenden möchten, müssen sich Ihre Streams, Verbindungsprofile und die Konfiguration für private Verbindungen in derselben Region befinden. Wenn Sie keine regionenübergreifenden Firewallregeln manuell hinzufügen möchten, führen Sie Ihre Quelldatenbank in einem Subnetz in dieser Region aus.
Konfiguration für private Konnektivität mit VPC-Peering erstellen
Bevor Sie eine Konfiguration für private Konnektivität erstellen, müssen Sie Folgendes tun:
- Ein VPC-Netzwerk für das Peering mit dem privaten Netzwerk von Datastream. Weitere Informationen zum Erstellen eines VPC-Netzwerks finden Sie unter VPC-Netzwerk-Peering verwenden.
- Im VPC-Netzwerk muss ein verfügbarer IP-Bereich (mit einem CIDR-Block von mindestens /29) vorhanden sein. Datastream verwendet diesen IP-Bereich, um VPC-Peering mit der bereitgestellten VPC zu erstellen. Der Bereich darf sich also nicht mit Subnetzen innerhalb dieser VPC überschneiden. Dadurch kann Datastream mit der Quelle kommunizieren.
Beim Erstellen einer Konfiguration für private Konnektivität sind zwei Parameter zu berücksichtigen:
vpcName:Geben Sie den Namen und den Pfad des VPC-Netzwerks an.subnet:Weisen Sie einen verfügbaren IP-Bereich im VPC-Netzwerk zu.
Der folgende Code zeigt eine Anfrage zum Erstellen einer Konfiguration für private Verbindungen und gibt die Verbindungsmethode als VPC-Peering (vpcPeeringConfig) an.
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" } }
Beispiel:
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"
}
}
Nachdem die Konfiguration für private Konnektivität erstellt wurde, können Sie Informationen dazu abrufen, indem Sie die Methode privateConnections/get aufrufen. Ihre Ausgabe sieht in etwa so aus:
{
"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
Beispiel:
gcloud datastream private-connections create my-privateConnection --location=us-central1--display-name=my-private-connection --vpc=my-vpc --subnet=10.11.12.13/29
Konfiguration für private Konnektivität mit einer Private Service Connect-Schnittstelle erstellen
Bevor Sie eine Konfiguration für private Konnektivität erstellen, müssen Sie Folgendes tun:
Sie haben ein VPC-Netzwerk, das Sie mit dem privaten Netzwerk von Datastream verbinden können. Weitere Informationen zum Erstellen eines VPC-Netzwerks finden Sie unter VPC-Netzwerke erstellen und verwalten.
Erstellen Sie einen Netzwerkanhang in Ihrem VPC-Projekt.
Prüfen Sie, ob Google Cloud und die lokale Firewall Traffic aus dem IP-Adressbereich des Netzwerkanhangs zur Quelldatenbank zulassen, aus der Sie Daten streamen möchten.
Der folgende Code zeigt eine Anfrage zum Erstellen einer Konfiguration für private Konnektivität mit Private Service Connect-Schnittstellen. Sie müssen zuerst einen Befehl ausführen, um eine private Konnektivitätskonfiguration mit dem Flag validateOnly (--validate-only für die Google Cloud CLI) zu erstellen:
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
In der Antwort erhalten Sie den Namen des Erstellerprojekts, das genehmigt werden soll. Sie müssen es der Liste der zulässigen Projekte für Ihren Netzwerkanhang hinzufügen:
- Verwenden Sie die Methode
describe, um den aktuellenproducer-accept-listfür Ihren Netzwerkanhang abzurufen. Weitere Informationen finden Sie in der Google Cloud SDK-Dokumentation für Compute Engine. - Fügen Sie das Erstellerprojekt mit der Methode
updatezu dieser Liste hinzu. Weitere Informationen finden Sie in der Google Cloud SDK-Dokumentation für Compute Engine.
Nachdem Sie das Erstellerprojekt der Liste der zulässigen Projekte hinzugefügt haben, führen Sie den Befehl zum Erstellen der privaten Konnektivität noch einmal aus, diesmal ohne das 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" } }
Beispiel:
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
Beispiel:
gcloud datastream private-connections create my-private-connection --location=us-central1--display-name=my-private-connection --network-attachment=my-network-attachment
Informationen zu einer Konfiguration für private Konnektivität abrufen
Der folgende Code zeigt eine Anfrage zum Abrufen von Informationen zu einer erstellten Konfiguration für private Konnektivität.
REST
GET https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/ LOCATION/privateConnections/PRIVATE_CONNECTIVITY_CONFIGURATION_ID
Beispiel:
GET https://datastream.googleapis.com/v1/projects/myProjectId/locations/
us-central1/privateConnections/myPrivateConnection
gcloud
Weitere Informationen zur Verwendung von gcloud zum Abrufen von Informationen zu Ihrer Konfiguration für private Verbindungen finden Sie in der Google Cloud SDK-Dokumentation.
Konfigurationen für private Konnektivität auflisten
Der folgende Code zeigt eine Anfrage zum Abrufen von Informationen zu allen Ihren Konfigurationen für private Konnektivität.
REST
GET https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/ LOCATION/privateConnections
gcloud
Weitere Informationen zur Verwendung von gcloud zum Abrufen von Informationen zu allen Ihren Konfigurationen für private Konnektivität finden Sie in der Google Cloud SDK-Dokumentation.
Konfiguration für private Konnektivität löschen
Der folgende Code zeigt eine Anfrage zum Löschen einer Konfiguration für private Konnektivität. Nachdem die Konfiguration gelöscht wurde, funktionieren Verbindungsprofile, die die Konfiguration verwenden, nicht mehr. Darüber hinaus können Streams, die diese Verbindungsprofile verwenden, nicht ausgeführt werden.
Weisen Sie jedem Verbindungsprofil eine andere Konfiguration für private Konnektivität zu, um dieses Problem zu beheben. Weitere Informationen finden Sie unter Verbindungsprofil aktualisieren.
REST
DELETE https://datastream.googleapis.com/v1/projects/PROJECT_ID/locations/ LOCATION/privateConnections/[private-connectivity-configuration-id] {"force": true}
Beispiel:
DELETE https://datastream.googleapis.com/v1/projects/myProjectId/locations/
us-central1/privateConnections/myPrivateConnection {"force": true}
gcloud
Weitere Informationen zum Löschen Ihrer Konfiguration für private Konnektivität mit gcloud finden Sie in der Google Cloud SDK-Dokumentation.
Nächste Schritte
- Weitere Informationen zur privaten Konnektivität
- Weitere Informationen zu anderen Netzwerkverbindungsoptionen, die Sie mit Datastream verwenden können
- Verbindungsprofile mit der Datastream API verwalten
- Datastream API zum Verwalten von Streams verwenden
- Weitere Informationen zur Verwendung der Datastream API finden Sie in der Referenzdokumentation.