Auf dieser Seite wird beschrieben, wie AlloyDB for PostgreSQL Zugriff auf private Dienste verwendet, um eine Netzwerkverbindung zwischen Ihren AlloyDB-Instanzen und den verschiedenen internen Ressourcen herzustellen, die für die Funktion erforderlich sind.
Eine allgemeine Übersicht über die Funktionsweise von Netzwerkverbindungen mit AlloyDB finden Sie unter Verbindungsübersicht.
Verbindung zwischen Clustern und internen Ressourcen
Der Zugriff auf private Dienste ermöglicht die Kommunikation der AlloyDB-Cluster mit den internen Ressourcen, die sie ermöglichen.
Instanzen und interne Ressourcen
Die AlloyDB-Cluster und -Instanzen, die Sie in IhremGoogle Cloud Projekt erstellen, basieren auf vielen internen Ressourcen auf niedriger Ebene. Google CloudDazu gehören die VM-Instanzen, die als AlloyDB-Knoten und Load Balancer dienen, oder die Speichervolumes, in denen Ihre Daten gespeichert sind. Alle Ressourcen, die einen Cluster unterstützen, werden in einemGoogle Cloud -Projekt ausgeführt, das intern von Google verwaltet wird.
In der Regel stellen Sie keine direkte Verbindung zu diesen internen Ressourcen her. Stattdessen verwalten Sie Cluster und Instanzen über die Google Cloud Console oder die Google Cloud CLI. Ihre Anwendungen stellen über die privaten IP-Adressen eine Verbindung zu AlloyDB-Instanzen her, um Ihre Daten abzufragen und zu ändern. AlloyDB verwendet interne APIs, um Ihre Verwaltungsanfragen oder Datenabfragen nach Bedarf an die Ressourcen Ihres Clusters zu übergeben.
Eine AlloyDB-Instanz fungiert als logische Abstraktion dieser komplexen Sammlung von Teilen. Da AlloyDB Ihnen eine private, statische IP-Adresse und eine konsistente, mit PostgreSQL kompatible Datenbankschnittstelle bietet, können die internen Netzwerkrouten einer aktiven Instanz oder die internen Ressourcen der Instanz beliebig aktualisiert oder verschoben werden. Dies sorgt für einen optimierten Durchsatz und eine hohe Verfügbarkeit ohne Ausfallzeiten oder Unterbrechungen.
So wird der Zugriff auf private Dienste in Clustern verwendet
Die AlloyDB-Cluster und -Instanzen in Ihrem Projekt kommunizieren über privaten Dienstzugriff mit ihren internen Ressourcen. Dadurch wird eine permanente Peering-Verbindung zwischen einem VPC-Netzwerk (Virtual Private Cloud) in Ihrem eigenen Projekt und der separaten VPC hergestellt, die vom Google-verwalteten Projekt verwendet wird, in dem die internen Ressourcen gehostet werden. Über diese Verbindung können die AlloyDB-Cluster und -Instanzen in Ihrem Projekt über private IP-Adressen eine Verbindung zu ihren internen Ressourcen herstellen, so als ob sie sich in der VPC Ihres eigenen Projekts befänden.
Wenn Sie den Zugriff auf private Dienste mit einem Google Cloud VPC-Netzwerk konfigurieren, müssen Sie einen oder mehrere Blöcke zusammenhängender privater IP-Adressen reservieren. NachdemGoogle Cloud eine Peering-Verbindung zwischen der VPC Ihres Projekts und der VPC des internen Projekts hergestellt hat, weist AlloyDB Adressen aus Ihren reservierten IP-Blöcken den Low-Level-Ressourcen zu, die für Ihre Instanzen erforderlich sind. So können alle Komponenten Ihrer Cluster über ein privates Netzwerk miteinander verbunden werden.
Wenn Sie einen AlloyDB-Cluster erstellen, müssen Sie ein VPC-Netzwerk in Ihrem Projekt angeben, das Sie bereits für den Zugriff auf private Dienste eingerichtet haben. Möglicherweise ist in Ihrem Projekt bereits ein geeignetes VPC-Netzwerk verfügbar, insbesondere wenn Sie in Ihrem Projekt bereits mit AlloyDB oder einem anderen Google Cloud -Produkt gearbeitet haben, für das der Zugriff auf private Dienste erforderlich ist. Wenn in Ihrem Projekt kein VPC-Netzwerk für den privaten Dienstzugriff eingerichtet ist, müssen Sie eines konfigurieren, bevor Sie einen AlloyDB-Cluster erstellen.
Sie können die Konfiguration für den Zugriff auf private Dienste eines Clusters nicht mehr ändern, nachdem AlloyDB den Cluster erstellt hat.
Unterstützte Konfigurationen für den Zugriff auf private Dienste
AlloyDB kann Konfigurationen für den Zugriff auf private Dienste in VPC-Netzwerken verwenden, die sich im selben Projekt wie AlloyDB oder in anderen Projekten befinden.
Ein VPC-Netzwerk im selben Projekt wie Ihr Cluster
Wie Sie die AlloyDB-Verbindung über ein VPC-Netzwerk konfigurieren, das sich im selben Google Cloud -Projekt wie Ihr AlloyDB-Cluster befindet, hängt davon ab, ob im VPC-Netzwerk bereits eine Konfiguration für den Zugriff auf private Dienste vorhanden ist.
Wenn für das VPC-Netzwerk noch kein Zugriff auf private Dienste konfiguriert ist, erstellen Sie eine Konfiguration für den Zugriff auf private Dienste.
Wenn das VPC-Netzwerk bereits eine Konfiguration für den Zugriff auf private Dienste hat, muss diese Konfiguration genügend IP-Adressraum für AlloyDB haben. Erhöhen Sie den Adressraum bei Bedarf.
Ein freigegebene VPC-Netzwerk
Wenn Sie die AlloyDB-Konnektivität mit einem VPC-Netzwerk konfigurieren möchten, das sich in einem Google Cloud -Projekt befindet, das sich von dem Projekt unterscheidet, das Ihren AlloyDB-Cluster enthält, führen Sie die folgenden Schritte aus:
Konfigurieren Sie das Projekt, in dem sich das VPC-Netzwerk befindet, für die freigegebene VPC. Verwenden Sie es als Hostprojekt und das Projekt, in dem sich AlloyDB befindet, als Dienstprojekt.
Achten Sie darauf, dass die Konfiguration für den Zugriff auf private Dienste des VPC-Netzwerk genügend IP-Adressraum für AlloyDB hat, und erhöhen Sie den Adressraum bei Bedarf.
Konfigurieren Sie Nutzer, die AlloyDB-Ressourcen erstellen können, als Dienstprojektadministratoren mit Zugriff auf die entsprechenden zugewiesenen IP-Adressbereiche in der Konfiguration für den Zugriff auf private Dienste.
Wenn Sie die Google Cloud CLI verwenden, um eine AlloyDB-Instanz mit einem freigegebene VPC-Netzwerk zu erstellen, müssen Sie den vollständig qualifizierten Pfad des VPC-Netzwerks verwenden, z. B.
projects/cymbal-project/global/networks/shared-vpc-network
.
Weitere Informationen zur freigegebenen VPC finden Sie unter Übersicht zu freigegebenen VPC-Netzwerken und Freigegebene VPC bereitstellen.
Überlegungen zur Größe des IP-Adressbereichs
Es ist wichtig, einen IP-Adressbereich für den Zugriff auf private Dienste auszuwählen, der breit genug ist, um die Anforderungen von AlloyDB sowie aller anderenGoogle Cloud -Dienste zu erfüllen, die IP-Adressen aus demselben Adresspool benötigen. Sie können die Größe dieses Pools jederzeit anpassen.
AlloyDB verwendet in jeder Region, in der Sie einen Cluster bereitstellen, ein Subnetz der Größe /24
. Die Mindestgröße ist ein einzelner /24-Block (256 Adressen). Die empfohlene Größe ist ein /16-Block (65.536 Adressen). So können Sie Cluster und Instanzen in mehreren Regionen erstellen und haben trotzdem noch viele IP-Adressen für andere Google Cloud Dienste zur Verfügung.
Wenn Sie neue Instanzen in Clustern bereitstellen, die mit Private Services Access konfiguriert sind, stellt AlloyDB die Ressourcen in neu erstellten oder vorhandenen regionalen Subnetzen bereit, die zuvor von AlloyDB erstellt wurden. Wenn ein vorhandenes Subnetz ausreichend voll ist, erstellt AlloyDB ein neues Subnetz in derselben Region, sofern der zugewiesene IP-Adressbereich groß genug ist, um ein zusätzliches Subnetz der Größe /24
zu erstellen. Wenn der vorhandene IP-Adressbereich, der für AlloyDB verfügbar ist, nicht groß genug ist, um das Subnetz zu erstellen, schlägt der Versuch, den Cluster oder die Instanz zu erstellen, fehl. Sie müssen den IP-Adressraum vergrößern, um den Adressmangel zu beheben, bevor Sie versuchen, den Cluster oder die Instanz noch einmal zu erstellen. Weitere Informationen zum Erhöhen des IP-Adressbereichs finden Sie unter IP-Adressbereich für AlloyDB in Ihrem Projekt erhöhen.
Privat genutzte öffentliche IP-Bereiche
AlloyDB unterstützt die Verwendung von privat verwendeten öffentlichen IP-Bereichen (PUPI) nicht, wenn der Zugriff auf private Dienste verwendet wird. Wenn Sie über Arbeitslasten mit privat verwendeten öffentlichen IP-Bereichen (PUPI) eine Verbindung zu AlloyDB herstellen möchten, müssen Sie Private Service Connect verwenden.
Beschränkung
- Verbindungen für den Zugriff auf private Dienste sind auf RFC 1918-IP-Bereiche beschränkt.
Nächste Schritte
Weitere Informationen zum Zugriff auf private Dienste in Google Cloud
Erhöhen Sie den für AlloyDB in Ihrem Projekt verfügbaren IP-Adressbereich.
AlloyDB mit privatem Dienstzugriff mit Terraform bereitstellen