Auf dieser Seite wird beschrieben, wie Sie den Zugriff auf private Netzwerke einrichten und den Traffic in einem Google Cloud Netzwerk weiterleiten.
Um den Zugriff auf private Netzwerke einzurichten, konfigurieren Sie drei Projekte:
- Ein Projekt, das ein VPC-Netzwerk (Virtual Private Cloud) enthält, das von der Ziel-VM-Instanz oder dem internen Ziel-Load-Balancer verwendet werden soll.
- Ein Projekt, das als Service Directory-Dienstprojekt dient.
- Ein Projekt für ein Google Cloud Produkt mit der Konfiguration, die den Zugriff auf private Netzwerke aufruft. Ein Beispiel für ein Google Cloud Produkt, das Endpunkte über den Zugriff auf private Netzwerke aufrufen kann, ist Dialogflow CX.
Die Artefakte der Projekte können sich im selben oder in verschiedenen Projekten befinden.
Hinweise
Führen Sie vor der Konfiguration des privaten Netzwerkzugriffs die folgenden Schritte aus:
Klicken Sie für jedes Projekt in der Google Cloud Console auf der Seite APIs & Dienste auf APIs und Dienste aktivieren, um die APIs zu aktivieren, die Sie verwenden möchten, einschließlich der Service Directory API.
Wenn Sie Ihr VPC-Netzwerk mit lokalen Hosts verknüpfen möchten, erstellen Sie einen Cloud VPN-Tunnel oder eine Cloud Interconnect-Verbindung.
Achten Sie darauf, dass sich das Google Cloud -Projekt innerhalb des VPC Service Controls-Perimeters sowohl des Netzwerkprojekts als auch des Service Directory-Projekts für
servicedirectory.googleapis.com
befindet.
Projekt für das VPC-Netzwerk konfigurieren
So konfigurieren Sie das Projekt für das VPC-Netzwerk:
Erstellen Sie ein VPC-Netzwerk oder wählen Sie ein vorhandenes VPC-Netzwerk aus, das entweder ein IPv4-only- oder ein Dual-Stack-Subnetz in der gewünschten Region hat. Legacy-Netzwerke werden nicht unterstützt.
Erstellen Sie die erforderlichen Firewallregeln zum Zulassen von eingehendem Traffic.
Wenn das Ziel eine VM oder ein interner Passthrough-Network Load Balancer ist, müssen Firewallregeln TCP-Traffic aus dem Bereich
35.199.192.0/19
zu den Ports zulassen, die von der Software verwendet werden, die auf den Ziel-VM-Instanzen ausgeführt wird.Wenn das Ziel ein interner Application Load Balancer oder ein interner Proxy Network Load Balancer ist, müssen Firewallregeln TCP-Traffic aus dem Bereich
35.199.192.0/19
an die IP-Adresse und die Ports des Load Balancers zulassen.
Weitere Informationen zum
35.199.192.0/19
-Bereich finden Sie unter Pfade für Cloud DNS und Service Directory.Weisen Sie dem Dienst-Agenten des Google Cloud -Produkts, das den Endpunkt aufruft, die IAM-Rolle (Identity and Access Management) „Private Service Connect Authorized Service“ (
roles/servicedirectory.pscAuthorizedService
) zu.Weitere Informationen zu Rollen und Berechtigungen finden Sie unter Berechtigungen und Rollen für Service Directory.
Service Directory-Projekt konfigurieren
So konfigurieren Sie das Service Directory-Projekt:
Erstellen Sie eine VM oder einen internen Load Balancer im VPC-Netzwerk.
Weisen Sie dem Dienst-Agent desGoogle Cloud -Produkts, das den Endpunkt aufruft, die IAM-Rolle „Service Directory Viewer“ (
roles/servicedirectory.viewer
) zu.Service Directory-Namespace und -Dienst erstellen Erstellen Sie dann einen Endpunkt für diesen Dienst. Folgen Sie dazu der Anleitung im nächsten Abschnitt.
Endpunkt mit privatem Netzwerkzugriff erstellen
So erstellen Sie einen Endpunkt mit konfiguriertem Zugriff auf private Netzwerke:
Console
- Rufen Sie in der Google Cloud Console die Seite Service Directory-Namespaces auf. Zu Service Directory-Namespaces
- Klicken Sie auf einen Namespace.
- Klicken Sie auf einen Dienst.
- Klicken Sie auf Endpunkt hinzufügen.
- Geben Sie unter Endpunktname einen Namen für den Endpunkt ein.
- Geben Sie unter IP-Adresse eine IPv4-Adresse ein, z. B.
192.0.2.0
. - Geben Sie unter Port eine Portnummer ein, z. B.
443
oder80
. - Um den Zugriff auf private Netzwerke zu aktivieren, wählen Sie unter Zugeordnetes VPC-Netzwerk die gewünschte Option aus:
- Wenn Sie ein Netzwerk aus einer Liste verfügbarer Netzwerke auswählen möchten, klicken Sie auf Aus der Liste auswählen und wählen Sie dann das Netzwerk aus.
- Wenn Sie ein Projekt und ein Netzwerk angeben möchten, klicken Sie auf Mit Projekt- und Netzwerknamen angeben und geben Sie dann die Projektnummer und den Netzwerknamen ein.
- Klicken Sie auf Erstellen.
gcloud
Verwenden Sie den Befehl gcloud service-directory endpoints create
mit der Projekt-ID und dem angegebenen Netzwerkpfad.
gcloud service-directory endpoints create ENDPOINT_NAME \ --project=PROJECT_ID \ --location=REGION \ --namespace=NAMESPACE_NAME \ --service=SERVICE_ID \ --address=IP_ADDRESS \ --port=PORT_NUMBER \ --network=NETWORK_PATH
Ersetzen Sie Folgendes:
ENDPOINT_NAME
: Ein Name für den Endpunkt, den Sie in Ihrem Dienst erstellen, z. B.my-endpoint
PROJECT_ID
: die ID des Projekts.REGION
: die Google Cloud Region, die den Namespace enthältNAMESPACE_NAME
: der Name, den Sie dem Namespace gegeben haben, z. B.my-namespace
SERVICE_ID
: die ID des DienstesIP_ADDRESS
: die IP-Adresse des Endpunkts, z. B.192.0.2.0
PORT_NUMBER
: die Ports, auf denen die Endpunkte ausgeführt werden, in der Regel443
oder80
NETWORK_PATH
: die URL des Netzwerks, z. B.projects/PROJECT_NUMBER/locations/global/networks/NETWORK_NAME
Produktprojekt konfigurieren Google Cloud
So konfigurieren Sie das Google Cloud -Produktprojekt:
Konfigurieren Sie Ihr Google Cloud -Produkt so, dass der von Ihnen erstellte Service Directory-Dienst aufgerufen wird. Die erforderlichen Schritte hängen vom jeweiligenGoogle Cloud -Produkt ab.
Anwendungsfälle
Dieser Abschnitt enthält Beispielanwendungsfälle für die Konfiguration des Zugriffs auf private Netzwerke.
HTTP-Endpunkt aufrufen, wenn sich ein VPC-Netzwerk, eine VM und Service Directory im selben Projekt befinden
In diesem Anwendungsfall richten Sie Dialogflow CX ein, ein Google Cloud Produkt für die Verarbeitung natürlicher Sprache, um einen HTTP-Endpunkt auf Ihrer VM aufzurufen. Achten Sie beim Aufrufen des Endpunkts darauf, dass der Traffic nicht über das öffentliche Internet erfolgt.
In diesem Anwendungsfall erstellen Sie die folgenden Artefakte im selben Projekt:
- VPC-Netzwerk
- Eine VM
- Service Directory-Dienst
- Dialogflow CX
Abbildung 1 zeigt, wie Sie den ausgehenden Traffic einer Google-Dienstkonfiguration eines Projekts zu einer VM zulassen können. Die VM befindet sich in einem VPC-Netzwerk des Projekts.
Netzwerk und Zielnetzwerk einrichten
- Erstellen Sie ein Projekt, z. B.
myproject
. Erstellen Sie ein VPC-Netzwerk, z. B.
vpc-1
.Wählen Sie beim Erstellen des VPC-Netzwerk unter Modus für Subnetzerstellung die Option Automatisch aus.
Firewallregel erstellen, z. B.
firewall-1
.Geben Sie beim Erstellen der Firewallregel die folgenden Werte ein oder wählen Sie sie aus:
- Wählen Sie für Netzwerk die Option
vpc-1
aus. - Geben Sie unter Quell-IPv4-Bereiche den Wert
35.199.192.0/19
ein. - Wählen Sie unter Protokolle und Ports die Option TCP aus und geben Sie
443
oder80
ein.
- Wählen Sie für Netzwerk die Option
Erstellen Sie eine VM in der Region
us-central1
, z. B.vm-1
.Geben Sie beim Erstellen der VM die folgenden Werte ein oder wählen Sie sie aus:
- Wählen Sie für Netzwerk > Netzwerkschnittstellen die Option
vpc-1
aus. - Wählen Sie für Firewall die Option HTTP-Traffic zulassen aus.
Wenn Sie HTTPS verwenden möchten, wählen Sie HTTPS-Traffic zulassen aus. Achten Sie außerdem darauf, dass Sie ein PKI-TLS-Zertifikat (Public Key Infrastructure Transport Layer Security) installieren.
- Wählen Sie für Netzwerk > Netzwerkschnittstellen die Option
Erstellen Sie in der Region
us-central1
einen Namespace, z. B.namespace-1
.Registrieren Sie im Namespace einen Service Directory-Dienst, z. B.
sd-1
.Erstellen Sie einen Endpunkt in
sd-1
. Verwenden Sie für die Endpunktadresse die interne IP-Adresse vonvm-1
auf Port443
. Weitere Informationen finden Sie unter Endpunkt mit Zugriff auf privates Netzwerk erstellen.Weisen Sie dem Dienst-Agent desGoogle Cloud -Produkts, das den Endpunkt aufruft, die folgenden IAM-Rollen zu:
- Rolle „Service Directory-Betrachter“ (
roles/servicedirectory.viewer
) - Rolle „Autorisierter Private Service Connect-Dienst“ (
roles/servicedirectory.pscAuthorizedService
)
- Rolle „Service Directory-Betrachter“ (
Optional: Wenn Sie weitere VMs hinzufügen möchten, können Sie eine weitere VM wie
vm-2
einrichten und ihren Endpunkt wieendpoint-2
hinzufügen.
Google Cloud Produkt einrichten
- Konfigurieren Sie eine Google Cloud Produktkonfiguration, z. B. „Cloud Scheduler, ruf mich jede Minute an“.
- HTTP-Anfrage einrichten
- Geben Sie an, dass Anfragen über ein privates Netzwerk wie
sd-1
gesendet werden sollen. - Optional: Einstellungen für den Certificate Authority Service konfigurieren.
Das Google Cloud -Produkt kann die HTTP-Anfrage jetzt mit sd-1
aufrufen.
HTTP-Endpunkt aufrufen, wenn sich ein freigegebene VPC-Netzwerk, eine VM und Service Directory in verschiedenen Projekten befinden
In diesem Anwendungsfall richten Sie Dialogflow CX ein, einen Google Cloud-Dienst für die Verarbeitung natürlicher Sprache, um einen HTTP-Endpunkt auf Ihrer VM aufzurufen. Achten Sie beim Aufrufen des Endpunkts darauf, dass der Traffic nicht über das öffentliche Internet erfolgt.
In diesem Anwendungsfall erstellen Sie die folgenden Artefakte in verschiedenen Projekten:
- Ein freigegebene VPC-Netzwerk
- Eine VM
- Service Directory-Dienst
- Dialogflow CX
Beachten Sie vor dem Erstellen der Projekte Folgendes:
- Prüfen Sie, ob der API-Aufruf den VPC Service Controls-Perimeter berücksichtigt.
- Achten Sie darauf, dass die Konfiguration des Google Cloud -Dienstprojekts den Ausgang zu einer VM im VPC-Netzwerkprojekt zulässt.
- Das Erstellerprojekt muss nicht mit dem Google Cloud Dienstprojekt identisch sein.
- Achten Sie darauf, dass die VPC Service Controls-Perimeter beider Projekte verwendet werden.
- Das Service Directory-Projekt und das Netzwerkprojekt müssen nicht verbunden sein, aber beide müssen Teil derselben VPC Service Controls sein.
- Im Netzwerk und im Dienst sind die Firewall und IAM standardmäßig deaktiviert.
Abbildung 2 zeigt, wie Sie Traffic über den privaten Netzwerkzugriff mit erzwungenen VPC Service Controls-Perimetern senden können.
Netzwerkprojekt konfigurieren
- Erstellen Sie ein Projekt, z. B.
my-vpc-project
. Erstellen Sie ein VPC-Netzwerk, z. B.
vpc-1
.Wählen Sie beim Erstellen des VPC-Netzwerk unter Modus für Subnetzerstellung die Option Automatisch aus.
Firewallregel erstellen, z. B.
firewall-1
.Geben Sie beim Erstellen der Regel die folgenden Werte ein oder wählen Sie sie aus:
- Wählen Sie für Netzwerk die Option
vpc-1
aus. - Geben Sie unter Quell-IPv4-Bereiche den Wert
35.199.192.0/19
ein. - Wählen Sie unter Protokolle und Ports die Option TCP aus und geben Sie
443
oder80
ein.
- Wählen Sie für Netzwerk die Option
Erstellen Sie eine VM in der Region
us-central1
, z. B.vm-1
.Geben Sie beim Erstellen der VM die folgenden Werte ein oder wählen Sie sie aus:
- Wählen Sie für Netzwerk > Netzwerkschnittstellen die Option
vpc-1
aus. - Wählen Sie für Firewall die Option HTTP-Traffic zulassen aus.
Wenn Sie HTTPS verwenden möchten, wählen Sie HTTPS-Traffic zulassen aus. Achten Sie außerdem darauf, dass Sie ein PKI-TLS-Zertifikat (Public Key Infrastructure Transport Layer Security) installieren.
- Wählen Sie für Netzwerk > Netzwerkschnittstellen die Option
Wenn Sie VPC Service Controls verwenden, kann Service Directory über den VPC Service Controls-Perimeter sowohl eine Verbindung zum Google Cloud -Dienstprojekt als auch zum Service Directory-Projekt herstellen.
Service Directory-Projekt konfigurieren
Erstellen Sie ein Projekt, z. B.
my-sd-project
.Sie benötigen eine zusätzliche IAM-Berechtigung, da das VPC-Netzwerkprojekt und das Service Directory-Projekt unterschiedliche Projekte sind.
Weisen Sie im Netzwerkprojekt dem IAM-Hauptkonto, das den Service Directory-Endpunkt erstellt, die Rolle „Service Directory-Netzwerke-Hinzufüger“ (
roles/servicedirectory.networkAttacher
) zu.Erstellen Sie einen Service Directory-Endpunkt, der auf die VM im VPC-Netzwerk verweist:
- Erstellen Sie in der Region
us-central1
einen Namespace, z. B.namespace-1
. - Registrieren Sie im Namespace einen Service Directory-Dienst, z. B.
sd-1
. - Erstellen Sie einen Endpunkt in
sd-1
. Verwenden Sie für die Endpunktadresse die interne IP-Adresse vonvm-1
auf Port443
. Weitere Informationen finden Sie unter Endpunkt mit Zugriff auf privates Netzwerk erstellen.
- Erstellen Sie in der Region
Weisen Sie dem Dienst-Agent desGoogle Cloud -Produkts, das den Endpunkt aufruft, die folgenden IAM-Rollen zu:
- Rolle „Service Directory-Betrachter“ (
roles/servicedirectory.viewer
) im Service Directory-Projekt - Rolle „Autorisierter Private Service Connect-Dienst“ (
roles/servicedirectory.pscAuthorizedService
) im Netzwerkprojekt
- Rolle „Service Directory-Betrachter“ (
Wenn Sie VPC Service Controls verwenden, kann Service Directory über den VPC Service Controls-Perimeter sowohl eine Verbindung zum Google Cloud -Dienstprojekt als auch zum Service Directory-Projekt herstellen.
Serviceprojekt konfigurieren Google Cloud
- Aktivieren Sie die API für den Dienst Google Cloud , den Sie verwenden.
- Um den Google Cloud -Dienst
PUSH
zu konfigurieren, verwenden Sie den Service Directory-Dienst aus dem Service Directory-Projekt.
Wenn Sie VPC Service Controls verwenden, kann Service Directory über den VPC Service Controls-Perimeter sowohl eine Verbindung zum Netzwerkprojekt als auch zum Service Directory-Projekt herstellen.
Service Directory-Zugriff auf private Netzwerke mit Dialogflow verwenden
Eine Anleitung dazu, wie Sie den privaten Service Directory-Netzwerkzugriff mit Dialogflow verwenden können, finden Sie unter Service Directory für den privaten Netzwerkzugriff verwenden.
Nächste Schritte
- Eine Übersicht über Service Directory finden Sie in der Übersicht zu Service Directory.
- Weitere Informationen zu Private Service Connect finden Sie unter Private Service Connect.
- Informationen zu Lösungen für häufige Probleme, die bei der Verwendung von Service Directory auftreten können, finden Sie unter Fehlerbehebung.