Private Service Connect-NEG einem Load-Balancer hinzufügen
Sie können Private Service Connect mit HTTP(S)-Nutzerdienstkontrollen verwenden, um eine Verbindung zu unterstützten Diensten herzustellen und dabei den Load-Balancer für die Richtlinienerzwingung zu verwenden. Sie stellen eine Verbindung zum Dienst über eine Weiterleitungsregel her, die einer Private Service Connect-Netzwerk-Endpunktgruppe (NEG) zugeordnet ist.
Weitere Informationen zu unterstützten Diensten und Konfigurationen finden Sie unter Private Service Connect mit HTTP(S)-Nutzerkontrollen.
Auf dieser Seite erfahren Sie, wie Sie eine Private Service Connect-NEG einem vorhandenen HTTP(S)-Load-Balancer hinzufügen, um entweder auf Google APIs oder einen veröffentlichten Dienst zuzugreifen.
Eine Anleitung zum Erstellen des HTTP(S)-Load-Balancers finden Sie hier:
- Internen HTTP(S)-Load-Balancer für den Zugriff auf Google APIs erstellen
- Globalen externen HTTP(S)-Load-Balancer erstellen, um auf einen veröffentlichten Dienst zuzugreifen
Rollen
Die Rolle "Compute-Load-Balancer-Administrator" (roles/compute.loadBalancerAdmin
) enthält die zum Ausführen der in dieser Anleitung beschriebenen Aufgaben erforderlichen Berechtigungen.
Hinweis
Legen Sie fest, zu welcher API oder zu welchem Dienst Sie eine Verbindung herstellen möchten:
Für Google APIs:
- Wählen Sie einen regionalen Dienstendpunkt aus.
Für verwaltete Dienste:
Wenn Sie einen eigenen Dienst veröffentlichen möchten, finden Sie weitere Informationen unter Verwaltete Dienste veröffentlichen.
Wenn Sie eine Verbindung zu einem von Google Cloud oder einem Drittanbieter verwalteten Dienst herstellen, bitten Sie den Ersteller um die folgenden Informationen:
Der URI des Dienstanhangs für den Dienst, zu dem Sie eine Verbindung herstellen möchten.
Alle Anforderungen für die DNS-Namen, an die Sie Anfragen senden. Möglicherweise müssen Sie bestimmte DNS-Namen in der URL-Zuordnungskonfiguration verwenden.
Bestimmen Sie, welcher Load-Balancer-Typ den Dienst unterstützt, zu dem Sie eine Verbindung herstellen möchten. Weitere Informationen finden Sie unter Unterstützte Load-Balancer und Ziele.
Private Service Connect-NEG erstellen
Wenn Sie eine NEG erstellen, die auf einen veröffentlichten Dienst verweist, benötigen Sie den URI des Dienstanhangs für den Dienst. Der Dienstanhang hat folgendes Format: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME
.
Console
Rufen Sie in der Google Cloud Console die Seite Netzwerk-Endpunktgruppen auf.
Klicken Sie auf NETZWERK-ENDPUNKTGRUPPE ERSTELLEN.
Geben Sie einen Namen für die Netzwerk-Endpunktgruppe ein.
Wählen Sie für den Typ der Netzwerk-Endpunktgruppe die Option Netzwerk-Endpunktgruppe (Private Service Connect) aus.
Konfigurieren Sie das Ziel.
- So stellen Sie eine Verbindung zu einer regionalen Google API her:
- Wählen Sie für Ziel die Option Google APIs aus.
- Wählen Sie eine Region und den Zieldienst aus.
So stellen Sie eine Verbindung zu einem veröffentlichten Dienst her:
- Wählen Sie für Ziel die Option Veröffentlichter Dienst aus.
- Geben Sie für Zieldienst den URI des Dienstanhangs ein.
Wählen Sie das Netzwerk und das Subnetzwerk aus, in dem die Netzwerk-Endpunktgruppe erstellt werden soll.
Das Subnetz muss sich in derselben Region wie der veröffentlichte Dienst befinden.
- So stellen Sie eine Verbindung zu einer regionalen Google API her:
Klicken Sie auf Erstellen.
gcloud
So erstellen Sie eine NEG, die eine Verbindung zu einer regionalen Google API herstellt:
gcloud compute network-endpoint-groups create NEG_NAME \ --network-endpoint-type=private-service-connect \ --psc-target-service=TARGET_SERVICE \ --region=REGION
Dabei gilt:
NEG_NAME
ist ein Name für die Netzwerk-Endpunktgruppe.TARGET_SERVICE
sind die regionalen Dienstendpunkte, zu denen Sie eine Verbindung herstellen möchten.REGION
ist die Region, in der die Netzwerk-Endpunktgruppe erstellt werden soll. Die Region muss mit der Region des Dienstes übereinstimmen, zu dem Sie eine Verbindung herstellen.
So erstellen Sie eine NEG, die eine Verbindung zu einem veröffentlichten Dienst herstellt:
gcloud compute network-endpoint-groups create NEG_NAME \ --network-endpoint-type=private-service-connect \ --psc-target-service=TARGET_SERVICE \ --region=REGION \ --network=NETWORK \ --subnet=SUBNET
Dabei gilt:
NEG_NAME
ist ein Name für die Netzwerk-Endpunktgruppe.TARGET_SERVICE
ist der URI des Dienstanhangs.REGION
ist die Region, in der die Netzwerk-Endpunktgruppe erstellt werden soll. Die Region muss mit der Region des Zieldienstes übereinstimmen.NETWORK
ist die Region, in der die Netzwerk-Endpunktgruppe erstellt werden soll. Wenn nichts angegeben ist, wird das Standardnetzwerk verwendet.SUBNET
ist die Region, in der die Netzwerk-Endpunktgruppe erstellt werden soll. Das Subnetz muss sich in derselben Region wie der Zieldienst befinden. Ein Subnetz muss angegeben werden, wenn Sie das Netzwerk angeben. Wenn sowohl Netzwerk als auch Subnetz weggelassen werden, wird das Standardnetzwerk verwendet und das Standardsubnetz in der angegebenenREGION
.
Private Service Connect-NEG einem vorhandenen Load-Balancer hinzufügen
Sie können einen unterstützten Load-Balancer konfigurieren, um Traffic an eine Private Service Connect-NEG weiterzuleiten.
Weitere Informationen zu unterstützten Konfigurationen finden Sie unter Spezifikationen.
Console
Load-Balancer bearbeiten
Rufen Sie in der Google Cloud Console die Seite Load-Balancing auf.
Klicken Sie auf den Load-Balancer, den Sie ändern möchten.
Klicken Sie auf Bearbeiten.
Back-End-Konfiguration aktualisieren
- Klicken Sie auf Back-End-Konfiguration.
- Maximieren Sie die Liste der Back-End-Dienste und wählen Sie Back-End-Dienst erstellen aus.
- Geben Sie im Feld Name eine Bezeichnung für den Back-End-Dienst ein.
- Setzen Sie den Back-End-Typ auf Private Service Connect-Netzwerk-Endpunktgruppe.
- Klicken Sie im Abschnitt Back-Ends auf die Liste Private Service Connect-Netzwerk-Endpunktgruppe und wählen Sie die von Ihnen erstellte Private Service Connect NEG aus. Klicken Sie auf Fertig.
Wenn Sie einen globalen externen HTTP(S)-Load-Balancer für die Verbindung mit einem veröffentlichten Dienst in mehreren Regionen konfigurieren und mehrere Private Service Connect-NEGs erstellt haben, klicken Sie auf Back-End hinzufügen, um eine weitere NEG auszuwählen.
Wiederholen Sie diesen Schritt, bis alle Back-Ends für diesen verwalteten Dienst dem Back-End-Dienst hinzugefügt wurden.
Klicken Sie auf Erstellen.
Routingregeln aktualisieren
- Klicken Sie auf Routingregeln.
- Geben Sie für jeden hinzugefügten Back-End-Dienst einen Host und einen Pfad ein.
- Klicken Sie auf Prüfen und abschließen, um die Konfiguration zu überprüfen.
- Klicken Sie auf Erstellen.
gcloud
Back-End-Konfiguration aktualisieren
Erstellen Sie einen Back-End-Dienst für den Zieldienst.
gcloud compute backend-services create BACKEND_SERVICE_NAME \ --load-balancing-scheme=EXTERNAL_MANAGED \ --protocol=HTTPS \ --global
Ersetzen Sie
BACKEND_SERVICE_NAME
durch den Namen des Back-End-Dienstes.Fügen Sie die Private Service Connect NEG hinzu, die auf den Zieldienst verweist.
Wenn Sie einen Back-End-Dienst zu einem regionalen Load-Balancer hinzufügen, verwenden Sie das Flag
--region
, um dieselbe Region wie für den Load-Balancer anzugeben.gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \ --network-endpoint-group=NEG_NAME \ --network-endpoint-group-region=REGION \ --region-REGION
Dabei gilt:
BACKEND_SERVICE_NAME
ist der Name des Back-End-Dienstes.NEG_NAME
ist der Name der Netzwerk-Endpunktgruppe.REGION
ist die Region der Netzwerk-Endpunktgruppe. Verwenden Sie für den Back-End-Dienst dieselbe Region.REGION
ist die Region des Back-End-Dienstes. Verwenden Sie dieselbe Region für die NEG.
Verwenden Sie das Flag
--global
, wenn Sie einem globalen Load-Balancer einen Back-End-Dienst hinzufügen.Wenn Sie für denselben Dienst mehrere NEGs erstellt haben, wiederholen Sie diesen Schritt, um dem Back-End-Dienst alle NEGs hinzuzufügen.
gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \ --network-endpoint-group=NEG_NAME \ --network-endpoint-group-region=NEG_REGION \ --global
Dabei gilt:
BACKEND_SERVICE_NAME
ist der Name des Back-End-Dienstes.NEG_NAME
ist der Name der Netzwerk-Endpunktgruppe.NEG_REGION
ist die Region der Netzwerk-Endpunktgruppe.
Routingregeln aktualisieren
Fügen Sie für jeden von Ihnen erstellten Back-End-Dienst der URL-Zuordnung des Load-Balancers einen Pfad-Matcher hinzu.
Wenn die URL-Zuordnung regional ist, geben Sie die Region mit dem Flag
--region
an.gcloud compute url-maps add-path-matcher URL_MAP_NAME \ --path-matcher-name=PATH_MATCHER \ --default-service=BACKEND_SERVICE_NAME \ --region=REGION
Dabei gilt:
URL_MAP_NAME
ist der Name der URL-Zuordnung.PATH_MATCHER
ist ein Name für den Pfad-Matcher.BACKEND_SERVICE_NAME
ist der Name des Back-End-Dienstes.REGION
ist die Region der URL-Zuordnung.
Wenn die URL-Zuordnung global ist, geben Sie das Flag
--global
an.gcloud compute url-maps add-path-matcher URL_MAP_NAME \ --path-matcher-name=PATH_MATCHER \ --default-service=BACKEND_SERVICE_NAME \ --global
Dabei gilt:
URL_MAP_NAME
ist der Name der URL-Zuordnung.PATH_MATCHER
ist ein Name für den Pfad-Matcher.BACKEND_SERVICE_NAME
ist der Name des Back-End-Dienstes.REGION
ist die Region der URL-Zuordnung.
Fügen Sie für jeden Hostnamen eine Hostregel hinzu.
Jede Hostregel kann nur auf einen Pfad-Matcher verweisen, aber zwei oder mehr Hostregeln können auf denselben Pfad-Matcher verweisen.
Wenn die URL-Zuordnung regional ist, geben Sie die Region mit dem Flag
--region
an.gcloud compute url-maps add-host-rule URL_MAP_NAME \ --hosts=HOST \ --path-matcher-name=PATH_MATCHER \ --region=REGION
Dabei gilt:
URL_MAP_NAME
ist der Name der URL-Zuordnung.HOST
ist der Hostname, an den Anfragen für diesen Dienst gesendet werden.PATH_MATCHER
ist der Name des Pfad-Matchers.REGION
ist die Region der URL-Zuordnung.
Wenn die URL-Zuordnung global ist, geben Sie das Flag
--global
an.gcloud compute url-maps add-host-rule URL_MAP_NAME \ --hosts=HOST \ --path-matcher-name=PATH_MATCHER \ --global
Dabei gilt:
URL_MAP_NAME
ist der Name der URL-Zuordnung.HOST
ist der Hostname, an den Anfragen für diesen Dienst gesendet werden.PATH_MATCHER
ist der Name des Pfad-Matchers.