Netzwerkverbindungsoptionen

Überblick

Um mit Datastream einen Stream aus der Quelldatenbank zum Ziel erstellen können, müssen Sie eine Verbindung zur Quelldatenbank herstellen.

Datastream unterstützt die Netzwerkverbindungsmethoden "IP-Zulassungsliste", "Weiterleitungs-SSH-Tunnel" und "VPC-Peering".

Anhand der Informationen in der folgenden Tabelle können Sie entscheiden, welche Methode für Ihre jeweilige Arbeitslast am besten geeignet ist.

Netzwerkmethode Beschreibung Vorteile Nachteile
IP-Zulassungsliste

Bei dieser Methode wird der Quelldatenbankserver so konfiguriert, dass eingehende Verbindungen von den öffentlichen Datastream-IP-Adressen zugelassen werden. Wie Sie die IP-Adressen für Ihre Regionen finden, erfahren Sie unter IP-Zulassungslisten und Regionen.

  • Einfach zu konfigurieren
  • Die Quelldatenbank ist über eine öffentliche IP-Adresse zugänglich.
  • Die Verbindung ist standardmäßig nicht verschlüsselt. SSL muss in der Quelldatenbank aktiviert werden, um die Verbindung zu verschlüsseln.
  • Die Konfiguration der Firewall erfordert möglicherweise Unterstützung von der IT-Abteilung.
Weiterleitungs-SSH-Tunnel

(Diese Methode wird für SQL Server-Quellen nicht unterstützt.)

Stellen Sie über einen Weiterleitungs-SSH-Tunnel eine verschlüsselte Verbindung über öffentliche Netzwerke zwischen Datastream und der Quelle her.

Weitere Informationen zu SSH-Tunneln.

  • Sicher
  • Eingeschränkte Bandbreite
  • Sie müssen den Bastion Host einrichten und pflegen.
VPC-Peering Dafür müssen Sie eine private Verbindungskonfiguration erstellen. Datastream verwendet diese Konfiguration für die Kommunikation mit der Datenquelle über ein privates Netzwerk. Diese Kommunikation erfolgt über eine VPC-Peering-Verbindung (Virtual Private Cloud).
  • Sicherer, privater Kanal
  • Einfach zu konfigurieren
  • Erfordert eine private Netzwerkverbindung (VPN, Interconnect usw.) zwischen der Datenbank und Google Cloud.

Verbindung mithilfe von IP-Zulassungslisten konfigurieren

Damit Datastream Daten aus einer Quelldatenbank in ein Ziel übertragen kann, muss das Ziel zuerst eine Verbindung zu dieser Datenbank herstellen.

Eine Möglichkeit, diese Verbindung zu konfigurieren, ist über IP-Zulassungslisten. Eine öffentliche IP-Verbindung ist am besten geeignet, wenn sich die Quelldatenbank außerhalb von Google Cloud befindet und eine extern zugängliche IPv4-Adresse und einen TCP-Port hat.

Wenn sich Ihre Quelldatenbank außerhalb von Google Cloud befindet, fügen Sie die öffentlichen IP-Adressen von Datastream als Firewallregel für eingehenden Traffic im Quellnetzwerk hinzu. Gehen Sie so allgemein so vor (Ihre spezifischen Netzwerkeinstellungen können abweichen):

  1. Öffnen Sie die Netzwerk-Firewallregeln Ihres Quelldatenbankcomputers.

  2. Erstellen Sie eine Regel für eingehenden Traffic.

  3. Legen Sie die IP-Adresse der Quelldatenbank auf die IP-Adressen von Datastream fest.

  4. Legen Sie TCP als Protokoll fest.

  5. Legen Sie den mit dem TCP-Protokoll verknüpften Port auf 1521 fest.

  6. Speichern Sie die Firewallregel und beenden Sie sie.

SSH-Tunnel verwenden

Schritt 1: Host auswählen, auf dem der Tunnel beendet werden soll

Der erste Schritt zum Einrichten des Zugriffs über den SSH-Tunnel für Ihre Datenbank besteht in der Auswahl des Hosts, auf dem der Tunnel beendet wird. Der Tunnel kann entweder auf dem Datenbankhost selbst oder auf einem separaten Host (dem Tunnelserver) beendet werden.

Datenbankserver verwenden

Der Abschluss des Tunnels in der Datenbank hat den Vorteil der Einfachheit. Da ein Host weniger beteiligt ist, fallen keine zusätzlichen Maschinen und damit verbundene Kosten an. Der Nachteil besteht darin, dass sich Ihr Datenbankserver möglicherweise in einem geschützten Netzwerk befindet, das keinen direkten Zugriff über das Internet hat.

Tunnelserver verwenden

Das Beenden des Tunnels auf einem separaten Server hat den Vorteil, dass Ihr Datenbankserver nicht über das Internet zugänglich ist. Wenn der Tunnelserver manipuliert wurde, kann er schnell vom Datenbankserver entfernt werden. Wir empfehlen, nicht unbedingt benötigte Software und Nutzer vom Tunnelserver zu entfernen und mithilfe von Tools wie einem Intrusion Detection System (IDS) genau zu überwachen.

Der Tunnelserver kann ein beliebiger Unix- oder Linux-Host sein, der:

  1. Kann über SSH aus dem Internet aufgerufen werden.
  2. Kann auf die Datenbank zugreifen.

Schritt 2: IP-Zulassungsliste erstellen

Der zweite Schritt zum Einrichten des SSH-Tunnelzugriffs für Ihre Datenbank besteht darin, den Netzwerktraffic über SSH (in der Regel am TCP-Port 22) den Tunnelserver oder den Datenbankhost zu ermöglichen.

Erlauben Sie Netzwerktraffic von jeder der IP-Adressen für die Region, in der Datastreamressourcen erstellt werden.

Schritt 3: SSH-Tunnel verwenden

Geben Sie die Tunneldetails in der Konfiguration des Verbindungsprofils an. Weitere Informationen finden Sie unter Verbindungsprofil erstellen.

Zum Authentifizieren der SSH-Tunnelsitzung benötigt Datastream entweder das Passwort für das Tunnelkonto oder einen eindeutigen privaten Schlüssel. Wenn Sie einen eindeutigen privaten Schlüssel verwenden möchten, können Sie die Schlüssel mit den Befehlszeilentools OpenSSH oder OpenSSL generieren.

Datastream speichert den privaten Schlüssel als Teil der Datastream-Verbindungsprofilkonfiguration sicher. Sie müssen den öffentlichen Schlüssel manuell der Datei ~/.ssh/authorized_keys des Bastion Hosts hinzufügen.

Private und öffentliche Schlüssel generieren

SSH-Schlüssel können mit der folgenden Methode generiert werden:

  • ssh-keygen: Ein OpenSSH-Befehlszeilentool zum Generieren von SSH-Schlüsselpaaren.

    Nützliche Meldungen:

    • -t: gibt den zu erstellenden Schlüsseltyp an. Beispiel:

      ssh-keygen -t rsa

      ssh-keygen -t ed25519

    • -b: Gibt die Schlüssellänge im zu erstellenden Schlüssel an. Beispiel:

      ssh-keygen -t rsa -b 2048

    • -y: Liest eine private OpenSSH-Formatdatei und gibt einen öffentlichen OpenSSH-Schlüssel in der Standardausgabe aus.

    • -f: Gibt den Dateinamen der Schlüsseldatei an. Beispiel:

      ssh-keygen -y [-f KEY_FILENAME]

    Weitere Informationen zu unterstützten Flags finden Sie in der OpenBSD-Dokumentation.

Mit der folgenden Methode können Sie einen privaten PEM-Schlüssel generieren:

  • openssl genpkey: Ein OpenSSL-Befehlszeilentool zum Generieren eines privaten PEM-Schlüssels.

    Nützliche Meldungen:

    • algorithm: Gibt den zu verwendenden Algorithmus für den öffentlichen Schlüssel an. Beispiel:

      openssl genpkey -algorithm RSA

    • -out: gibt den Dateinamen an, in den der Schlüssel ausgegeben werden soll. Beispiel:

      openssl genpkey -algorithm RSA -out PRIVATE_KEY_FILENAME.pem

    Weitere Informationen zu unterstützten Flags finden Sie in der OpenSSL-Dokumentation.

Private Verbindung verwenden

Private Verbindungen sind Verbindungen zwischen Ihrem VPC-Netzwerk und dem privaten Datastream-Netzwerk. Dadurch kann Datastream über interne IP-Adressen mit Ressourcen kommunizieren. Die Verwendung privater Verbindungen stellt eine dedizierte Verbindung im Datastream-Netzwerk her, das heißt, keine anderen Kunden können sie nutzen.

Wenn sich Ihre Quelldatenbank außerhalb von Google Cloud befindet, ermöglicht die private Konnektivität Datastream die Kommunikation mit Ihrer Datenbank über VPN oder Interconnect.

Nachdem eine Konfiguration für private Verbindungen erstellt wurde, kann eine einzelne Konfiguration für alle Streams in einem Projekt innerhalb einer einzelnen Region verwendet werden.

Zum Einrichten privater Verbindungen ist grundsätzlich Folgendes erforderlich:

  • Vorhandene Virtual Private Cloud (VPC)
  • Einen verfügbaren IP-Bereich mit einem CIDR-Block von /29

Wenn Ihr Projekt eine freigegebene VPC verwendet, müssen Sie auch die Datastream und Google Compute Engine APIs aktivieren und dem Datastream-Dienstkonto im Hostprojekt Berechtigungen erteilen.

Weitere Informationen zum Erstellen einer privaten Verbindungskonfiguration.