Verbindung zu VPC-Netzwerk herstellen

Auf dieser Seite wird beschrieben, wie Sie den serverlosen VPC-Zugriff verwenden, um von einem Cloud Run-Dienst eine direkte Verbindung zu Ihrem VPC-Netzwerk herzustellen und so den Zugriff auf Compute Engine-VM-Instanzen, Memorystore-Instanzen und alle anderen Ressourcen mit einer internen IP-Adresse zu ermöglichen.

Für die Nutzung des serverlosen VPC-Zugriffs müssen Sie erst einen Connector für serverlosen VPC-Zugriff im Projekt Ihres Dienstes erstellen, um die Kommunikation mit Ihrem VPC-Netzwerk zu verarbeiten. Nachdem Sie einen Connector erstellt haben, legen Sie die Konfiguration für den Cloud Run-Dienst zur Verwendung des Connectors fest.

Connector für serverlosen VPC-Zugriff erstellen

Eine ausführliche Anleitung zum Erstellen von Connectors für serverlosen VPC-Zugriff finden Sie unter Connector erstellen.

Dienst für die Verwendung eines Connectors konfigurieren

Sie können einen Dienst zur Verwendung eines Connectors über die Cloud Console, die Befehlszeile oder die YAML-Datei konfigurieren, wenn Sie einen neuen Dienst erstellen oder eine neue Überarbeitung bereitstellen:

Console

  1. Öffnen Sie Cloud Run.

  2. Klicken Sie auf Dienst erstellen, wenn Sie einen neuen Dienst für die Bereitstellung konfigurieren. Wenn Sie einen vorhandenen Dienst konfigurieren möchten, klicken Sie auf den Dienst und dann auf Neue Überarbeitung bearbeiten und bereitstellen.

  3. Wenn Sie einen neuen Dienst konfigurieren, füllen Sie die Seite mit den anfänglichen Diensteinstellungen wie gewünscht aus und klicken Sie dann auf Weiter > Erweiterte Einstellungen. Daraufhin wird die Seite zur Dienstkonfiguration aufgerufen.

  4. Klicken Sie auf den Tab Verbindungen.

    Bild

  5. Wählen Sie im Feld VPC-Connector den zu verwendenden Connector oder Keiner aus, um die Verbindung Ihres Dienstes mit einem VPC-Netzwerk zu trennen.

  6. Klicken Sie auf Erstellen oder Bereitstellen.

Befehlszeile

Verwenden Sie das Flag --vpc-connector, um einen Connector während der Bereitstellung anzugeben:

gcloud run deploy SERVICE --image IMAGE_URL --vpc-connector CONNECTOR_NAME
  • Ersetzen Sie SERVICE durch den Namen Ihres Dienstes.
  • Ersetzen Sie IMAGE_URL durch einen Verweis auf das Container-Image, z. B. gcr.io/myproject/my-image:latest.
  • Ersetzen Sie CONNECTOR_NAME durch den Namen des Connectors.

Verwenden Sie den Befehl gcloud run services update, gegebenenfalls mit einem der folgenden Flags, um einen Connector für einen vorhandenen Dienst hinzuzufügen, zu aktualisieren oder zu entfernen:

So fügen Sie beispielsweise einen Connector hinzu oder aktualisieren ihn:

gcloud run services update SERVICE --vpc-connector CONNECTOR_NAME
  • Ersetzen Sie SERVICE durch den Namen des Dienstes.
  • Ersetzen Sie CONNECTOR_NAME durch den Namen des Connectors.

YAML

Sie können die vorhandene Dienstkonfiguration mit dem Befehl gcloud run services describe --format export herunterladen und aufrufen, was bereinigte Ergebnisse im YAML-Format liefert. Anschließend können Sie die unten beschriebenen Felder ändern und die geänderte YAML-Datei mit dem Befehl gcloud beta run services replace hochladen. Achten Sie darauf, dass Sie die Felder nur wie dokumentiert ändern.

  1. So rufen Sie die Konfiguration auf und laden sie herunter:

    gcloud run services describe SERVICE --format export > service.yaml
  2. Fügen Sie das Attribut run.googleapis.com/vpc-access-connector unter dem Attribut annotations unter dem übergeordneten Attribut spec hinzu oder aktualisieren Sie es:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        metadata:
          annotations:
            run.googleapis.com/vpc-access-connector: CONNECTOR_NAME
    • Ersetzen Sie SERVICE durch den Namen Ihres Cloud Run-Dienstes.
    • Ersetzen Sie CONNECTOR_NAME durch den Namen des Connectors.
  3. Ersetzen Sie den Dienst mit dem folgenden Befehl durch die neue Konfiguration:

    gcloud beta run services replace service.yaml

Verbindung zu einem freigegebenen VPC-Netzwerk herstellen

Wenn Ihre Organisation eine freigegebene VPC verwendet, kann ein Cloud Run-Dienst in einem Dienstprojekt mit freigegebener VPC eine Verbindung zu einem freigegebenen VPC-Netzwerk herstellen, wenn das Hostprojekt mit freigegebener VPC entsprechend konfiguriert ist.

  1. Konfigurieren Sie das Hostprojekt für eine freigegebene VPC gemäß der Anleitung unter Hostprojekt beim Verwenden der freigegebenen VPC konfigurieren.

  2. Erstellen Sie den Connector für freigegebene VPCs gemäß der Anleitung unter Connector erstellen.

  3. Wenn Sie einen Cloud Run-Dienst in Ihrem Dienstprojekt bereitstellen oder aktualisieren, geben Sie den Connector in der Console UI mit dem Drop-down-Menü VPC-Connector auf dem Tab Verbindungen an. Alternativ legen Sie den Connector in der gcloud-Befehlszeile mit dem Flag --vpc-connector fest.

Ausgehenden Traffic von einem Dienst steuern

Standardmäßig werden nur Anfragen an interne IP-Adressen und interne DNS-Namen über einen Connector für serverlosen VPC-Zugriff weitergeleitet. Möglicherweise möchten Sie jedoch alle ausgehenden Anfragen von Ihrem Dienst an Ihr VPC-Netzwerk weiterleiten, beispielsweise um mit den Firewallregeln Ihres Netzwerks ausgehenden Traffic an schädliche oder unerwünschte Hosts zu verhindern.

Zur Steuerung der Weiterleitung ausgehender Anfragen von Ihrem Dienst können Sie für den ausgehenden VPC-Traffic eine der folgenden Optionen festlegen:

  • Nur Anfragen an private IPs über den VPC-Connector weiterleiten: Standardeinstellung. Nur Anfragen an die IP-Adressbereiche RFC 1918 und RFC 6598 oder interne DNS-Namen werden an Ihr VPC-Netzwerk weitergeleitet. Alle anderen Anfragen werden direkt an das Internet weitergeleitet.
  • Gesamten Traffic über den VPC-Connector weiterleiten: Alle ausgehenden Anfragen des Dienstes werden an Ihr VPC-Netzwerk weitergeleitet. Anfragen entsprechen den Firewallregeln sowie den DNS- und Weiterleitungsregeln des Netzwerks.

Sie können beim Erstellen eines neuen Dienstes oder beim Bereitstellen einer neuen Überarbeitung über die Cloud Console, die Befehlszeile oder die YAML-Datei eine Einstellung für ausgehenden VPC-Traffic angeben:

Console

  1. Öffnen Sie Cloud Run.

  2. Klicken Sie auf Dienst erstellen, wenn Sie einen neuen Dienst für die Bereitstellung konfigurieren. Wenn Sie einen vorhandenen Dienst konfigurieren möchten, klicken Sie auf den Dienst und dann auf Neue Überarbeitung bearbeiten und bereitstellen.

  3. Wenn Sie einen neuen Dienst konfigurieren, füllen Sie die Seite mit den anfänglichen Diensteinstellungen wie gewünscht aus und klicken Sie dann auf Weiter > Erweiterte Einstellungen. Daraufhin wird die Seite zur Dienstkonfiguration aufgerufen.

  4. Klicken Sie auf den Tab Verbindungen.

    Bild

  5. Nachdem Sie einen VPC-Connector ausgewählt haben, wählen Sie Nur Anfragen an private IPs über den VPC-Connector weiterleiten oder Gesamten Traffic über den VPC-Connector weiterleiten aus.

  6. Klicken Sie auf Erstellen oder Bereitstellen.

Befehlszeile

Verwenden Sie das Flag --vpc-egress, um eine Einstellung für ausgehenden Traffic festzulegen. Sie können bei der Bereitstellung eine Einstellung für ausgehenden Traffic festlegen:

gcloud run deploy SERVICE \
--image IMAGE_URL \
--vpc-connector CONNECTOR_NAME \
--vpc-egress EGRESS_SETTING
  • Ersetzen Sie SERVICE durch den Namen Ihres Dienstes.
  • Ersetzen Sie IMAGE_URL durch einen Verweis auf das Container-Image, z. B. gcr.io/myproject/my-image:latest.
  • Ersetzen Sie CONNECTOR_NAME durch den Namen des Connectors.
  • Ersetzen Sie EGRESS_SETTING durch einen Wert für die Einstellung für ausgehenden Traffic:
    • all-traffic: Sendet den gesamten ausgehenden Traffic über den Connector.
    • private-ranges-only: Sendet Traffic an interne Adressen nur über den VPC-Connector.

Sie können auch einen vorhandenen Dienst aktualisieren und die Einstellung für ausgehenden Traffic ändern:

gcloud run services update SERVICE --vpc-egress EGRESS_SETTING

YAML

Sie können die vorhandene Dienstkonfiguration mit dem Befehl gcloud run services describe --format export herunterladen und aufrufen, was bereinigte Ergebnisse im YAML-Format liefert. Anschließend können Sie die unten beschriebenen Felder ändern und die geänderte YAML-Datei mit dem Befehl gcloud beta run services replace hochladen. Achten Sie darauf, dass Sie die Felder nur wie dokumentiert ändern.

  1. So rufen Sie die Konfiguration auf und laden sie herunter:

    gcloud run services describe SERVICE --format export > service.yaml
  2. Fügen Sie das Attribut run.googleapis.com/vpc-access-egress unter dem Attribut annotations unter dem übergeordneten Attribut spec hinzu oder aktualisieren Sie es:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        metadata:
          annotations:
            run.googleapis.com/vpc-access-connector: CONNECTOR_NAME
            run.googleapis.com/vpc-access-egress: EGRESS_SETTING
    • Ersetzen Sie SERVICE durch den Namen Ihres Cloud Run-Dienstes.
    • Ersetzen Sie CONNECTOR_NAME durch den Namen des Connectors. Das Attribut run.googleapis.com/vpc-access-connector ist erforderlich, wenn Sie eine Einstellung für ausgehenden Traffic festlegen.
    • Ersetzen Sie EGRESS_SETTING durch einen der folgenden Werte:
      • all-traffic: Sendet den gesamten ausgehenden Traffic über den Connector.
      • private-ranges-only: Sendet Traffic an interne Adressen nur über den VPC-Connector.
  3. Ersetzen Sie den Dienst mit dem folgenden Befehl durch die neue Konfiguration:

    gcloud beta run services replace service.yaml

Mehr zur Verwendung der Play Console erfahren

VPC-Verbindungseinstellungen ansehen

So rufen Sie die aktuellen VPC-Verbindungseinstellungen für Ihren Dienst auf:

Console

  1. Öffnen Sie Cloud Run.

  2. Klicken Sie auf den gewünschten Dienst, um die Seite Dienstdetails zu öffnen.

  3. Klicken Sie auf den Tab Überarbeitungen.

  4. Im Detailbereich auf der rechten Seite finden Sie die VPC-Verbindungseinstellungen auf dem Tab Verbindungen.

Befehlszeile

  1. Verwenden Sie den folgenden Befehl:

    gcloud run services describe SERVICE
  2. Suchen Sie in der zurückgegebenen Konfiguration nach den VPC-Verbindungseinstellungen.