Verbindung zu Cloud SQL herstellen

Auf dieser Seite erhalten Sie einen Überblick über die Möglichkeiten, eine Verbindung zu Ihrer Cloud SQL-Instanz herzustellen.

Bevor Sie eine Verbindung zu einer Cloud SQL-Instanz herstellen können, müssen Sie entscheiden, wie Sie Ihre Cloud SQL-Instanz und die unterstützenden Netzwerkressourcen bereitstellen und konfigurieren möchten. Wenn Ihre Cloud SQL-Instanz bereits konfiguriert und bereitgestellt ist, können Sie auf dieser Seite die verschiedenen Möglichkeiten kennenlernen, Ihre Clients mit der vorhandenen Instanz zu verbinden.

IP-Adresstyp: privat oder öffentlich

Wenn Sie Ihre Cloud SQL-Instanz zum ersten Mal erstellen, können Sie wählen, ob Sie die Instanz mit einer öffentlichen IP-Adresse, einer privaten IP-Adresse oder einer Kombination aus beiden konfigurieren möchten.

Sie wählen die IP-Adresskonfiguration Ihrer Instanz basierend auf den Anforderungen Ihrer Anwendung aus. Nachdem Sie Ihre Instanz konfiguriert haben, geben Sie entweder eine öffentliche IP-Adresse, eine private IP-Adresse oder in einigen Fällen einen DNS-Namen in Ihrer Clientverbindungsstring an.

Private IP-Adresse Öffentliche IP-Adresse
Beschreibung Interne IP-Adresse, die nur über das VPC-Netzwerk (Virtual Private Cloud) verfügbar ist (privat) Eine externe, über das Internet zugängliche (öffentliche) IP-Adresse
Entscheidungspunkte

Müssen Sie eine Verbindung von Clients herstellen, die in VPC-Netzwerken gehostet werden, Google Cloud oder von Clients, die Zugriff auf diese VPC-Netzwerke haben?

Wenn ja, wählen Sie eine private IP-Adresse für die Instanz aus.

Müssen Sie eine Verbindung von Clients außerhalb des Google Cloud VPC-Netzwerk über das öffentliche Internet herstellen?

Wenn ja, wählen Sie eine öffentliche IP-Adresse für die Instanz aus.

Konfigurationsoptionen

Die folgenden Arten von privaten Netzwerkkonfigurationen werden unterstützt:

Wenn Sie über eine öffentliche IP-Adresse eine direkte Verbindung zu einer Instanz herstellen, müssen Sie autorisierte Netzwerke konfigurieren.

Eine weitere sicherere Alternative zum Herstellen einer Verbindung zu einer Cloud SQL-Instanz, die eine öffentliche IP-Adresse verwendet ist die Verwendung eines Cloud SQL-Connectors (z. B. des Cloud SQL Auth-Proxys oder eines der Cloud SQL-Sprachverbindungen).

Eine Anleitung zum Hinzufügen einer öffentlichen IP-Adresse zu Ihrer Instanz finden Sie unter Öffentliche IP-Adresse konfigurieren.

Wenn Sie über eine öffentliche IP-Adresse eine Verbindung zu einer Cloud SQL-Instanz herstellen möchten, können Sie den psql Client oder einen anderen verfügbaren Client verwenden.

Zusammenfassung

Empfehlung: Aus Sicherheitsgründen empfehlen wir, Ihre Instanz mit einer privaten IP-Adresse zu konfigurieren, es sei denn, Sie haben bestimmte Anforderungen an eine über das Internet zugängliche Cloud SQL-Instanz oder stellen eine Verbindung von einem Client aus her, der die Anforderungen für eine VPC nicht erfüllt.

Verbindungstyp: Cloud SQL-Connector oder direkt

Wenn Sie eine Verbindung zu einer Cloud SQL-Instanz herstellen, können Sie einen Cloud SQL-Connector verwenden oder eine direkte Verbindung herstellen.

Ein Cloud SQL-Connector ist entweder der Cloud SQL Auth-Proxy oder eine der Cloud SQL-Sprachverbindungen.

Cloud SQL-Connector Direkte Verbindung
Beschreibung Der Cloud SQL Auth-Proxy, ein clientseitiger Proxy, und die Cloud SQL-Sprachverbindungen, clientseitige Bibliotheken, ermöglichen einen vereinfachten und sicheren Zugriff auf Ihre Cloud SQL-Instanzen, insbesondere wenn Sie über eine öffentliche IP-Adresse eine Verbindung zu einer Instanz herstellen. Eine direkte Verbindung von einem Client zu einer Cloud SQL-Instanz bietet eine Verbindung mit geringerer Latenz. Eine direkte Verbindung kann entweder über eine öffentliche oder eine private IP-Adresse hergestellt werden.
Entscheidungspunkte

Cloud SQL-Connectors sind in den folgenden Szenarien von Vorteil:

  • Wenn Sie über eine öffentliche IP-Adresse eine Verbindung zu einer Cloud SQL-Instanz herstellen möchten ohne autorisierte Netzwerke konfigurieren zu müssen.
  • Wenn Sie den Traffic zur und von der Datenbank automatisch mit der Überprüfung der Server und Clientidentität verschlüsseln möchten, ohne SSL-Zertifikate verwalten zu müssen.
  • Wenn Sie die IAM-Datenbankauthentifizierung verwenden und Ihre OAuth 2.0-Zugriffstokens automatisch aktualisieren möchten.
  • Wenn Sie eine Verbindung von einem Client oder einer Anwendung aus herstellen, die eine dynamisch zugewiesene oder sitzungsspezifische IP-Adresse verwendet. Die dynamische IP-Konfiguration ist bei PaaS-Anwendungen (Platform as a Service) üblich.

Die Verwendung einer direkten Verbindung bietet folgende Vorteile:

  • Geringere Latenz im Vergleich zu Verbindungen mit Cloud SQL-Connectors.
  • Keine zusätzliche Paket- oder Bibliotheksabhängigkeit wie bei Cloud SQL-Connectors.
  • Wenn Sie eine direkte Verbindung verwenden, sind Sie für die Konfiguration der SSL/TLS-Einstellungen verantwortlich.
Konfigurationsoptionen

So konfigurieren Sie SSL/TLS-Zertifikate für die Cloud SQL-Instanz und für Ihren Client:

  1. Wählen Sie einen Modus für die Serverzertifizierungsstelle für Ihre Instanz aus.
  2. Konfigurieren Sie Ihre Instanz so, dass die SSL/TLS-Verschlüsselung für Verbindungen zur Instanz erzwungen wird.
  3. Erstellen Sie Clientzertifikate.
  4. Laden Sie Ihre Server- und Clientzertifikate herunter.
Zusammenfassung

Wenn Sie eine Verbindung zu einer Cloud SQL-Instanz herstellen, können Sie entweder einen Cloud SQL-Connector verwenden oder eine direkte Verbindung von Clients aus herstellen.

Allgemeine Empfehlung: Wenn Sie über eine private IP-Adresse eine Verbindung zu einer Instanz herstellen, verwenden Sie eine direkte Verbindung. Wir empfehlen außerdem, SSL zu erzwingen und SSL/TLS-Zertifikate für Ihre Verbindung zu konfigurieren.

Wenn Sie über eine öffentliche IP-Adresse eine Verbindung zu einer Instanz herstellen, verwenden Sie einen Cloud SQL-Connector (entweder den Cloud SQL Auth-Proxy oder eine der Cloud SQL-Sprachverbindungen).

Datenbankauthentifizierungstyp: IAM oder integriert

Wenn Sie eine Verbindung zu einer Instanz herstellen, müssen Sie sich als Datenbanknutzer authentifizieren. Sie können zwischen der integrierten Authentifizierung oder der IAM-Datenbankauthentifizierung wählen.

IAM-Datenbankauthentifizierung Integrierte Authentifizierung
Beschreibung Mit der IAM-Datenbankauthentifizierung können Sie sich bei Datenbanken mit Google Cloud IAM-Nutzer- und Dienstkonten authentifizieren. Dabei werden kurzlebige Zugriffstokens anstelle von Passwörtern verwendet. Sie können Datenbankberechtigungen mit IAM-Hauptkonten wie Nutzern, Dienstkonten und Gruppen verwalten. Bei der integrierten Authentifizierung werden lokale Nutzernamen und Passwörter der Datenbank verwendet, um Datenbanknutzer zu authentifizieren.
Entscheidungspunkte Möchten Sie die Nutzerverwaltung mit IAM über Google Cloud mehrere Dienste hinweg zentralisieren Google Cloud? Wenn ja, verwenden Sie die IAM-Datenbankauthentifizierung. Haben Sie Anwendungen oder Workflows, die von der integrierten Datenbankauthentifizierung abhängen? Wenn ja, verwenden Sie die integrierte Authentifizierung.
Konfigurationsoptionen

Sie können die IAM-Datenbankauthentifizierung für einzelne IAM-Nutzer, einzelne Dienstkonten und Gruppen verwenden. Weitere Informationen finden Sie unter use Nutzer mit IAM-Datenbankauthentifizierung verwalten .

Wenn Sie einen Cloud SQL-Connector verwenden, übernimmt der Connector die automatische Aktualisierung der IAM-Zugriffstokens. Weitere Informationen finden Sie unter Automatische IAM-Datenbankauthentifizierung.

Sie können die integrierte Datenbankauthentifizierung verwenden und Passwort richtlinien auf Instanz- und Nutzerebene konfigurieren. Weitere Informationen finden Sie unter Integrierte Authentifizierung.
Zusammenfassung Empfehlung: Sofern Sie keine Anwendungen oder Workflows haben, die von der integrierten Datenbankauthentifizierung abhängen, sollten Sie nach Möglichkeit die IAM-Datenbankauthentifizierung verwenden.

Optionen für private Netzwerke bei Verwendung einer privaten IP-Adresse

Wenn Sie Ihre Instanz für die Verwendung einer privaten IP-Adresse konfigurieren, können Sie die folgenden Optionen für private Netzwerke auswählen: Zugriff auf private Dienste, Private Service Connect oder beides.

Unterstützte Features

In der folgenden Tabelle sind die Features aufgeführt, die Cloud SQL unterstützt, wenn Sie eine Verbindung zu einer Instanz herstellen, die mit einer oder beiden Optionen für private Netzwerke konfiguriert ist.

Feature Instanz mit nur Zugriff auf private Dienste Instanz mit nur Private Service Connect Instanz mit Zugriff auf private Dienste und Private Service Connect
Verbindung von mehreren VPCs Nicht unterstützt. Unterstützt. Wird über den Private Service Connect-Endpunkt unterstützt.
pglogical, PL/Proxy, dblink, und postgres_fdw Erweiterungen Unterstützt. Nicht unterstützt. Wird über die ausgehende Verbindung für den Zugriff auf private Dienste unterstützt.
Externe Replikate Unterstützt. Nicht unterstützt. Wird über die ausgehende Verbindung für den Zugriff auf private Dienste unterstützt.
Schreibendpunkt Unterstützt. Nicht unterstützt. Wird für den Zugriff auf private Dienste unterstützt.
Zugeordnetes VPC-Netzwerk für den Zugriff auf private Dienste ändern Unterstützt. Nicht zutreffend. Wird für den Zugriff auf private Dienste nicht unterstützt, da für die Instanz Private Service Connect aktiviert ist. Nicht zutreffend für Private Service Connect.
Sichtbarkeit der Client-IP-Adresse für Cloud SQL Unterstützt. Nicht unterstützt. Wird über die IP-Adresse für den Zugriff auf private Dienste unterstützt. Wird über den Private Service Connect-Endpunkt nicht unterstützt.

Netzwerkoptionen aus einer Instanz entfernen

Cloud SQL unterstützt das Entfernen der folgenden Netzwerkoptionen aus einer Instanz:

  • Öffentliche IP-Adresse aus einer Instanz mit Zugriff auf private Dienste und öffentlicher IP-Adresse
  • Öffentliche IP-Adresse aus einer Instanz mit öffentlicher IP-Adresse, Zugriff auf private Dienste und Private Service Connect
  • Private Service Connect aus einer Instanz mit Private Service Connect und Zugriff auf private Dienste
  • Private Service Connect aus einer Instanz mit Private Service Connect, Zugriff auf private Dienste und öffentlicher IP-Adresse

Netzwerkoptionen für eine Instanz aktivieren

Cloud SQL unterstützt das Aktivieren der folgenden Verbindungsoptionen für Instanzen:

  • Zugriff auf private Dienste für eine Instanz mit nur öffentlicher IP-Adresse
  • Private Service Connect für eine Instanz mit nur Zugriff auf private Dienste
  • Private Service Connect für eine Instanz mit Zugriff auf private Dienste und öffentlicher IP-Adresse
  • Öffentliche IP-Adresse für eine Instanz mit nur Zugriff auf private Dienste

Beschränkungen

  • Sie können keine Instanz mit einer öffentlichen IP-Adresse und Private Service Connect erstellen.
  • Sie können den Zugriff auf private Dienste nicht aus einer Instanz mit Zugriff auf private Dienste und Private Service Connect entfernen.
  • Sie können den Zugriff auf private Dienste nicht aus einer Instanz mit Zugriff auf private Dienste und öffentlicher IP-Adresse entfernen.
  • Wenn Sie eine Instanz haben, die nur eine öffentliche IP-Adresse verwendet, können Sie nicht gleichzeitig den Zugriff auf private Dienste und Private Service Connect aktivieren. Aktivieren Sie zuerst den Zugriff auf private Dienste und dann Private Service Connect.
  • Sie können autorisierte Netzwerke nicht verwenden, um IP-Adressen für Private Service Connect-Instanzen auf die Zulassungsliste zu setzen.

Tools zum Herstellen einer Verbindung zu Cloud SQL

Die folgende Tabelle enthält einige Optionen für die Verbindung zu Cloud SQL:

Verbindungsoption Weitere Informationen
Cloud SQL Auth-Proxy
gcloud CLI
Cloud SQL-Sprachverbindungen
Cloud Shell
Cloud Code
Google Cloud Data Agent Kit
Verbindung mithilfe von Drittanbieter-Datenbankverwaltungstools herstellen
pgAdmin
Toad Edge
Blendo

Fehlerbehebung

Wenn beim Herstellen der Verbindung Probleme auftreten, lesen Sie die folgenden Seiten für das Debugging oder zur Suche nach Lösungen für bekannte Probleme:

Nächste Schritte