Private Verbindung für Snowflake-Übertragungen konfigurieren
In dieser Anleitung erfahren Sie, wie Sie eine private Verbindung konfigurieren, um private Datenübertragungen von Snowflake zu BigQuery zu erstellen. Mit privaten Datenübertragungen können Sie Daten von einer Quelle in eine andere übertragen, ohne das öffentliche Internet zu nutzen. So lassen sich Sicherheitsrisiken bei der Datenübertragung über das öffentliche Internet verringern.
In den folgenden Abschnitten werden die erforderlichen Schritte zum Konfigurieren privater Verbindungen beschrieben, bevor Sie eine Snowflake-Übertragung erstellen können.
Private Übertragungen werden für Snowflake-Instanzen unterstützt, die auf Amazon Web Services (AWS), Microsoft Azure und Google Cloudgehostet werden.
Private Verbindung zu Snowflake erstellen
Erstellen Sie einen Private Link, der Ihr Snowflake-Konto mit Ihrem Cloud-Anbieter verbindet. Weitere Informationen finden Sie unter einer der folgenden Optionen:
AWS
AWS PrivateLink konfigurieren, um Ihr Snowflake-Konto mit Ihrem AWS-Konto zu verbinden. Ihr AWS-Konto muss den für eine Snowflake-Übertragung erforderlichen Amazon S3-Staging-Bucket enthalten.
Azure
Konfigurieren Sie Azure Private Link, um Ihr virtuelles Azure-Netzwerk (VNet) mit dem Snowflake-VNet in Azure zu verbinden. Ihr Azure-Konto muss den für eine Snowflake-Übertragung erforderlichen Blob-Staging-Bucket enthalten.
Google Cloud
Konfigurieren Google Cloud Sie Private Service Connect, um das Subnetz Ihres VPC-Netzwerks (Virtual Private Cloud) Google Cloud mit Ihrem Snowflake-Konto zu verbinden. Für IhreGoogle Cloud ist ein Cloud Storage-Staging-Bucket erforderlich, der für eine Snowflake-Übertragung benötigt wird.
Cross-Cloud Interconnect oder HA VPN einrichten
Richten Sie entweder Cross-Cloud Interconnect oder HA VPN von AWS oder Azure aus ein. Dieser Schritt ist fürGoogle Cloud-gehostete Snowflake-Konten nicht erforderlich.
AWS
Mit einem VPN mit hoher Verfügbarkeit können Sie Daten über einen verschlüsselten VPN-Tunnel übertragen. Informationen zum Verwenden eines HA VPN für Ihren privaten Snowflake-Transfer finden Sie unter HA VPN-Verbindungen zwischen Google Cloud und AWS erstellen.
Eine Cross-Cloud Interconnect-Verbindung stellt eine dedizierte private Verbindung zwischen Cloud-Anbietern her und eignet sich für große Datenübertragungen mit Anforderungen an niedrige Latenz. Informationen zur Verwendung von Cross-Cloud Interconnect für die private Snowflake-Übertragung finden Sie unter Verbindung zu AWS herstellen.
Azure
Mit einem VPN mit hoher Verfügbarkeit können Sie Daten über einen verschlüsselten VPN-Tunnel übertragen. Wenn Sie ein HA VPN für Ihre private Snowflake-Übertragung verwenden möchten, lesen Sie den Abschnitt HA VPN-Verbindungen zwischen Google Cloud und Azure erstellen.
Eine Cross-Cloud Interconnect-Verbindung stellt eine dedizierte private Verbindung zwischen Cloud-Anbietern her und eignet sich für große Datenübertragungen mit Anforderungen an niedrige Latenz. Wenn Sie Cross-Cloud Interconnect für die private Snowflake-Übertragung verwenden möchten, lesen Sie den Abschnitt Verbindung zu Azure herstellen.
Proxy-VM erstellen
Für eine private Verbindung ist eine Proxy-VM erforderlich, um die Verbindung zwischen Ihren Datenquellen herzustellen, ohne dass Ihre Daten das öffentliche Internet erreichen. Dieser Schritt ist für Snowflake-Instanzen erforderlich, die auf AWS, Azure oder Google Cloudgehostet werden.
So erstellen und konfigurieren Sie eine Proxy-VM für eine private Snowflake-Übertragung:
- Erstellen Sie eine oder mehrere Compute Engine-VM-Instanzen im VPC-Netzwerk des Nutzers.
- Laden Sie eine TCP-Proxy-Software wie HAProxy oder Nginx herunter und konfigurieren Sie Folgendes:
- Geben Sie einen Port an. Beispiel:
443. - Leiten Sie den gesamten eingehenden TCP-Traffic an den privaten Hostnamen und Port der Snowflake-Instanz weiter.
- Geben Sie einen Port an. Beispiel:
- Konfigurieren Sie die VMs so, dass der private Snowflake-Hostname über den im VPC-Netzwerk konfigurierten DNS aufgelöst wird.
- So richten Sie einen internen Passthrough-Load-Balancer ein:
Dienstanhang erstellen
Private Service Connect zum Erstellen eines Netzwerkanhangs und zum Veröffentlichen des Dienstes verwenden Dieser Schritt ist für Snowflake-Instanzen erforderlich, die auf AWS, Azure oder Google Cloudgehostet werden.
Ihr Dienstanhang muss sich in derselben Region wie Ihr BigQuery-Dataset befinden.
Wenn für Ihren Dienst die explizite Genehmigung verwendet wird (connection-preference ist auf ACCEPT_MANUAL festgelegt), muss das in Ihrem privaten Snowflake-Datenübertragungsvorgang verwendete Dienstkonto die folgenden IAM-Berechtigungen haben:
compute.serviceAttachments.getcompute.serviceAttachments.updatecompute.regionOperations.get
Nachdem Sie den Dienstanhang erstellt haben, notieren Sie sich den URI des Dienstanhangs. Sie benötigen diesen URI, wenn Sie Ihre Snowflake-Übertragungskonfiguration erstellen.
Endpunkt erstellen
Erstellen Sie einen Endpunkt in Ihrem AWS- oder Azure-Konto. Dieser Schritt ist fürGoogle Cloud-gehostete Snowflake-Konten nicht erforderlich.
AWS
Erstellen Sie in AWS einen VPC-Endpunkt, der eine Verbindung zu Amazon S3 herstellt. Weitere Informationen finden Sie unter Auf einen AWS-Dienst über einen Interface-VPC-Endpunkt zugreifen.
Azure
Konfigurieren Sie einen privaten Endpunkt für das Speicherkonto in Azure. Weitere Informationen finden Sie unter Private Endpunkte für Azure Storage verwenden.
Für den Storage Transfer Service ist der *.blob.core.microsoft.net-Endpunkt erforderlich. Der Endpunkt *.dfs.core.microsoft.net wird nicht unterstützt.
Notieren Sie sich nach dem Erstellen die IP-Adresse des Endpunkts. Sie müssen die IP-Adresse beim Erstellen des Load-Balancers im nächsten Abschnitt angeben.
Netzwerk-Load-Balancer erstellen
Regionalen internen Proxy-Network Load Balancer (NLB) mit Hybridkonnektivität einrichten. Sie können den Load Balancer erstellen, um Traffic an die Amazon S3-VPC-Endpunkte oder die privaten Azure Storage-Endpunkte weiterzuleiten, die Sie im vorherigen Abschnitt erstellt haben. Weitere Informationen finden Sie unter Regionalen internen Proxy-Network Load Balancer mit Hybridkonnektivität einrichten.
NLB registrieren
Nachdem Sie den NLB erstellt haben, registrieren Sie ihn im Service Directory im Storage Transfer Service. Weitere Informationen finden Sie unter NLB bei Service Directory registrieren.
Notieren Sie sich den Link zum Dienstverzeichnis. Sie benötigen den Self-Link zum Dienst, wenn Sie Ihre Snowflake-Übertragungskonfiguration erstellen.
Private Snowflake-Übertragungskonfiguration erstellen
Snowflake-Übertragung erstellen Gehen Sie beim Einrichten der Übertragungskonfiguration so vor:
Console
- Wählen Sie für Privates Netzwerk verwenden die Option Wahr aus.
- Geben Sie für PSC-Dienstanhang den URI des Dienstanhangs ein. Informationen zum Suchen des URI des Dienstanhangs finden Sie unter Details für einen veröffentlichten Dienst ansehen.
Der URI des Dienstanhangs hat das Format
projects/PROJECT_ID/regions/REGION/serviceAttachments/SERVICE_ATTACHMENT. - Geben Sie für Private Network Service den Self-Link des NLB-Dienstes ein.
Dazu wird das Format
projects/PROJECT_ID/locations/LOCATION/namespaces/NAMESPACE/services/SERVICE_NAMEverwendet.
bq
- Legen Sie für den Parameter
use_private_networkden WertTRUEfest. - Geben Sie für den Parameter
service_attachmentden URI des Dienstanhangs an. Informationen zum Suchen des URI des Dienstanhangs finden Sie unter Details für einen veröffentlichten Dienst ansehen. Der URI des Dienstanhangs hat das Formatprojects/PROJECT_ID/regions/REGION/serviceAttachments/SERVICE_ATTACHMENT. - Geben Sie für den Parameter
private_network_serviceden Self-Link des NLB-Dienstes an. Dazu wird das Formatprojects/PROJECT_ID/locations/LOCATION/namespaces/NAMESPACE/services/SERVICE_NAMEverwendet.