Private Verbindung

Übersicht

Private Verbindungen sind Verbindungen zwischen Ihrem VPC-Netzwerk (Virtual Private Cloud) und dem privaten Netzwerk von Datastream. 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.

Sie können private Verbindungen verwenden, um Datastream mit einer beliebigen Quelle zu verbinden. Nur VPC-Netzwerke, die direkt per Peering verbunden sind, können jedoch miteinander kommunizieren.

Transitives Peering wird nicht unterstützt. Wenn das Netzwerk, mit dem Datastream per Peering verbunden ist, nicht das Netzwerk ist, in dem Ihre Quelle gehostet wird, ist ein Reverse-Proxy erforderlich. Sie benötigen einen Reverse-Proxy, wenn Ihre Quelle Cloud SQL ist und wenn Ihre Quelle in einer anderen VPC oder außerhalb des Google-Netzwerks gehostet wird.

Auf dieser Seite erfahren Sie, wie Sie mithilfe von Proxys eine private Verbindung zwischen Datastream und Cloud SQL oder zwischen Datastream und Quellen herstellen, die entweder in einer anderen VPC oder außerhalb des Google-Netzwerks gehostet werden.

Warum benötigen Sie einen Reverse-Proxy für Cloud SQL?

Wenn Sie eine Cloud SQL for MySQL- oder Cloud SQL for PostgreSQL-Instanz für die Verwendung privater IP-Adressen konfigurieren, verwenden Sie eine VPC-Peering-Verbindung zwischen Ihrem VPC-Netzwerk und dem VPC-Netzwerk der zugrunde liegenden Google-Dienste, in denen sich Ihre Cloud SQL-Instanz befindet.

Da das Netzwerk von Datastream nicht direkt mit dem Netzwerk privater Dienste von Cloud SQL verbunden werden kann und VPC-Peering nicht transitiv ist, ist ein Reverse-Proxy für Cloud SQL erforderlich, um die Verbindung von Datastream zu Ihrer Cloud SQL-Instanz zu verbinden.

Das folgende Diagramm zeigt, wie Sie mit einem Reverse-Proxy eine private Verbindung zwischen Datastream und Cloud SQL herstellen.

Diagramm: Datastream-Nutzerfluss

Warum benötigen Sie einen Reverse-Proxy für eine Quelle, die in einer anderen VPC gehostet wird?

Wenn das VPC-Netzwerk von Datastream per Peering mit Ihrem VPC-Netzwerk ("Network1") verbunden ist und Ihre Quelle über ein anderes VPC-Netzwerk ("Network2") zugänglich ist, kann Datastream nicht allein per VPC-Netzwerk-Peering mit der Quelle kommunizieren. Zum Herstellen der Verbindung zwischen Datastream und der Quelle ist auch ein Reverse-Proxy erforderlich.

Im folgenden Diagramm wird gezeigt, wie ein Reverse-Proxy verwendet wird, um eine private Verbindung zwischen Datastream und einer Quelle herzustellen, die außerhalb des Google-Netzwerks gehostet wird.

Diagramm: Datastream-Nutzerfluss

Reverse-Proxy einrichten

  1. Identifizieren Sie das VPC-Netzwerk, über das Datastream eine Verbindung zur Quelle herstellt.
  2. Erstellen Sie in diesem VPC-Netzwerk eine neue virtuelle Maschine (VM) mit dem Basis-Debian- oder Ubuntu-Image. Auf dieser VM wird der Reverse-Proxy gehostet.
  3. Kontrollieren Sie, dass sich das Subnetz in derselben Region wie Datastream befindet und dass der Reverse-Proxy Traffic an die Quelle weiterleitet (und nicht von ihr weg).
  4. Stellen Sie über SSH eine Verbindung zur Proxy-VM her. Informationen zu SSH-Verbindungen finden Sie unter Informationen zu SSH-Verbindungen.
  5. Prüfen Sie, ob die Proxy-VM mit der Quelle kommunizieren kann, indem Sie einen ping- oder telnet-Befehl von der VM zur internen IP-Adresse und zum Port der Quelle ausführen.
  6. Erstellen Sie auf der Proxy-VM ein Startskript mit dem folgenden Code. Weitere Informationen zu Startskripts finden Sie unter Startskripts auf Linux-VMs verwenden.

    #! /bin/bash
    
    export DB_ADDR=[IP]
    export DB_PORT=[PORT]
    
    export ETH_NAME=$(ip -o link show | awk -F': ' '{print $2}' | grep -v lo)
    
    export LOCAL_IP_ADDR=$(ip -4 addr show $ETH_NAME | grep -Po 'inet \K[\d.]+')
    
    echo 1 > /proc/sys/net/ipv4/ip_forward
    iptables -t nat -A PREROUTING -p tcp -m tcp --dport $DB_PORT -j DNAT \
    --to-destination $DB_ADDR:$DB_PORT
    iptables -t nat -A POSTROUTING -j SNAT --to-source $LOCAL_IP_ADDR

    Das Script wird jedes Mal ausgeführt, wenn die VM neu gestartet wird.

  7. Erstellen Sie eine Konfiguration für private Verbindungen in Datastream, um VPC-Peering zwischen Ihrer VPC und der VPC von Datastream einzurichten.

  8. Prüfen Sie, ob Ihre Firewallregeln Traffic aus den IP-Adressbereichen zulassen, die für die private Konnektivität ausgewählt wurden.

  9. Erstellen Sie ein Verbindungsprofil in Datastream.

Best Practices für die Einrichtung eines Reverse-Proxys

In diesem Abschnitt werden Best Practices beschrieben, die Sie beim Einrichten Ihres Gateways und Proxy-VMs.

Maschinentyp

Um herauszufinden, welcher Maschinentyp für Sie am besten geeignet ist, beginnen Sie mit einer einfachen Einrichtung und messen Sie die Auslastung und den Durchsatz. Wenn die Auslastung niedrig ist und die Durchsatzspitzen problemlos verarbeitet werden, können Sie die Anzahl der CPUs und die Arbeitsspeichermenge reduzieren. Wenn der Durchsatz beispielsweise bis zu 2 Gbit/s beträgt, wählen Sie den Maschinentyp n1-standard-1 aus. Wenn der Durchsatz über 2 Gbit/s liegt, wählen Sie den Maschinentyp e2-standard-2 aus. Der Typ „e2-standard-2“ ist eine kostengünstige Konfiguration für mehr Effizienz.

Architekturtyp

Nicht hochverfügbare Instanzen (Non-HA)

Eine einzelne VM mit dem Betriebssystem Ihrer Wahl bereitstellen. Für zusätzliche Ausfallsicherheit können Sie eine verwaltete Instanzgruppe (Managed Instance Group, MIG) mit einer einzelnen VM verwenden. Wenn Ihre VM abstürzt, repariert eine verwaltete Instanzgruppe die fehlgeschlagene Instanz automatisch, indem sie sie neu erstellt. Weitere Informationen Informationen dazu finden Sie unter Instanzgruppen.

Hochverfügbare Instanzen

Richten Sie eine MIG mit zwei VMs ein, die sich jeweils in einer anderen Region (falls zutreffend) oder in einer in einer anderen Zone. Zum Erstellen der MIG benötigen Sie eine Instanzvorlage, die die Gruppe verwenden kann. Die MIG wird hinter einem internen Layer 4-Load Balancer mit einer internen Next-Hop-IP-Adresse erstellt.

Nächste Schritte