Zugriff auf veröffentlichte Dienste über Endpunkte

In diesem Dokument wird erläutert, wie Sie über Private Service Connect-Endpunkte auf Dienste in einem anderen VPC-Netzwerk zugreifen. Sie können eine Verbindung zu Ihren eigenen Diensten oder denen anderer Dienstersteller herstellen, einschließlich Google.

Weitere Informationen zu Diensten finden Sie unter Verwaltete Dienste veröffentlichen.

Hinweise

  • Weitere Informationen, einschließlich der Einschränkungen, finden Sie unter Verbindung zu Diensten mithilfe von Endpunkten herstellen.
  • Sie müssen in Ihrem Projekt die Compute Engine API aktivieren.
  • Sie müssen die Service Directory API für Ihr Projekt aktivieren.
  • Sie müssen die Cloud DNS API in Ihrem Projekt aktivieren.
  • Suchen Sie ein reguläres Subnetz, das Sie verwenden können, um dem Endpunkt eine IP-Adresse zuzuweisen, oder erstellen Sie ein solches Subnetz.
    • Das Subnetz muss sich in derselben Region wie der Dienst befinden, zu dem Sie eine Verbindung herstellen möchten.
    • Sie können eine IPv4-Adresse aus einem reinen IPv4-Subnetz oder einem Dual-Stack-Subnetz verwenden.
    • Sie können eine IPv6-Adresse aus einem reinen IPv6-(Vorschau)- oder Dual-Stack-Subnetz verwenden, wenn das Subnetz einen internen IPv6-Adressbereich hat.
    • Die IP-Version der IP-Adresse wirkt sich darauf aus, zu welchen veröffentlichten Diensten der Endpunkt eine Verbindung herstellen kann. Weitere Informationen finden Sie unter Übersetzung von IP-Versionen.
  • Firewallregeln für ausgehenden Traffic müssen Traffic zur internen IP-Adresse des Endpunkts zulassen. Die implizierte Firewallregel zum Zulassen ausgehenden Traffics erlaubt ausgehenden Traffic an jede Ziel-IP-Adresse. Wenn Sie in Ihrem VPC-Netzwerk Firewallregeln erstellt haben, die ausgehenden Traffic ablehnen, oder wenn Sie hierarchische Firewallrichtlinien erstellt haben, durch die das Verhalten von implizit zulässigem ausgehendem Traffic geändert wird, wird der Zugriff auf den Endpunkt möglicherweise beeinträchtigt. Erstellen Sie eine spezifische Firewallregel oder Richtlinie, die ausgehenden Traffic zulässt, um Traffic zum internen IP-Adressziel des Dienstendpunkts zu erlauben.
  • Sie müssen den URI des Dienstanhangs für den Dienst haben. Beispiel: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie für den Zugriff auf veröffentlichte Dienste über Endpunkte benötigen:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierten Rollen enthalten die Berechtigungen, die für den Zugriff auf veröffentlichte Dienste über Endpunkte erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um über Endpunkte auf veröffentlichte Dienste zuzugreifen:

  • So erstellen, rufen Sie Endpunkte in Ihrem Projekt auf und löschen Sie sie:
    • compute.networks.use für Ihr Projekt
    • compute.subnetworks.use für Ihr Projekt
    • compute.addresses.createInternal für Ihr Projekt
    • compute.addresses.deleteInternal für Ihr Projekt
    • compute.addresses.get für Ihr Projekt
    • compute.addresses.list für Ihr Projekt
    • compute.addresses.use für Ihr Projekt
    • compute.forwardingRules.create für Ihr Projekt
    • compute.forwardingRules.delete für Ihr Projekt
    • compute.forwardingRules.get für Ihr Projekt
    • compute.forwardingRules.list für Ihr Projekt
    • compute.forwardingRules.pscCreate für Ihr Projekt
    • compute.forwardingRules.pscDelete für Ihr Projekt
    • compute.regionOperations.get für Ihr Projekt
    • servicedirectory.namespaces.create für Ihr Projekt
    • servicedirectory.namespaces.delete für Ihr Projekt
    • servicedirectory.services.create für Ihr Projekt
    • servicedirectory.services.delete für Ihr Projekt
  • So erstellen, sehen und löschen Sie Endpunkte in einem Dienstprojekt, das an ein freigegebene VPC-Netzwerk angehängt ist:
    • compute.addresses.createInternal für das Dienstprojekt
    • compute.addresses.deleteInternal für das Dienstprojekt
    • compute.addresses.get für das Dienstprojekt
    • compute.addresses.list für das Dienstprojekt
    • compute.addresses.use für das Dienstprojekt
    • compute.forwardingRules.create für das Dienstprojekt
    • compute.forwardingRules.delete für das Dienstprojekt
    • compute.forwardingRules.get für das Dienstprojekt
    • compute.forwardingRules.list für das Dienstprojekt
    • compute.forwardingRules.pscCreate für das Dienstprojekt
    • compute.forwardingRules.pscDelete für das Dienstprojekt
    • compute.regionOperations.get für das Dienstprojekt
    • servicedirectory.namespaces.create für das Dienstprojekt
    • servicedirectory.namespaces.delete für das Dienstprojekt
    • servicedirectory.services.create für das Dienstprojekt
    • servicedirectory.services.delete für das Dienstprojekt
    • compute.networks.use für das Hostprojekt
    • compute.subnetworks.use für das Hostprojekt
  • So konfigurieren Sie DNS-Einträge für einen Endpunkt in Ihrem Projekt automatisch oder manuell:
    • dns.managedZones.create für Ihr Projekt
    • dns.managedZones.delete für Ihr Projekt
    • dns.networks.bindPrivateDNSZone für Ihr Projekt
    • servicedirectory.namespaces.associatePrivateZone für Ihr Projekt
  • So konfigurieren Sie DNS-Einträge für einen Endpunkt in einem freigegebene VPC-Netzwerk automatisch oder manuell:
    • dns.managedZones.create für das Dienstprojekt
    • dns.managedZones.delete für das Dienstprojekt
    • dns.networks.bindPrivateDNSZone für das Dienstprojekt
    • servicedirectory.namespaces.associatePrivateZone für das Dienstprojekt
  • So rufen Sie die Seite „Private Service Connect“ in der Trusted Cloud Console auf:
    • compute.forwardingRules.list für Ihr Projekt
    • compute.globalForwardingRules.list für Ihr Projekt
    • compute.networkEndpointGroups.list für Ihr Projekt
    • compute.regionNetworkEndpointGroups.list für Ihr Projekt
    • compute.urlMaps.list für Ihr Projekt
    • compute.backendService.list für Ihr Projekt
    • compute.regionBackendService.list für Ihr Projekt
    • compute.backendBucket.list für Ihr Projekt
    • compute.targetHttpProxy.list für Ihr Projekt
    • compute.targetHttpsProxy.list für Ihr Projekt
    • compute.regionTargetTcpProxy.list für Ihr Projekt
    • compute.targetTcpProxy.list für Ihr Projekt
    • compute.targetSslProxy.list für Ihr Projekt
    • compute.sslCertificate.list für Ihr Projekt
    • compute.sslPolicy.list für Ihr Projekt
    • compute.regionHealthCheck.list für Ihr Projekt
    • compute.healthCheck.list für Ihr Projekt
    • compute.httpHealthCheck.list für Ihr Projekt
    • compute.httpsHealthCheck.list für Ihr Projekt

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Endpunkt erstellen

Ein Endpunkt stellt mithilfe einer Private Service Connect-Weiterleitungsregel eine Verbindung zu Diensten in einem anderen VPC-Netzwerk her. Jede Weiterleitungsregel wird auf das projektspezifische Kontingent für Private Service Connect-Weiterleitungsregeln angerechnet, mit denen auf Dienste in einem anderen VPC-Netzwerk zugegriffen wird.

Wenn Sie einen Endpunkt erstellen, wird dieser automatisch bei Service Directory mit einem von Ihnen ausgewählten Namespace oder mit dem Standard-Namespace goog-psc-default registriert.

Wenn Sie den Endpunkt aus mehreren Regionen verfügbar machen möchten, aktivieren Sie den globalen Zugriff.

Sie können nur das Feld „Globaler Zugriff“ von Endpunkten für veröffentlichte Dienste aktualisieren. Wenn Sie andere Felder aktualisieren möchten, löschen Sie den Endpunkt und erstellen Sie einen neuen.

Console

  1. Rufen Sie in der Trusted Cloud Console die Seite Private Service Connect auf.

    Zu Private Service Connect

  2. Klicken Sie auf den Tab Verbundene Endpunkte.

  3. Klicken Sie auf Endpunkt verbinden.

  4. Wählen Sie für Ziel die Option Veröffentlichter Dienst aus.

  5. Geben Sie bei Zieldienst den URI des Dienstanhangs ein, zu dem Sie eine Verbindung herstellen möchten.

    Der URI des Dienstanhangs hat folgendes Format: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME.

  6. Geben Sie unter Endpunktname einen Namen für den Endpunkt ein.

  7. Wählen Sie ein Netzwerk für den Endpunkt aus.

  8. Wählen Sie ein Subnetzwerk für den Endpunkt aus.

  9. Wählen Sie eine IP-Adresse für den Endpunkt aus. Wenn Sie eine neue IP-Adresse benötigen, können Sie eine erstellen:

    1. Klicken Sie auf das Drop-down-Menü IP-Adresse und wählen Sie IP-Adresse erstellen aus.
    2. Geben Sie einen Namen und optional eine Beschreibung für die IP-Adresse ein.
    3. Wählen Sie eine IP-Version aus.
    4. Wenn Sie eine IPv4-Adresse erstellen, wählen Sie Automatisch zuweisen oder Selbst auswählen aus.

      Wenn Sie Selbst auswählen ausgewählt haben, geben Sie die benutzerdefinierte IP-Adresse ein, die Sie verwenden möchten.

    5. Klicken Sie auf Reservieren.

  10. Wenn Sie den Endpunkt in allen Regionen verfügbar machen möchten, wählen Sie Globalen Zugriff aktivieren aus.

  11. Wählen Sie einen Namespace aus der Drop-down-Liste aus oder erstellen Sie einen neuen Namespace.

    Die Region wird anhand des ausgewählten Subnetzwerks ausgefüllt.

  12. Klicken Sie auf Endpunkt hinzufügen.

gcloud

  1. Reservieren Sie eine interne IP-Adresse, die Sie dem Endpunkt zuweisen möchten.

    gcloud compute addresses create ADDRESS_NAME \
        --region=REGION \
        --subnet=SUBNET \
        --ip-version=IP_VERSION
    

    Ersetzen Sie dabei Folgendes:

    • ADDRESS_NAME: der Name, der der reservierten IP-Adresse zugewiesen werden soll.

    • REGION: die Region für die Endpunkt-IP-Adresse. Dies muss dieselbe Region sein, die den Dienstanhang des Diensterstellers enthält.

    • SUBNET: der Name des Subnetzes für die Endpunkt-IP-Adresse.

    • IP_VERSION: die IP-Version der IP-Adresse, entweder IPV4 oder IPV6. Standardmäßig ist IPV4 ausgewählt. Zum Angeben von IPV6 muss die IP-Adresse mit einem Subnetz mit einem internen IPv6-Adressbereich verbunden sein.

  2. Suchen Sie die reservierte IP-Adresse.

    gcloud compute addresses list --filter="name=ADDRESS_NAME"
    
  3. Erstellen Sie eine Weiterleitungsregel, um den Endpunkt mit dem Dienstanhang des Diensterstellers zu verbinden. Standardmäßig sind Endpunkte nur in ihrer eigenen Region verfügbar. Verwenden Sie das Flag --allow-psc-global-access, um einen Endpunkt in allen Regionen verfügbar zu machen.

    • Erstellen Sie einen Endpunkt, auf den nur von der zugehörigen Region aus zugegriffen werden kann.

      gcloud compute forwarding-rules create ENDPOINT_NAME \
          --region=REGION \
          --network=NETWORK_NAME \
          --address=ADDRESS_NAME \
          --target-service-attachment=SERVICE_ATTACHMENT \
          [ --service-directory-registration=projects/PROJECT_ID/locations/REGION/namespaces/NAMESPACE ]
      
    • Erstellen Sie einen Endpunkt, auf den von jeder Region aus zugegriffen werden kann.

      gcloud compute forwarding-rules create ENDPOINT_NAME \
          --region=REGION \
          --network=NETWORK_NAME \
          --address=ADDRESS_NAME \
          --target-service-attachment=SERVICE_ATTACHMENT \
          --allow-psc-global-access \
          [ --service-directory-registration=projects/PROJECT_ID/locations/REGION/namespaces/NAMESPACE ]
      

    Ersetzen Sie dabei Folgendes:

    • ENDPOINT_NAME: der Name, der dem Endpunkt zugewiesen werden soll.

    • REGION: die Region für den Endpunkt. Dies muss dieselbe Region sein, die den Dienstanhang des Diensterstellers enthält.

    • NETWORK_NAME: der Name des VPC-Netzwerks für den Endpunkt.

    • ADDRESS_NAME: der Name der reservierten Adresse.

    • SERVICE_ATTACHMENT: der URI des Dienstanhangs des Diensterstellers. Beispiel: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME

    • PROJECT_ID: Ihre Projekt-ID.

    • NAMESPACE: der Namespace von Service Directory, den Sie verwenden möchten. Wenn Sie einen nicht vorhandenen Namespace angeben, wird der Namespace erstellt.

      Wenn Sie das Flag --service-directory-registration weglassen, wird der Standard-Namespace von goog-psc-default verwendet.

API

  1. Reservieren Sie eine interne IP-Adresse, die Sie dem Endpunkt zuweisen möchten.

    POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/addresses
    
    {
      "name": "ADDRESS_NAME",
      "addressType": "INTERNAL",
      "subnetwork": "SUBNET_URI",
      "ipVersion": "IP_VERSION"
    }
    

    Ersetzen Sie dabei Folgendes:

    • PROJECT_ID: Ihre Projekt-ID.

    • REGION: die Region für den Endpunkt. Dies muss dieselbe Region sein, die den Dienstanhang des Diensterstellers enthält.

    • ADDRESS_NAME: der Name, der der reservierten IP-Adresse zugewiesen werden soll.

    • SUBNET_URI: das Subnetz für die IP-Adresse. Mit der Methode subnetworks.list oder gcloud compute networks subnets list --uri können Sie die URLs Ihrer Netzwerke ermitteln.

    • IP_VERSION: die IP-Version der IP-Adresse, entweder IPV4 oder IPV6. Standardmäßig ist IPV4 ausgewählt. Zum Angeben von IPV6 muss die IP-Adresse mit einem Subnetz mit einem internen IPv6-Adressbereich verbunden sein.

  2. Erstellen Sie eine Weiterleitungsregel, um den Endpunkt mit dem Dienstanhang des Diensterstellers zu verbinden. Standardmäßig sind Endpunkte nur in ihrer eigenen Region verfügbar. Wenn Sie einen Endpunkt in allen Regionen verfügbar machen möchten, legen Sie allowPscGlobalAccess auf true fest.

    • Erstellen Sie einen Endpunkt, auf den nur von der zugehörigen Region aus zugegriffen werden kann.

      POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/forwardingRules
      {
        "name": "ENDPOINT_NAME",
        "IPAddress": "ADDRESS_URI",
        "target": "SERVICE_ATTACHMENT",
        "network": "NETWORK_URI",
        "serviceDirectoryRegistrations": [
            {
                "namespace": "NAMESPACE"
            }
        ]
      }
      
    • Erstellen Sie einen Endpunkt, auf den von jeder Region aus zugegriffen werden kann.

      POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/forwardingRules
      {
        "name": "ENDPOINT_NAME",
        "IPAddress": "ADDRESS_URI",
        "target": "SERVICE_ATTACHMENT",
        "network": "NETWORK_URI",
        "allowPscGlobalAccess": true,
        "serviceDirectoryRegistrations": [
            {
                "namespace": "NAMESPACE"
            }
        ]
      }
      

    Ersetzen Sie dabei Folgendes:

    • PROJECT_ID: Ihre Projekt-ID.

    • REGION: die Region für den Endpunkt.

    • ENDPOINT_NAME: der Name, der dem Endpunkt zugewiesen werden soll.

    • ADDRESS_URI: der URI der reservierten Adresse im zugehörigen Netzwerk. Verwenden Sie die Methode addresses.list oder gcloud compute addresses list --uri, um die URL Ihrer reservierten Adresse zu ermitteln.

    • SERVICE_ATTACHMENT: der URI des Dienstanhangs des Diensterstellers. Beispiel: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME

    • NETWORK_URI: das VPC-Netzwerk für den Endpunkt. Mit der Methode network.list oder gcloud compute networks list --uri können Sie den URI Ihres Netzwerks ermitteln.

    • NAMESPACE: der Namespace für den Endpunkt. Wenn Sie einen nicht vorhandenen Namespace angeben, wird der Namespace erstellt. Wenn Sie das Feld namespace weglassen, wird der Standard-Namespace von goog-psc-default zugewiesen.

Endpunkt mit einer IP-Adresse aus einem freigegebene VPC-Netzwerk erstellen

Dienstprojektadministratoren können Endpunkte in Dienstprojekten mit freigegebene VPC erstellen, die IP-Adressen aus verbundenen freigegebenen VPC-Netzwerken verwenden. Das Erstellen von Endpunkten dieses Typs ist in der Trusted Cloud Console nicht möglich. Sie müssen die Google Cloud CLI verwenden oder eine API-Anfrage senden. Weitere Informationen finden Sie unter Freigegebene VPC.

In diesem Beispiel wird gezeigt, wie Sie einen Endpunkt mit einer IP-Adresse aus einem freigegebene VPC-Netzwerk erstellen, auf den von einer einzelnen Region aus zugegriffen werden kann. Informationen zum Aktivieren des globalen Zugriffs oder zum Auswählen eines Namespace für Service Directory finden Sie unter Endpunkt erstellen.

gcloud

  1. Führen Sie einen der folgenden Schritte aus, um eine interne IP-Adresse zu reservieren, die dem Endpunkt zugewiesen werden soll:

    Die IP-Adresse muss sich in derselben Region wie der Dienstanhang des Diensterstellers befinden.

  2. Führen Sie einen der folgenden Schritte aus, um den Endpunkt im Dienstprojekt zu erstellen.

    • Wenn Sie die Berechtigung haben, alle Subnetze im Hostprojekt zu verwenden, verwenden Sie den folgenden Befehl:

      gcloud compute forwarding-rules create ENDPOINT_NAME \
          --region=REGION \
          --network=projects/HOST_PROJECT/global/networks/HOST_NETWORK \
          --address=projects/ADDRESS_PROJECT/regions/REGION/addresses/ADDRESS_NAME \
          --target-service-attachment=SERVICE_ATTACHMENT
      

      Ersetzen Sie Folgendes:

      • ENDPOINT_NAME: der Name, der dem Endpunkt zugewiesen werden soll.
      • REGION: die Region für den Endpunkt. Dies muss dieselbe Region sein, die den Dienstanhang des Diensterstellers enthält.
      • HOST_PROJECT: die Projekt-ID des Projekts des freigegebene VPC-Netzwerks.
      • HOST_NETWORK: der Name des freigegebene VPC-Netzwerks, das die IP-Adresse des Endpunkts enthält.
      • ADDRESS_PROJECT: die ID des Projekts, in dem Sie die IP-Adresse reserviert haben. Das kann entweder das Dienstprojekt oder das Hostprojekt sein.
      • ADDRESS_NAME: der Name der reservierten IP-Adresse.
      • SERVICE_ATTACHMENT: der URI des Dienstanhangs des Diensterstellers. Beispiel: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME
    • Wenn Sie nur die Berechtigung haben, einige Subnetze im Hostprojekt zu verwenden, geben Sie ein freigegebenes Subnetz mit dem folgenden Befehl an:

      gcloud compute forwarding-rules create ENDPOINT_NAME \
          --region=REGION \
          --subnet=projects/HOST_PROJECT/regions/REGION/subnetworks/HOST_SUBNET \
          --address=projects/ADDRESS_PROJECT/regions/REGION/addresses/ADDRESS_NAME \
          --target-service-attachment=SERVICE_ATTACHMENT
      

      Ersetzen Sie HOST_SUBNET durch den Namen des Subnetzes, das die IP-Adresse des Endpunkts enthält.

API

  1. Führen Sie einen der folgenden Schritte aus, um eine interne IP-Adresse zu reservieren, die dem Endpunkt zugewiesen werden soll:

    Die IP-Adresse muss sich in derselben Region wie der Dienstanhang des Diensterstellers befinden.

  2. Führen Sie einen der folgenden Schritte aus, um den Endpunkt im Dienstprojekt zu erstellen.

    • Wenn Sie die Berechtigung haben, alle Subnetze im Hostprojekt zu verwenden, stellen Sie die folgende Anfrage:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/forwardingRules
      {
        "name": "ENDPOINT_NAME",
        "IPAddress": "projects/ADDRESS_PROJECT/regions/REGION/addresses/ADDRESS_NAME",
        "target": "SERVICE_ATTACHMENT",
        "network": "projects/HOST_PROJECT/global/networks/HOST_NETWORK"
      }
      

      Ersetzen Sie Folgendes:

      • PROJECT: die ID des Dienstprojekts.
      • REGION: die Region für den Endpunkt. Dies muss dieselbe Region sein, die den Dienstanhang des Diensterstellers enthält.
      • ENDPOINT_NAME: der Name, der dem Endpunkt zugewiesen werden soll.
      • ADDRESS_PROJECT: die ID des Projekts, in dem Sie die IP-Adresse reserviert haben. Dies kann entweder das Dienstprojekt oder das Hostprojekt sein.
      • ADDRESS_NAME: der Name der reservierten IP-Adresse.
      • SERVICE_ATTACHMENT: der URI des Dienstanhangs des Diensterstellers. Beispiel: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME
      • HOST_PROJECT: die Projekt-ID des Projekts des freigegebene VPC-Netzwerks.
      • HOST_NETWORK: der Name des freigegebene VPC-Netzwerks, das die IP-Adresse des Endpunkts enthält.
    • Wenn Sie nur die Berechtigung zur Verwendung einiger Subnetze im Hostprojekt haben, geben Sie ein freigegebenes Subnetz an, indem Sie die folgende Anfrage stellen:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/forwardingRules
      {
        "name": "ENDPOINT_NAME",
        "IPAddress": "projects/ADDRESS_PROJECT/regions/REGION/addresses/ADDRESS_NAME",
        "target": "SERVICE_ATTACHMENT",
        "subnetwork": "projects/HOST_PROJECT/regions/REGION/subnetworks/HOST_SUBNET"
      }
      

      Ersetzen Sie HOST_SUBNET durch den Namen des Subnetzes, das die IP-Adresse des Endpunkts enthält.

Endpunkte auflisten

Sie können alle konfigurierten Endpunkte auflisten.

Console

  1. Rufen Sie in der Trusted Cloud Console die Seite Private Service Connect auf.

    Zu Private Service Connect

  2. Klicken Sie auf den Tab Verbundene Endpunkte.

    Die Endpunkte werden angezeigt.

gcloud

gcloud compute forwarding-rules list \
    --filter 'target~serviceAttachments'

Die Ausgabe sieht etwa so aus:

NAME  REGION  IP_ADDRESS  IP_PROTOCOL  TARGET
RULE          IP          TCP          REGION/serviceAttachments/SERVICE_NAME

API

Dieser API-Aufruf gibt alle Weiterleitungsregeln zurück, nicht nur Endpunkte, die für den Zugriff auf Dienste verwendet werden.

GET https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/forwardingRules

Ersetzen Sie dabei Folgendes:

  • PROJECT_ID: das Projekt, das den Endpunkt enthält.
  • REGION: die Region für den Endpunkt.

Endpunktdetails ansehen

Sie können alle Konfigurationsdetails eines Endpunkts aufrufen, einschließlich des Verbindungsstatus des Endpunkts.

Console

  1. Rufen Sie in der Trusted Cloud Console die Seite Private Service Connect auf.

    Zu Private Service Connect

  2. Klicken Sie auf den Tab Verbundene Endpunkte.

  3. Klicken Sie auf den Endpunkt, den Sie aufrufen möchten.

gcloud

gcloud compute forwarding-rules describe \
    ENDPOINT_NAME --region=REGION

Ersetzen Sie dabei Folgendes:

  • ENDPOINT_NAME: der Name des Endpunkts.
  • REGION: die Region für den Endpunkt.

API

GET https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/forwardingRules/ENDPOINT_NAME

Ersetzen Sie dabei Folgendes:

  • PROJECT_ID: das Projekt, das den Endpunkt enthält.
  • REGION: die Region für den Endpunkt.
  • ENDPOINT_NAME: der Name des Endpunkts.

Endpunkt mit Label versehen

Sie können Labels für Endpunkte verwalten. Eine ausführliche Anleitung finden Sie unter Ressourcen mit Labels versehen.

Endpunkt löschen

Sie können Endpunkte löschen.

Die folgenden Service Directory-Konfigurationen werden jedoch nicht gelöscht, wenn Sie den Endpunkt löschen:

  • Service Directory-Namespace
  • Service Directory-DNS-Zone

Der Service Directory-Namespace und die Service Directory-DNS-Zone können von anderen Diensten verwendet werden. Prüfen Sie, ob der Namespace leer ist, bevor Sie den Service Directory-Namespace löschen oder die Service Directory-DNS-Zone löschen.

Console

  1. Rufen Sie in der Trusted Cloud Console die Seite Private Service Connect auf.

    Zu Private Service Connect

  2. Klicken Sie auf den Tab Verbundene Endpunkte.

  3. Wählen Sie den Endpunkt aus, den Sie löschen möchten, und klicken Sie dann auf Löschen.

gcloud

gcloud compute forwarding-rules delete ENDPOINT_NAME \
    --region=REGION

Ersetzen Sie dabei Folgendes:

  • ENDPOINT_NAME: der Name des Endpunkts.
  • REGION: die Region für den Endpunkt.

API

DELETE https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/regions/REGION/forwardingRules/ENDPOINT_NAME

Ersetzen Sie dabei Folgendes:

  • PROJECT_ID: das Projekt, das den Endpunkt enthält.
  • REGION: die Region für den Endpunkt.
  • ENDPOINT_NAME: der Name des Endpunkts.

Zugriff auf Endpunkte über Hybridnetzwerke

Clients in Netzwerken, die über VLAN-Anhänge für Cloud Interconnect oder Cloud VPN-Tunnel mit Trusted Cloud verbunden sind, können Private Service Connect-Endpunkte erreichen.

  • Der VLAN-Anhang oder der Cloud VPN-Tunnel müssen im selben VPC-Netzwerk (oder freigegebenen VPC-Netzwerk) wie der Endpunkt enden. Clients in Peering-VPC-Netzwerken können keine Endpunkte erreichen.

  • Client-Traffic von VLAN-Anhängen oder Cloud VPN-Tunneln kann Endpunkte in einer anderen Region erreichen, wenn der globale Zugriff konfiguriert ist.

  • Sowohl Dataplane v1 als auch Dataplane v2 werden für die VLAN-Anhänge unterstützt. Weitere Informationen zu Dataplane-Versionen finden Sie unter Dataplane V2.

Wenn Sie über den DNS-Namen auf den Endpunkt zugreifen möchten, müssen Sie Systeme im anderen Netzwerk so konfigurieren, dass sie Abfragen an Ihre privaten DNS-Zonen senden können.

Wenn Sie die privaten DNS-Zonen mit Cloud DNS implementiert haben, führen Sie die folgenden Schritte aus:

  • Erstellen Sie eine Serverrichtlinie für eingehenden Traffic in dem VPC-Netzwerk, zu dem Ihr anderes Netzwerk eine Verbindung herstellt.

  • Identifizieren Sie die Weiterleitungs-Einstiegspunkte für eingehenden Traffic in der Region, in der sich Ihr VLAN-Anhang oder Cloud VPN-Tunnel befindet, in dem VPC-Netzwerk, mit dem sich Ihr anderes Netzwerk verbindet.

  • Konfigurieren Sie Systeme und DNS-Nameserver im anderen Netzwerk für die Weiterleitung von DNS-Namen für den Endpunkt an einen Weiterleitungs-Einstiegspunkt für eingehenden Traffic in derselben Region wie der VLAN-Anhang oder der Cloud VPN-Tunnel, der eine Verbindung zum VPC-Netzwerk herstellt.

Service Directory-DNS-Zonen ansehen

Wenn die Voraussetzungen für die automatische DNS-Konfiguration erfüllt sind, wird eine DNS-Zone mit einem Namen im Format NAMESPACE--REGION erstellt.

Console

  1. Rufen Sie in der Trusted Cloud Console die Seite Cloud DNS-Zonen auf.

    Cloud DNS-Zonen aufrufen

  2. Suchen Sie nach einer privaten Zone mit dem Namen NAMESPACE--REGION.

gcloud

  • Führen Sie den folgenden Befehl aus, um alle privaten DNS-Zonen aufzulisten:

    gcloud dns managed-zones list \
        --filter="visibility=private"
    
  • Führen Sie den folgenden Befehl aus, um Details zu einer Zone mit dem Namen NAMESPACE--REGION abzurufen.

    gcloud dns managed-zones describe NAMESPACE--REGION
    

Wenn die Zone nicht vorhanden ist, rufen Sie die Details für den Endpunkt auf und prüfen Sie, ob die Endpunktkonfiguration einen Wert für den Namespace enthält.

Andere Möglichkeiten zur Konfiguration von DNS

Wenn die Voraussetzungen für die automatische DNS-Konfiguration nicht erfüllt sind, können Sie DNS-Einträge auf andere Weise erstellen:

Service Directory-DNS-Zone konfigurieren

Wenn ein Endpunkt bei Service Directory registriert ist, aber der veröffentlichte Dienst, zu dem eine Verbindung hergestellt wird, keinen Domainnamen konfiguriert hat, werden keine DNS-Änderungen vorgenommen.

Wenn Sie die automatische DNS-Konfiguration replizieren möchten, können Sie manuell eine Service Directory-DNS-Zone konfigurieren, die vom Service Directory-Namespace unterstützt wird. Nachdem die Zone erstellt wurde, werden DNS-Einträge für den Endpunkt automatisch erstellt.

Erstellen Sie eine Service Directory-DNS-Zone mit der folgenden Konfiguration:

  • Zonenname: Geben Sie NAMESPACE--REGION an, wobei NAMESPACE der Namespace ist, in dem der Endpunkt registriert ist, und REGION die Region ist, in der der Endpunkt erstellt wird.

  • DNS-Name: Die DNS-Domain, die der Dienstersteller für seine veröffentlichten Dienste verwendet. Diese Informationen erhalten Sie vom Dienstersteller.

    Der DNS-Name hat möglicherweise das Format REGION.p.DOMAIN. Wenn die öffentliche Domain des Diensterstellers beispielsweise example.com ist und sein veröffentlichter Dienst in us-west1 liegt, dann empfehlen wir, dass er seinen Dienst unter dem Domainnamen us-west1.p.example.com zur Verfügung stellt. Fügen Sie einen nachgestellten Punkt ein, z. B. us-west1.p.example.com..

  • Service Directory-Namespace: Der Namespace, den Sie für diesen Endpunkt konfiguriert haben.

Rufen Sie die Details zum Endpunkt auf, um den Service Directory-Namespace und die Service Directory-Region zu finden.

Wenn Sie bei dieser Konfiguration eine Service Directory-DNS-Zone mit dem DNS-Namen us-west1.p.example.com konfiguriert und einen Endpunkt namens analytics erstellt haben, wird ein DNS-Eintrag für analytics.us-west1.p.example.com automatisch erstellt.

Endpunkt bei Service Directory registrieren

Neue Endpunkte werden automatisch bei Service Directory registriert. Wenn jedoch ein Endpunkt erstellt wurde, bevor die automatische Registrierung mit Service Directory aktiviert wurde, fehlt diese Konfiguration möglicherweise.

Sie können den Endpunkt löschen und einen neuen erstellen, der automatisch bei Service Directory registriert wird.

Sie können auch diese Schritte ausführen, um einen vorhandenen Endpunkt bei einem Service Directory-Namespace zu registrieren.

  1. Erstellen Sie einen Service Directory-Namespace für den Endpunkt NAMESPACE.

  2. Erstellen Sie einen Service Directory-Dienst für den Endpunkt SERVICE_NAME.

    Verwenden Sie für den Dienst denselben Namen wie für die Weiterleitungsregel, die für den Endpunkt ENDPOINT_NAME verwendet wird.

  3. Erstellen Sie einen Service Directory-Endpunkt mit dem Namen default und verwenden Sie die IP-Adresse und den Port (443) des Endpunkts.

Nachdem Sie den Endpunkt bei Service Directory registriert haben, folgen Sie der Anleitung zum Konfigurieren einer Service Directory-DNS-Zone.

DNS manuell konfigurieren

Wenn Sie die automatische DNS-Konfiguration verhindert haben oder sie in Ihrer Konfiguration nicht aktiviert ist, können Sie mithilfe von Cloud DNS DNS-Einträge manuell erstellen.

Weitere Informationen finden Sie auf den folgenden Seiten:

  • Zugriffssteuerung: Die Rolle "DNS-Administrator" (roles/dns.admin) bietet die Berechtigungen zum Erstellen von DNS-Zonen und -Einträgen.

  • Private Zone erstellen.

    • Wenn Sie eine private Zone konfigurieren, geben Sie einen DNS-Namen an. Verwenden Sie die DNS-Domain, die der Dienstersteller für seine veröffentlichten Dienste verwendet. Diese Informationen erhalten Sie vom Dienstersteller.

      Er hat möglicherweise dieses Format: REGION.p.DOMAIN. Wenn die öffentliche Domain des Diensterstellers beispielsweise example.com ist und sein veröffentlichter Dienst in us-west1 liegt, dann empfehlen wir, dass er seinen Dienst unter dem Domainnamen us-west1.p.example.com zur Verfügung stellt.

  • Eintrag hinzufügen.

Bekannte Probleme

Fehlerhafte Backends empfangen Traffic mit globalem Zugriff

Aktivieren Sie den globalen Zugriff nur, wenn Sie wissen, dass der Load-Balancer des Dienstanbieters für den globalen Zugriff konfiguriert ist. Wenn Sie einen globalen Zugriffsendpunkt für einen veröffentlichten Dienst erstellen, der keinen globalen Zugriff verwendet, wird der Traffic möglicherweise an fehlerhafte Backends gesendet und verworfen.

Fehlerbehebung

Erstellen einer privaten DNS-Zone schlägt fehl

Wenn Sie einen Endpunkt erstellen, wird eine Service Directory-DNS-Zone erstellt. Das Erstellen einer Zone kann aus folgenden Gründen fehlschlagen:

  • Sie haben die Cloud DNS API in Ihrem Projekt nicht aktiviert.

  • Sie haben nicht die erforderlichen Berechtigungen, um eine Service Directory-DNS-Zone zu erstellen.

  • Eine DNS-Zone mit demselben Zonennamen ist in diesem VPC-Netzwerk vorhanden.

  • In diesem VPC-Netzwerk ist bereits eine DNS-Zone für denselben Domainnamen vorhanden.

So erstellen Sie die Service Directory-DNS-Zone manuell:

  1. Prüfen Sie, ob die Cloud DNS API in Ihrem Projekt aktiviert ist.

  2. Prüfen Sie, ob Sie die erforderlichen Berechtigungen zum Erstellen der Service Directory-DNS-Zone haben:

    • dns.managedZones.create
    • dns.networks.bindPrivateDNSZone
    • servicedirectory.namespaces.associatePrivateZone
  3. Wenn eine in Konflikt stehende Zone vorhanden ist, aber nicht mehr benötigt wird, löschen Sie die DNS-Zone.

  4. Erstellen Sie eine Service Directory-DNS-Zone auf der Grundlage des Service Directory-Namespace, der mit Ihrem Endpunkt verknüpft ist.

Fehler beim Erstellen des Endpunkts, wenn der globale Zugriff konfiguriert ist

Nicht alle veröffentlichten Private Service Connect-Dienste unterstützen Endpunkte mit globalem Zugriff. Wenn Sie einen Endpunkt mit globalem Zugriff erstellen und der veröffentlichte Dienst ihn nicht unterstützt, wird diese Fehlermeldung angezeigt:

Private Service Connect global access is not supported for the given forwarding rule, since its producer service does not support consumer global access.

Erstellen Sie den Endpunkt ohne die Option für globalen Zugriff.

Die Endpunkterstellung ist erfolgreich, aber die Verbindung wird nicht hergestellt

Wenn Sie einen Endpunkt für veröffentlichte Dienste erfolgreich erstellt haben, aber die Verbindung nicht hergestellt wird, prüfen Sie den Verbindungsstatus des Endpunkts. Der Verbindungsstatus kann möglicherweise auf Schritte hinweisen, mit denen Sie das Problem beheben können.

Weitergegebene Verbindungsfehler

Informationen zur Fehlerbehebung bei weitergegebenen Verbindungen finden Sie unter Fehlerbehebung bei der Weitergabe von Private Service Connect-Verbindungen.

Der Endpunkt hat Leistungsprobleme oder Verbindungszeitüberschreitungen

Wenn bei Ihrem Endpunkt Leistungsprobleme oder periodische Verbindungszeitüberschreitungen auftreten, kann dies an verworfenen Paketen liegen. Sie können verlorene Pakete untersuchen, indem Sie die in den folgenden Abschnitten beschriebenen Messwerte prüfen.

Verworfene Pakete an veröffentlichten Dienst

Mit der Messwertgruppe private_service_connect/consumer/dropped_sent_packets_count werden Pakete von einem Private Service Connect-Nutzer wie einem Endpunkt zu einem veröffentlichten Dienst erfasst, die verworfen werden, weil der Endpunkt sein maximales Verbindungslimit für den Dienst überschritten hat.

Wenn für einen Endpunkt Werte für diesen Messwert gemeldet werden, sollten Sie die folgenden Lösungen in Betracht ziehen:

  • Erstellen Sie zusätzliche Endpunkte, die eine Verbindung zum veröffentlichten Dienst herstellen.
  • Reduzieren Sie die Anzahl der Verbindungen über diesen Endpunkt.
  • Bitten Sie den Dienstersteller, die Kapazität des veröffentlichten Dienstes zu erhöhen, z. B. durch Hinzufügen weiterer VM-Instanzen oder Netzwerkendpunkte.

Verlorene Pakete von veröffentlichten Diensten

Mit der Messwert private_service_connect/consumer/dropped_received_packets_count werden Pakete erfasst, die von einem veröffentlichten Dienst an einen Private Service Connect-Nutzer wie einen Endpunkt gesendet und verworfen werden, weil Private Service Connect keine passende Verbindung für Antwortpakete finden kann.

Private Service Connect lässt nur Verbindungen zu, die vom VPC-Netzwerk des Nutzers initiiert werden. Wenn ein Nutzer eine Verbindung herstellt, wird diese Verbindung verfolgt, um Antwortpakete vom veröffentlichten Dienst einer vorhandenen Verbindung zuzuordnen. Wenn Private Service Connect keine Übereinstimmung für ein Antwortpaket findet, wird das Paket verworfen.

Private Service Connect findet möglicherweise keine Übereinstimmung für ein Antwortpaket, wenn ein veröffentlichter Dienst Antwortpakete sendet, nachdem für eine Verbindung ein Zeitlimit überschritten wurde. Wenn Sie Werte für diesen Messwert sehen, wenden Sie sich an den Dienstersteller. Möglicherweise können sie ihren Dienst so konfigurieren, dass dieses Problem nicht auftritt.