Google Cloud Private Service Connect und Snowflake¶
Unter diesem Thema werden Konzepte und die Konfiguration von Google Cloud Private Service Connect, um Ihr Google Cloud Virtual Private Cloud (VPC)-Netzwerksubnetz unter Umgehung des öffentlichen Internets mit Ihrem auf Google Cloud gehosteten Snowflake-Konto zu verbinden.
Beachten Sie, dass Google Cloud Private Service Connect nicht ein von Snowflake angebotener Dienst ist. Es handelt sich um einen Google-Service, den Snowflake für die Verwendung mit Ihrem Snowflake-Konto aktiviert.
Überblick¶
Google Cloud Private Service Connect stellt private Konnektivität zu Snowflake bereit, indem es sicherstellt, dass der Zugriff auf Snowflake über eine private IP-Adresse erfolgt. Snowflake erscheint als Ressource in Ihrem Netzwerk (d. h. im Kundennetzwerk), aber der Datenverkehr fließt in einer Richtung von Ihrer VPC über das Google-Netzwerk-Backbone zur Snowflake-VPC. Dieses Setup ermöglicht eine deutlich vereinfachte Netzwerkkonfiguration und sorgt gleichzeitig für eine sichere und private Kommunikation.
Das folgende Diagramm fasst die Architektur von Google Cloud Private Service Connect in Bezug auf den Google Cloud VPC des Kunden und den Snowflake-Dienst zusammen.

Die Google Compute Engine (d. h. eine virtuelle Maschine) verbindet sich mit einer privaten, virtuellen IP-Adresse, die zu einer Weiterleitungsregel weiterleitet (1). Die Weiterleitungsregel verbindet sich mit dem Dienstanhang über eine private Verbindung (2). Die Verbindung wird über einen Load Balancer (3) geleitet, der sie zu Snowflake (4) umleitet.
Einschränkungen¶
Maximal 10 Verbindungen pro Projekt.
Maximal 50 Verbindungen pro Konto.
Einige Snowflake-Systemfunktionen für das Self-Service-Management werden nicht unterstützt. Weitere Informationen dazu finden Sie unter Aktuelle Einschränkungen für Konten auf Google Cloud.
Weitere Details dazu finden Sie unter:
Konfigurieren Sie Ihre Google Cloud VPC-Umgebung¶
In diesem Abschnitt werden die Snowflake-spezifischen Details zur Konfiguration Ihrer Google Cloud VPC-Umgebung behandelt.
Wichtig
Snowflake ist nicht verantwortlich für die Konfiguration Ihrer Google Cloud-Umgebung. Dieses Verfahren zeigt die Grundlagen der Verwendung von Google Cloud CLI, ist aber keine endgültige Anleitung. Beispiel:
Sie könnten die Google Cloud console verwenden, um Ihre Google Cloud-Umgebung anstelle der Google Cloud CLI zu konfigurieren, wodurch sich die Schritte ändern würden. Wenn Sie zum Beispiel Google Cloud console verwenden, erstellen Sie einen Endpunkt und keine Weiterleitungsregel.
Es wird nicht gezeigt, wie Sie erforderliche Firewall-Updates und DNS-Einträge konfigurieren müssen.
Er zeigt Ihnen nicht, wie Sie einen Endpunkt in anderen Regionen verfügbar machen können (Private Service Connect-Endpunkte sind regionale Ressourcen). Weitere Informationen darüber, wie Sie einen Endpunkt in anderen Regionen verfügbar machen, finden Sie in der Google-Dokumentation.
Wenn Sie weitere Hilfe benötigen, wenden Sie sich an Ihren internen Google Cloud-Administrator.
Als Administrator eines Snowflake-Kontos (d. h. als Benutzer mit der Systemrolle ACCOUNTADMIN) öffnen Sie ein Arbeitsblatt und rufen die Funktion SYSTEM$GET_PRIVATELINK_CONFIG auf. Sie müssen die Ausgabe für spätere Schritte speichern.
Beispiel:
USE ROLE ACCOUNTADMIN; SELECT key, value FROM TABLE(flatten(input=>parse_json(system$get_privatelink_config())));
Verwenden Sie die Google Cloud CLI, um die gcloud-Bibliothek auf die neueste Version zu aktualisieren:
gcloud components update
Authentifizieren Sie mit dem folgenden Befehl bei Google Cloud:
gcloud auth login
Legen Sie in Ihrer Google Cloud VPC die ID für das Projekt fest, in dem sich die Weiterleitungsregel befinden soll.
gcloud config set project <project_id>
Um eine Liste der Projekt-IDs zu erhalten, führen Sie den folgenden Befehl aus:
gcloud projects list --sort-by=projectId
Erstellen Sie in Ihrer Google Cloud VPC eine virtuelle IP-Adresse:
gcloud compute addresses create <customer_vip_name> \ --subnet=<subnet_name> \ --addresses=<customer_vip_address> --region=<region>
Wobei:
customer_vip_name
gibt den Namen der virtuellen IP-Regel an (zum Beispielpsc-vip-1
).subnet_name
gibt den Namen des Subnetzes an.customer_vip_address
gibt eine IP-Adresse an, an die alle privaten Konnektivitäts-URLs aufgelöst werden. Geben Sie eine IP-Adresse aus Ihrem Netzwerk an, oder verwenden Sie die CIDR-Notation, um einen Bereich von IP-Adressen anzugeben.region
gibt die Cloudregion an, in der sich Ihr Snowflake Konto befindet.
Beispiel:
gcloud compute addresses create psc-vip-1 \ --subnet=psc-subnet \ --addresses=192.168.3.3 \ --region=us-central1
Ausgabe:
Created [https://www.googleapis.com/compute/v1/projects/docstest-123456/regions/us-central1/addresses/psc-vip-1].
Erstellen Sie eine Weiterleitungsregel, damit Ihr Subnetz zum Private Service Connect-Endpunkt und dann zum Snowflake-Dienstendpunkt geleitet wird.
gcloud compute forwarding-rules create <name> \ --region=<region> \ --network=<network_name> \ --address=<customer_vip_name> \ --target-service-attachment=<privatelink-gcp-service-attachment>
Wobei:
name
gibt den Namen der Weiterleitungsregel an.region
gibt die Cloudregion an, in der sich Ihr Snowflake Konto befindet.network_name
gibt den Namen des Netzwerks für diese Weiterleitungsregel an.customer_vip_name
gibt den Wert<name>
(d. h.psc-vip-1
) der virtuellen IP-Adresse an, die im vorherigen Schritt erstellt wurde.privatelink-gcp-service-attachment
gibt den Endpunkt für den Snowflake-Dienst an, den Sie erhalten haben, als Sie in einem früheren Schritt die Funktion SYSTEM$GET_PRIVATELINK_CONFIG ausgeführt haben.
Beispiel:
gcloud compute forwarding-rules create test-psc-rule \ --region=us-central1 \ --network=psc-vpc \ --address=psc-vip-1 \ --target-service-attachment=projects/us-central1-deployment1-c8cc/regions/us-central1/serviceAttachments/snowflake-us-central1-psc
Ausgabe:
Created [https://www.googleapis.com/compute/projects/mdlearning-293607/regions/us-central1/forwardingRules/test-psc-rule].
Verwenden Sie den folgenden Befehl, um zu überprüfen, ob die Weiterleitungsregel erfolgreich erstellt wurde:
gcloud compute forwarding-rules list --regions=<region>
Wobei:
region
ist die Cloud Region, in der sich Ihr Snowflake-Konto befindet. Wenn sich Ihr Snowflake-Konto zum Beispiel in der Regioneurope-west2
befindet, ersetzen Sie<region>
durcheurope-west2
.
Eine vollständige Liste der Regionen von Google Cloud und ihrer Formatierung finden Sie unter . Eine Liste der verfügbaren Regionen finden Sie unter.
Aktualisieren Sie Ihre DNS-Einstellungen.
Alle Anfragen an Snowflake müssen über den Private Service Connect-Endpunkt geroutet werden, damit die von der Funktion SYSTEM$GET_PRIVATELINK_CONFIG zurückgegebenen URLs in die von Ihnen erstellte VIP-Adresse aufgelöst wird (
<customer_vip_address>
).Die Werte, die Sie aus der Ausgabe von SYSTEM$GET_PRIVATELINK_CONFIG erhalten, hängen davon ab, auf welche Snowflake-Features Sie über private Konnektivität zugreifen. Eine Beschreibung der möglichen Werte finden Sie unter Rückgabewerte.
Beachten Sie, dass die Werte für
regionless-snowsight-privatelink-url
undsnowsight-privatelink-url
den Zugang zu Snowsight und Snowflake Marketplace über private Konnektivität ermöglichen. Wenn Sie URL-Umleitungen aktivieren möchten, müssen Sie jedoch weitere Konfigurationen vornehmen. Informationen finden Sie unter Snowsight und Private Konnektivität.Bemerkung
Eine vollständige Erläuterung der DNS-Konfiguration würde den Rahmen dieses Verfahrens sprengen. Sie können beispielsweise eine private DNS-Zone in Ihre Umgebung integrieren, indem Sie Cloud DNS verwenden. Bitte wenden Sie sich an Ihre internen Google Cloud und Cloud-Infrastruktur-Administratoren, um die URLs in DNS richtig zu konfigurieren und zu beheben.
Mit Snowflake verbinden¶
Bevor Sie sich mit Snowflake verbinden, können Sie optional SnowCD (Snowflake Connectivity Diagnostic Tool) nutzen, um die Netzwerkverbindung mit Snowflake und Private Service Connect zu prüfen. Weitere Informationen dazu finden Sie unter SnowCD und SYSTEM$ALLOWLIST_PRIVATELINK.
Um mit Ihrem privaten Konnektivitätskonto eine Verbindung zu Snowflake herzustellen, siehe Verbinden mittels URL.
Verwenden von SSO mit Google Private Service Connect¶
Snowflake unterstützt die Verwendung von SSO mit Google Cloud Private Service Connect. Weitere Informationen dazu finden Sie unter:
Verwenden von Clientumleitung mit Google Cloud Private Service Connect¶
Snowflake unterstützt die Verwendung der Clientumleitung mit Google Cloud Private Service Connect.
Weitere Informationen dazu finden Sie unter Umleiten von Clientverbindungen.
Verwenden von Replikation und Tri-Secret Secure mit privater Konnektivität¶
Snowflake unterstützt das Replizieren Ihrer Daten vom Quellkonto in ein Zielkonto, unabhängig davon, ob Sie Tri-Secret Secure oder dieses Feature im Zielkonto aktivieren.
Sperrung des öffentlichen Zugangs — Empfohlen¶
Nachdem Sie die Google Cloud Private Service Connect-Konnektivität mit Snowflake getestet haben, können Sie optional den öffentlichen Zugang zu Snowflake mithilfe von Netzwerkrichtlinien blockieren. Weitere Informationen dazu finden Sie unter Steuern des Netzwerkdatenverkehrs mit Netzwerkrichtlinien.
Konfigurieren Sie den CIDR-Blockierbereich so, dass der öffentliche Zugriff auf Snowflake anhand des IP-Adressbereichs Ihrer Organisation blockiert wird. Dieser Bereich kann innerhalb Ihres virtuellen Netzwerks liegen.
Sobald die CIDR-Blockierbereiche festgelegt sind, können nur IP-Adressen aus dem CIDR-Blockierbereich auf Snowflake zugreifen.
So blockieren Sie den öffentlichen Zugriff mithilfe einer Netzwerkrichtlinie:
Erstellen Sie eine IPv4-Netzwerkregel oder bearbeiten Sie eine bestehende IPv4-Netzwerkregel, um den CIDR-Blockbereich für Ihr Unternehmen hinzuzufügen.
Erstellen oder ändern Sie eine Netzwerkrichtlinie, um die IPv4-Netzwerkregel zu verwenden.
Aktivieren Sie die Netzwerkrichtlinie für Ihr Konto.