Über Back-Ends auf globale Google APIs zugreifen
Auf dieser Seite wird beschrieben, wie Sie mithilfe von Private Service Connect-Back-Ends, die auf regionenübergreifenden internen Application Load Balancern basieren, auf globale Google APIs zugreifen.
Mit dieser Konfiguration können Sie eine oder mehrere einzelne globale Google APIs anvisieren und gleichzeitig die Sichtbarkeit und Kontrolle anwenden, die Private Service Connect-Back-Ends bieten.
- Sie können benutzerdefinierte Hostnamen für Ihre Virtual Private Cloud (VPC) und verbundene lokale Netzwerke konfigurieren, die den Traffic an die ausgewählten globalen Google APIs weiterleiten.
- Sie können von jeder Region aus auf die Back-Ends zugreifen. Das Back-End kann den Traffic auf Private Service Connect-Netzwerk-Endpunktgruppen (NEGs) in beliebigen Regionen ausgleichen.
- Sie können Traffic von VPC-Peering-Netzwerken an die Back-Ends senden.
Eine Liste der verfügbaren globalen Google APIs finden Sie unter Globale Google API-Ziele.
Vorbereitung
-
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Google Cloud-Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren eines Backends für den Zugriff auf globale Google APIs benötigen:
-
Compute Admin (
roles/compute.admin
) -
Zertifikatmanager-Inhaber (
roles/certificatemanager.owner
)
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
-
Compute Admin (
Aktivieren Sie die Compute Engine API in Ihrem Projekt.
Aktivieren Sie die Certificate Manager API in Ihrem Projekt.
Erstellen Sie einen privaten Schlüssel und ein signiertes Zertifikat von einer Zertifizierungsstelle. Folgen Sie der Anleitung unter Schritt 1: Privaten Schlüssel und Zertifikat erstellen. Der private Schlüssel und das Zertifikat sind erforderlich, um ein selbstverwaltetes SSL-Zertifikat mit dem Zertifikatmanager zu erstellen.
Erstellen Sie mit dem von Ihnen erstellten privaten Schlüssel und dem signierten Zertifikat eine Zertifikatsressource für einen regionsübergreifenden internen Application Load Balancer. Wenn Sie das Zertifikat hochladen, müssen Sie den Gültigkeitsbereich auf
all-regions
festlegen. Weitere Informationen finden Sie unter Selbstverwaltetes Zertifikat in den Zertifikatmanager hochladen. Die Zertifikatsressource ist erforderlich, um den Ziel-HTTPS-Proxy für den Load Balancer zu konfigurieren.Erstellen Sie ein Nur-Proxy-Subnetz, falls Sie noch keines haben. Im VPC-Netzwerk und in der Region, in der Sie die Weiterleitungsregel für den regionenübergreifenden internen Application Load Balancer erstellen möchten, muss es ein einzelnes Nur-Proxy-Subnetz geben. Dieses Subnetz wird von allen internen Application Load Balancer innerhalb dieses Netzwerks und dieser Region verwendet.
Private Service Connect-NEG erstellen
Erstellen Sie für jede globale Google API, auf die Sie zugreifen möchten, eine Private Service Connect-NEG. Private Service Connect-NEGs sind regional, auch wenn sie für die Verbindung zu globalen Google APIs verwendet werden.
Eine Private Service Connect-NEG kann nach der Erstellung nicht mehr aktualisiert werden.
Console
Rufen Sie in der Google Cloud Console die Seite Netzwerk-Endpunktgruppe erstellen auf.
Geben Sie auf der Seite Netzwerk-Endpunktgruppe erstellen einen Namen für die Netzwerk-Endpunktgruppe ein.
Wählen Sie für den Typ der Netzwerk-Endpunktgruppe die Option Private Service Connect NEG (regional) aus.
Wählen Sie für Ziel die Option Globale Google APIs aus.
Wählen Sie die Region für die Netzwerk-Endpunktgruppe aus.
Wählen Sie den Zieldienst für die Netzwerk-Endpunktgruppe aus.
Klicken Sie auf Erstellen.
gcloud
Führen Sie den Befehl network-endpoint-groups create
aus.
gcloud compute network-endpoint-groups create NEG_NAME \ --network-endpoint-type=private-service-connect \ --psc-target-service=TARGET_SERVICE \ --region=REGION
Ersetzen Sie dabei Folgendes:
NEG_NAME
ist ein Name für die Netzwerk-Endpunktgruppe.TARGET_SERVICE
: das globale Google API-Ziel, mit dem Sie eine Verbindung herstellen möchten, z. B.pubsub.googleapis.com
. Liste der unterstützten globalen Google API-ZieleREGION
ist die Region, in der die Netzwerk-Endpunktgruppe erstellt werden soll.
API
Stellen Sie eine POST
-Anfrage an die Methode regionNetworkEndpointGroups.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/networkEndpointGroups { "name": "NEG_NAME", "networkEndpointType": "PRIVATE_SERVICE_CONNECT", "pscTargetService": "TARGET_SERVICE" }
Ersetzen Sie dabei Folgendes:
PROJECT_ID
: die Projekt-ID der Netzwerk-Endpunktgruppe.REGION
ist die Region, in der die Netzwerk-Endpunktgruppe erstellt werden soll.NEG_NAME
ist ein Name für die Netzwerk-Endpunktgruppe.TARGET_SERVICE
: das globale Google API-Ziel, mit dem Sie eine Verbindung herstellen möchten, z. B.pubsub.googleapis.com
. Liste der unterstützten globalen Google API-Ziele
Load-Balancer konfigurieren
Wenn Sie auf globale Google APIs zugreifen möchten, konfigurieren Sie einen regionenübergreifenden internen Application Load Balancer.
Console
Konfiguration starten
Rufen Sie in der Google Cloud Console die Seite Load-Balancing auf.
- Klicken Sie auf Load-Balancer erstellen.
- Wählen Sie unter Typ des Load Balancers die Option Application Load Balancer (HTTP/HTTPS) aus und klicken Sie auf Weiter.
- Wählen Sie für Öffentlich oder intern die Option Intern aus und klicken Sie auf Weiter.
- Wählen Sie für Regionenübergreifende oder Einzelregions-Bereitstellung die Option Best für regionenübergreifende Arbeitslasten aus und klicken Sie auf Weiter.
- Klicken Sie auf Konfigurieren.
Grundlegende Konfiguration
- Geben Sie im Feld Name eine Bezeichnung für den Load-Balancer ein.
Wählen Sie ein Netzwerk für den Load-Balancer aus.
Das Netzwerk muss ein Nur-Proxy-Subnetz in der Region enthalten, in der Sie den Load Balancer erstellen.
Frontend-Konfiguration
- Klicken Sie auf Frontend-Konfiguration.
- Geben Sie einen Namen für die Weiterleitungsregel des Load Balancers ein.
- Wählen Sie im Feld Protokoll die Option HTTPS (einschließlich HTTP/2 und HTTP/3) aus.
- Wählen Sie eine Subnetzwerkregion für das Subnetzwerk des Load Balancers aus.
- Wählen Sie ein Subnetzwerk für den Load-Balancer aus.
- Klicken Sie auf IP-Adresse und führen Sie einen der folgenden Schritte aus:
- Wenn Sie eine Sitzungsspezifische IP-Adresse automatisch zuweisen möchten, wählen Sie Sitzungsspezifisch (automatisch) aus.
- Wenn Sie eine sitzungsspezifische IP-Adresse auswählen möchten, wählen Sie Sitzungsspezifisch (benutzerdefiniert) aus und geben Sie dann eine benutzerdefinierte sitzungsspezifische IP-Adresse aus dem IP-Adressbereich des Subnetzes des Load Balancers ein.
- Wenn Sie eine statische interne IP-Adresse reservieren und verwenden möchten, klicken Sie auf IP-Adresse erstellen und führen Sie dann die folgenden Schritte aus:
- Geben Sie einen Namen für die IP-Adresse ein.
- Klicken Sie auf Statische IP-Adresse und führen Sie einen der folgenden Schritte aus:
- Wenn Sie eine statische IP-Adresse automatisch zuweisen möchten, wählen Sie Automatisch zuweisen aus.
- Wenn Sie eine bestimmte IP-Adresse konfigurieren möchten, wählen Sie Selbst auswählen aus und geben Sie dann eine benutzerdefinierte IP-Adresse aus dem IP-Adressbereich des Subnetzes des Load Balancers ein.
- Klicken Sie auf Reservieren.
- Achten Sie darauf, dass der Port auf
443
festgelegt ist, um HTTPS-Traffic zuzulassen. - Klicken Sie auf die Liste Zertifikat und wählen Sie Ihr selbst verwaltetes Zertifikat aus.
- Klicken Sie auf Fertig.
Backend-Konfiguration
- Klicken Sie auf Backend-Konfiguration.
Erstellen Sie für jede globale Google API, auf die Sie zugreifen möchten, einen globalen Backend-Dienst. So erstellen Sie einen globalen Backend-Dienst:
- Wählen Sie im Menü Backend-Dienst erstellen oder auswählen die Option Backend-Dienst erstellen aus.
- Geben Sie im Feld Name eine Bezeichnung für den Backend-Dienst ein.
- Setzen Sie den Backend-Typ auf Private Service Connect-Netzwerk-Endpunktgruppe.
- Legen Sie den Private Service Connect-Zieltyp auf Globale Google API fest.
- Wählen Sie HTTPS als Protokoll aus.
Klicken Sie unter Backends auf das Menü Neues Backend und wählen Sie die Netzwerk-Endpunktgruppe von Private Service Connect aus.
Wenn Sie eine neue Private Service Connect-Netzwerk-Endpunktgruppe erstellen müssen, klicken Sie auf PSC-NEG erstellen.
Klicken Sie auf Fertig.
Klicken Sie auf Erstellen.
Achten Sie darauf, dass alle Backend-Dienste, die Sie hinzufügen möchten, im Menü Backend-Dienste erstellen oder auswählen ausgewählt sind. Klicken Sie dann auf OK.
Routingregeln
Die Gruppe von Regeln zum Weiterleiten eingehender HTTPS-Anfragen an bestimmte Backend-Dienste wird als URL-Zuordnung bezeichnet. Weitere Informationen zu URL-Zuordnungen finden Sie unter Übersicht über URL-Zuordnungen.
Wenn Sie nur einen Backend-Dienst für den Load Balancer konfigurieren, reicht die Standard-Routingregel aus und Sie können mit Überprüfen und abschließen fortfahren.
Wenn Sie mehrere Backend-Dienste konfigurieren, müssen Sie für jeden Backend-Dienst einen Pfad-Matcher erstellen. Jede Hostregel kann nur auf einen Pfad-Matcher verweisen, aber zwei oder mehr Hostregeln können auf denselben Pfad-Matcher verweisen.
- Wenn Sie mehr als einen Backend-Dienst haben, klicken Sie auf Routingregeln.
- Wählen Sie Einfache Host- und Pfadregel aus.
- For each backend, do the following:
- Klicken Sie auf Host- und Pfadregel hinzufügen.
- Geben Sie unter Host den Hostnamen ein, der zum Senden von Anfragen an diesen Dienst verwendet wird, z. B.
pubsub.example.com
. - Geben Sie unter Pfade den Pfad ein, z. B.
/*
. - Wählen Sie bei Backends den Backend-Dienst aus.
Prüfen und abschließen
- Klicken Sie auf Prüfen und abschließen, um die Konfiguration zu prüfen.
- Klicken Sie auf Erstellen.
gcloud
Führen Sie für jede globale Google API, auf die Sie zugreifen möchten, die folgenden Schritte aus:
Verwenden Sie den Befehl
gcloud compute backend-services create
, um einen globalen Backend-Dienst zu erstellen.gcloud compute backend-services create BACKEND_SERVICE_NAME \ --load-balancing-scheme=INTERNAL_MANAGED \ --protocol=HTTPS \ --global
Ersetzen Sie
BACKEND_SERVICE_NAME
durch den Namen des Backend-Dienstes.Verwenden Sie den Befehl
gcloud compute backend-services add-backend
, um dem entsprechenden Backend-Dienst eine NEG hinzuzufügen.gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \ --network-endpoint-group=NEG_NAME \ --network-endpoint-group-region=REGION \ --global
Ersetzen Sie dabei Folgendes:
NEG_NAME
: der Name der Private Service Connect-NEG.REGION
: die Region des Private Service Connect-NEG.
Verwenden Sie den Befehl
gcloud compute url-maps create
, um eine globale URL-Zuordnung für den Load Balancer zu erstellen.Eine URL-Zuordnung muss auf einen Standard-Backend-Dienst verweisen. Wenn Sie Ihren Load-Balancer mit einem Backend-Dienst konfigurieren, legen Sie diesen Backend-Dienst als Standard fest. Wenn Sie Ihren Load-Balancer für die Verwendung mehrerer Backend-Dienste konfigurieren, wählen Sie einen der Backend-Dienste als URL-Zuordnungsstandard aus.
gcloud compute url-maps create URL_MAP_NAME \ --default-service=DEFAULT_BACKEND_SERVICE_NAME
Ersetzen Sie dabei Folgendes:
URL_MAP_NAME
ist ein Name für die URL-Zuordnung.DEFAULT_BACKEND_SERVICE_NAME
ist der Name des Standard-Backend-Dienstes des Load-Balancers Die Standardeinstellung wird verwendet, wenn keine Hostregel mit dem angeforderten Hostnamen übereinstimmt.
Optional: Wenn Sie Ihren Load Balancer für die Verwendung mehrerer Backend-Dienste konfigurieren, führen Sie diesen Schritt aus. Wenn Ihre URL-Zuordnung nur auf einen Backend-Dienst verweist, überspringen Sie diesen Schritt.
Verwenden Sie den Befehl
gcloud compute url-maps add-path-matcher
, um der URL-Zuordnung zusätzliche Backend-Dienste hinzuzufügen.Fügen Sie für jeden Backend-Dienst einen Pfad-Matcher und eine oder mehrere Hostregeln hinzu. Sie müssen für jeden Backend-Dienst einen Pfad-Matcher erstellen. Jede Hostregel kann nur auf einen Pfad-Matcher verweisen, aber zwei oder mehr Hostregeln können auf denselben Pfad-Matcher verweisen.
gcloud compute url-maps add-path-matcher URL_MAP_NAME \ --path-matcher-name=PATH_MATCHER \ --default-service=BACKEND_SERVICE_NAME \ --new-hosts=HOSTNAMES
Ersetzen Sie dabei Folgendes:
PATH_MATCHER
ist ein Name für den Pfad-Matcher.BACKEND_SERVICE_NAME
ist der Name des Backend-Dienstes.HOSTNAMES
: Ein oder mehrere Hostnamen, an die Anfragen für den Backend-Dienst gesendet werden sollen, z. B.pubsub.example.com
. Sie können mehrere Host-Namen in einer durch Kommas getrennten Liste angeben.
Verwenden Sie den Befehl
gcloud compute target-https-proxies create
, um einen Ziel-HTTPS-Proxy zu erstellen.gcloud compute target-https-proxies create PROXY_NAME \ --url-map=URL_MAP_NAME \ --certificate-manager-certificates=CERTIFICATE_NAME
Ersetzen Sie dabei Folgendes:
PROXY_NAME
ist ein Name für den Ziel-HTTPS-Proxy.URL_MAP_NAME
ist der Name der URL-Zuordnung.CERTIFICATE_NAME
ist der Name der Zertifikatsressource.
Verwenden Sie den Befehl
gcloud compute forwarding-rules create
, um eine globale Weiterleitungsregel für Ihren Load Balancer zu erstellen.gcloud compute forwarding-rules create RULE_NAME \ --load-balancing-scheme=INTERNAL_MANAGED \ --network=NETWORK \ --address=IP_ADDRESS \ --ports=443 \ --target-https-proxy=PROXY_NAME \ --subnet=SUBNET \ --subnet-region=SUBNET_REGION \ --global
Ersetzen Sie dabei Folgendes:
RULE_NAME
: der Name der Weiterleitungsregel.NETWORK
: das VPC-Netzwerk der Weiterleitungsregel. Dieses Netzwerk muss ein Nur-Proxy-Subnetz in der Region enthalten, in der Sie den Load Balancer erstellen.IP_ADDRESS
: Die interne IP-Adresse der Weiterleitungsregel, die sich innerhalb des IP-Adressbereichs des Subnetzes der Weiterleitungsregel befinden muss. Wenn Sie eine bestimmte sitzungsspezifische IP-Adresse verwenden möchten, geben Sie die IP-Adresse ein, z. B.10.0.0.5
. Wenn Sie eine statische interne IP-Adresse verwenden möchten, geben Sie den Namen der IP-Adresse ein. Wenn Google Cloud eine sitzungsspezifische IP-Adresse auswählen soll, lassen Sie dieses Flag aus.SUBNET
: das Subnetz der Weiterleitungsregel.SUBNET_REGION
: die Region des Subnetzes der Weiterleitungsregel.
API
Führen Sie für jede globale Google API, auf die Sie zugreifen möchten, die folgenden Schritte aus:
Senden Sie zum Erstellen eines globalen Backend-Dienstes eine
POST
-Anfrage an die MethodebackendServices.insert
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices { "loadBalancingScheme": "INTERNAL_MANAGED", "name": "BACKEND_SERVICE_NAME", "protocol": "HTTPS" }
Ersetzen Sie dabei Folgendes:
PROJECT_ID
: Projekt-ID Ihres ProjektsBACKEND_SERVICE_NAME
: Der Name des Backend-Dienstes.
Wenn Sie dem entsprechenden Backend-Dienst eine NEG hinzufügen möchten, senden Sie eine
PATCH
-Anfrage an die MethodebackendServices.patch
.PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME { "backends": [ { "group": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/networkEndpointGroups/NEG_NAME" } ] }
Ersetzen Sie dabei Folgendes:
REGION
: Die Region der NEG.NEG_NAME
ist der Name der hinzuzufügenden Netzwerk-Endpunktgruppe.
Wenn Sie eine globale URL-Zuordnung für den Load Balancer erstellen möchten, senden Sie eine
POST
-Anfrage an dieurlMaps.insert
-Methode.Eine URL-Zuordnung muss auf einen Standard-Backend-Dienst verweisen. Wenn Sie Ihren Load-Balancer mit einem Backend-Dienst konfigurieren, legen Sie diesen Backend-Dienst als Standard fest. Wenn Sie Ihren Load-Balancer für die Verwendung mehrerer Backend-Dienste konfigurieren, wählen Sie einen der Backend-Dienste als URL-Zuordnungsstandard aus.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/urlMaps { "defaultService": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/DEFAULT_BACKEND_SERVICE_NAME", "name": "URL_MAP_NAME" }
Ersetzen Sie dabei Folgendes:
DEFAULT_BACKEND_SERVICE_NAME
ist der Name des Load-Balancers. Die Standardeinstellung wird verwendet, wenn keine Hostregel mit dem angeforderten Hostnamen übereinstimmt.URL_MAP_NAME
ist ein Name für die URL-Zuordnung.
Wenn Sie Ihren Load Balancer für die Verwendung mehrerer Backend-Dienste konfigurieren, führen Sie diesen Schritt aus. Wenn Ihre URL-Zuordnung nur auf einen Backend-Dienst verweist, überspringen Sie diesen Schritt.
Wenn Sie der URL-Zuordnung zusätzliche Backend-Dienste hinzufügen möchten, senden Sie eine
PATCH
-Anfrage an die MethodeurlMaps.patch
.Fügen Sie für jeden Backend-Dienst einen Pfad-Matcher und eine oder mehrere Hostregeln hinzu. Sie müssen für jeden Backend-Dienst einen Pfad-Matcher erstellen. Jede Hostregel kann nur auf einen Pfad-Matcher verweisen, aber zwei oder mehr Hostregeln können auf denselben Pfad-Matcher verweisen.
Sie können mehrere Pfad-Matcher und Hostregeln hinzufügen, indem Sie eine einzelne API-Anfrage senden.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME { "pathMatchers": [ { "name": "PATH_MATCHER_NAME_1", "defaultService": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME_1" }, { "name": "PATH_MATCHER_NAME_2", "defaultService": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME_2" } ], "hostRules": [ { "hosts": ["HOSTNAME_1"], "pathMatcher": "PATH_MATCHER_NAME_1" }, { "hosts": ["HOSTNAME_2"], "pathMatcher": "PATH_MATCHER_NAME_2" } ] }
Ersetzen Sie dabei Folgendes:
PATH_MATCHER_NAME_1
: ein Name für den ersten Pfad-Matcher.BACKEND_SERVICE_NAME_1
: der Name des ersten Backend-Dienstes.PATH_MATCHER_NAME_2
: ein Name für den zweiten Pfad-Matcher.BACKEND_SERVICE_NAME_2
: der Name des zweiten Backend-Dienstes.HOSTNAME_1
: der Hostname, an den Anfragen für den ersten Dienst gesendet werden, z. B.pubsub.example.com
.HOSTNAME_2
ist der Hostname, an den Anfragen für den zweiten Dienst gesendet werden.
Um einen Ziel-HTTPS-Proxy zu erstellen, senden Sie eine
POST
-Anfrage an dietargetHttpsProxies.insert
-Methode.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpsProxies { "name": "PROXY_NAME", "sslCertificates": [ "https://certificatemanager.googleapis.com/v1/projects/PROJECT_ID/locations/global/certificates/CERTIFICATE_NAME" ], "urlMap": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME" }
Ersetzen Sie dabei Folgendes:
PROJECT_ID
: die ID des Projekts.PROXY_NAME
ist ein Name für den Ziel-HTTPS-Proxy.CERTIFICATE_NAME
ist der Name der Zertifikatsressource.URL_MAP_NAME
ist der Name der URL-Zuordnung.
Wenn Sie eine globale Weiterleitungsregel für Ihren Load Balancer erstellen möchten, senden Sie eine
POST
-Anfrage an die MethodeglobalForwardingRules.insert
. Das Netzwerk der Weiterleitungsregel muss ein Nur-Proxy-Subnetz im Subnetz der Region der Weiterleitungsregel enthalten.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/forwardingRules { "IPAddress": "IP_ADDRESS", "loadBalancingScheme": "INTERNAL_MANAGED", "name": "FORWARDING_RULE_NAME", "network": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME", "portRange": "443", "subnetwork": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/SUBNET_REGION/subnetworks/SUBNET_NAME", "target": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpsProxies/PROXY_NAME" }
Ersetzen Sie dabei Folgendes:
IP_ADDRESS
: Die interne IP-Adresse der Weiterleitungsregel, die sich innerhalb des IP-Adressbereichs des Subnetzes der Weiterleitungsregel befinden muss. Wenn Sie eine bestimmte sitzungsspezifische IP-Adresse verwenden möchten, geben Sie die IP-Adresse an, z. B.10.0.0.5
. Wenn Sie eine statische interne IP-Adresse verwenden möchten, geben Sie den Namen der IP-Adresse an. Wenn Google Cloud eine sitzungsspezifische IP-Adresse auswählen soll, lassen Sie dieses Feld leer.FORWARDING_RULE_NAME
: der Name der WeiterleitungsregelNETWORK_NAME
: der Name des VPC-Netzwerks der Weiterleitungsregel. Dieses Netzwerk muss ein Nur-Proxy-Subnetz in der Region enthalten, in der Sie den Load Balancer erstellen.SUBNET_REGION
ist die Region des Subnetzes der Weiterleitungsregel.SUBNET_NAME
: der Name des Subnetzes der Weiterleitungsregel.
Konfiguration prüfen
So testen Sie die Verbindung Ihres Backends zu globalen Google APIs:
- Falls nicht vorhanden, erstellen Sie eine VM-Instanz (virtuelle Maschine) im VPC-Netzwerk, in dem Sie das Backend konfiguriert haben.
- Achten Sie darauf, dass Sie keine Firewallregeln oder Firewallrichtlinien erstellt haben, die die implizierte IPv4-Regel zum Zulassen von ausgehendem Traffic überschreiben.
- Stellen Sie eine Verbindung zur VM her.
Prüfen Sie mit
curl
auf der VM, ob Sie jede API abfragen können. Mit diesem Befehl wird der HeaderHost
festgelegt und die DNS-Auflösung durch Angabe einer benutzerdefinierten IP-Adresse umgangen.Sie können die Zertifikatsprüfung mit dem Flag
-k
überspringen. Sie müssen die Validierung möglicherweise überspringen, wenn Sie ein selbst signiertes Zertifikat zur Konfiguration des HTTPS-Ziel-Proxys verwendet haben oder wenn die VM nicht über das Zertifikat der Zertifizierungsstelle verfügt, die Ihr Zertifikat signiert hat.curl -iv --resolve HOSTNAME:443:IP_ADDRESS \ 'https://HOSTNAME/RESOURCE_URI'
Ersetzen Sie dabei Folgendes:
HOSTNAME
: Der Hostname, den Sie in Ihrer URL-Zuordnung konfiguriert haben, z. B.pubsub.example.com
.IP_ADDRESS
: Die IP-Adresse der Weiterleitungsregel des Load-BalancersRESOURCE_URI
ist der Rest des URI der Ressource, die Sie zur Prüfung verwenden möchten. Beispiel: Wenn der Load Balancer Anfragen an einen regionalen Pub/Sub-Endpunkt weiterleitet, können Sie$discovery/rest?version=v1
verwenden.
DNS-Einträge konfigurieren
Konfigurieren Sie DNS-Einträge für jeden Host, den Sie der URL-Zuordnung hinzugefügt haben, und verweisen Sie auf die IP-Adresse der Weiterleitungsregel. Wenn Sie DNS mit Cloud DNS verwalten, finden Sie weitere Informationen unter Einträge hinzufügen, ändern und löschen. Konfigurieren Sie andernfalls DNS-Einträge auf Ihrem DNS-Server.
Angenommen, Sie haben die folgenden Konfigurationen erstellt:
Einer Private Service Connect-NEG, die den Zieldienst
pubsub.googleapis.com
verwendet.Einen regionenübergreifenden internen Application Load Balancer, der diese Private Service Connect-NEG als Backend verwendet.
Einer URL-Zuordnung, die eine Hostregel für
pubsub.example.com
definiert.
Damit diese Konfiguration ordnungsgemäß funktioniert, erstellen Sie einen DNS-Eintrag, der pubsub.example.com
auf die IP-Adresse der Weiterleitungsregel verweist.
Bei dieser Konfiguration werden alle an pubsub.example.com
gesendeten Anfragen an den Load Balancer gesendet, der die Anfrage an pubsub.googleapis.com
weiterleitet.
Clients so konfigurieren, dass sie Anfragen an das Backend senden
Wenn Sie Anfragen über das Backend statt über die öffentlichen Dienstendpunkte senden möchten, müssen Sie Clients so konfigurieren, dass sie Anfragen an den Hostnamen senden, den Sie in der URL-Zuordnung des Load Balancers definiert haben, z. B. pubsub.example.com
. Weitere Informationen zur Konfiguration der Verwendung für benutzerdefinierte Endpunkte finden Sie in der Dokumentation zu Ihrem Client oder Ihrer Clientbibliothek. Auf den folgenden Seiten finden Sie Konfigurationsschritte für einige gängige Clients:
Python: Sie können
api_endpoint
unter Clientoptionen konfigurieren.Go: Sie können
WithEndpoint
unter Clientoptionen konfigurieren..NET: Sie können
Endpoint
in der Builder-Klasse des Clients konfigurieren.gcloud: Sie können
api_endpoint_overrides
in der gcloud CLI konfigurieren.