Private Verbindungen für Snowflake-Übertragungen konfigurieren

In dieser Anleitung erfahren Sie, wie Sie private Verbindungen konfigurieren, um private Datenübertragungen von Snowflake zu BigQuery zu erstellen. Mit privaten Datenübertragungen können Sie Daten von einer Quelle zu einer anderen übertragen, ohne dass die Daten das private Netzwerk verlassen. Außerdem können Sie Sicherheitsrisiken verringern, wenn Sie Daten über das öffentliche Internet übertragen.

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 in Amazon Web Services (AWS), Microsoft Azure und gehostet werden. Google Cloud

Erstellen Sie eine private Verbindung, die Ihr Snowflake-Konto mit Ihrem Cloud-Anbieter verbindet. Weitere Informationen finden Sie unter einer der folgenden Optionen:

Cross-Cloud Interconnect oder HA VPN einrichten

Richten Sie entweder Cross-Cloud Interconnect oder HA VPN von AWS oder Azure ein. Dieser Schritt ist für Snowflake-Konten, die in Google Cloudgehostet werden, nicht erforderlich.

AWS

Mit einem VPN mit Hochverfügbarkeit können Sie Daten über einen verschlüsselten VPN-Tunnel übertragen. Informationen zum Verwenden eines HA VPN für Ihre private Snowflake-Übertragung finden Sie unter HA VPN Verbindungen zwischen Google Cloud und AWS erstellen.

Mit einer Cross-Cloud Interconnect Verbindung wird eine dedizierte private Verbindung zwischen Cloud-Anbietern erstellt. Sie eignet sich für große Datenübertragungen mit niedrigen Latenzanforderungen. Informationen zum Verwenden von Cross-Cloud Interconnect für Ihre private Snowflake Übertragung finden Sie unter Verbindung zu AWS herstellen.

Azure

Mit einem VPN mit Hochverfügbarkeit können Sie Daten über einen verschlüsselten VPN-Tunnel übertragen. Informationen zum Verwenden eines HA VPN für Ihre private Snowflake-Übertragung finden Sie unter HA VPN -Verbindungen zwischen Google Cloud und Azure erstellen.

Mit einer Cross-Cloud Interconnect Verbindung wird eine dedizierte private Verbindung zwischen Cloud-Anbietern erstellt. Sie eignet sich für große Datenübertragungen mit niedrigen Latenzanforderungen. Informationen zum Verwenden von Cross-Cloud Interconnect für Ihre private Snowflake Übertragung finden Sie unter 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 in AWS, Azure oder Google Cloudgehostet werden.

So erstellen und konfigurieren Sie eine Proxy-VM für eine private Snowflake-Übertragung:

  1. Erstellen Sie eine oder mehrere Compute Engine-VM-Instanzen im VPC-Netzwerk des Nutzers.
  2. Laden Sie eine TCP-Proxy-Software wie HAProxy oder Nginx herunter und konfigurieren Sie Folgendes:
    1. Geben Sie einen Port an. Beispiel: 443.
    2. Leiten Sie den gesamten eingehenden TCP-Traffic an den privaten Hostnamen und Port der Snowflake-Instanz weiter.
  3. Konfigurieren Sie die VMs so, dass der private Hostname von Snowflake über das im VPC-Netzwerk des Nutzers konfigurierte DNS aufgelöst wird.
  4. Richten Sie einen internen Passthrough-Load-Balancer ein:
    1. Gruppieren Sie die Proxy-VMs in einer verwalteten Instanzgruppe (MIG).
    2. Richten Sie einen internen Passthrough-Network Load Balancer mit VM-Instanzgruppen-Backend ein.

Dienstanhang erstellen

Erstellen Sie mit Private Service Connect einen Netzwerk-Anhang und veröffentlichen Sie den Dienst. Dieser Schritt ist für Snowflake-Instanzen erforderlich, die in AWS, Azure oder Google Cloudgehostet werden.

Der Dienstanhang muss sich in derselben Region wie Ihr BigQuery-Dataset befinden.

Wenn Ihr Dienst eine explizite Genehmigung verwendet (connection-preference ist auf ACCEPT_MANUAL gesetzt), muss das in Ihrer privaten Snowflake-Datenübertragung verwendete Dienstkonto die folgenden IAM-Berechtigungen haben:

  • compute.serviceAttachments.get
  • compute.serviceAttachments.update
  • compute.regionOperations.get

Notieren Sie sich nach dem Erstellen des Dienstanhangs den URI des Dienstanhangs. Sie benötigen diesen URI, wenn Sie die Snowflake-Übertragungskonfiguration erstellen.

Endpunkt erstellen

Erstellen Sie einen Endpunkt in Ihrem AWS- oder Azure-Konto. Dieser Schritt ist für Snowflake-Konten, die in Google Cloudgehostet werden, nicht erforderlich.

AWS

Erstellen Sie in AWS einen VPC-Endpunkt, der eine Verbindung zu Amazon S3 herstellt. Weitere Informationen finden Sie unter Über einen VPC-Endpunkt der Schnittstelle auf einen AWS-Dienst zugreifen 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 Storage Transfer Service ist der Endpunkt *.blob.core.microsoft.net 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 angeben, wenn Sie im folgenden Abschnitt den Load-Balancer erstellen.

Netzwerk-Load-Balancer erstellen

Richten Sie einen regionalen internen Proxy-Network Load Balancer (NLB) mit Hybridkonnektivität ein. 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 Netzwerk-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 Service Directory. Sie benötigen den Self-Link zum Dienst, wenn Sie die Snowflake-Übertragungskonfiguration erstellen.

Private Snowflake-Übertragungskonfiguration erstellen

Erstellen Sie die Snowflake-Übertragung. 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 Ermitteln 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 Dienst für privates Netzwerk den Self-Link des NLB-Dienstes ein. Er hat das Format projects/PROJECT_ID/locations/LOCATION/namespaces/NAMESPACE/services/SERVICE_NAME.

bq

  • Setzen Sie den Parameter use_private_network auf TRUE.
  • Geben Sie für den Parameter service_attachment den URI des Dienstanhangs an. Informationen zum Ermitteln 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 den private_network_service Parameter den Self-Link des NLB-Dienstes an. Er hat das Format projects/PROJECT_ID/locations/LOCATION/namespaces/NAMESPACE/services/SERVICE_NAME.