Verbindung zu einem VPC-Netzwerk herstellen
Auf dieser Seite wird gezeigt, wie Sie einen Cloud Run-Dienst oder Cloud Run-Job mit Ihrem VPC-Netzwerk verbinden und ausgehenden Traffic von Cloud Run an Compute Engine-VM-Instanzen, Memorystore-Instanzen und alle anderen Ressourcen mit einer internen IP-Adresse zulassen.
Sie können den Dienst oder Job aktivieren, um Traffic an ein VPC-Netzwerk zu senden. Konfigurieren Sie dazu einen Connector für serverlosen VPC-Zugriff oder verwenden Sie den ausgehenden Direct VPC-Traffic (Vorschau), wobei kein Connector erforderlich ist.
Hinweise
Wenn Sie in Ihrem Projekt noch kein VPC-Netzwerk haben, erstellen Sie eins.
Wenn Sie eine freigegebene VPC verwenden, lesen Sie die Dokumentation, die speziell die Konfiguration des serverlosen VPC-Zugriffs für Ihr Produkt behandelt.
- Cloud Run: Verbindung zu einem freigegebenen VPC-Netzwerk herstellen
- Cloud Run-Funktionen: Verbindung zu einem freigegebene VPC herstellen
- App Engine: Verbindung zu einem freigegebenen VPC-Netzwerk herstellen
Wenn Sie eine Organisationsrichtlinieneinschränkung zur Verwendung von Cloud Deployment Manager haben, können Sie keine Connectors für serverlosen VPC-Zugriff erstellen oder löschen. Zum Erstellen oder Löschen eines Connectors ist die Funktion „Deployment Manager“ erforderlich.
Wenn für Ihr Projekt eine Trusted Image-Richtlinie eingerichtet ist, muss das Projekt
serverless-vpc-access-images
in der Organisationsrichtlinieconstraints/compute.trustedimageProjects
zugelassen sein.Anforderungen an Connector-Subnetze
Jeder Connector benötigt ein eigenes
PRIVATE
-Subnetz mit einem primären IPv4-Adressbereich von/28
. Dieses Subnetz kann nicht von anderen Ressourcen wie VMs, Private Service Connect oder Load Balancern verwendet werden.Wenn Sie einen Connector in einem Dienstprojekt erstellen möchten, das ein freigegebenes VPC-Netzwerk in einem Hostprojekt verwendet, muss ein Netzwerkadministrator für das freigegebene VPC-Netzwerk das Subnetz des Connectors manuell erstellen, bevor Sie den Connector erstellen können.
Um festzustellen, ob ein vorhandenes, manuell erstelltes Subnetz von einem Connector verwendet werden kann, beschreiben Sie das Subnetz:
gcloud compute networks subnets describe SUBNET --region=REGION
Ersetzen Sie SUBNET durch den Namen des Subnetzes und REGION durch die Region, die das Subnetz enthält.
Prüfen Sie in der Ausgabe Folgendes:
- Das Subnetz ist ein reguläres Subnetz. In der Google Cloud CLI entspricht das dem Wert
PRIVATE
für purpose. - Der primäre IPv4-Adressbereich des Subnetzes,
ipCidrRange
, ist ein/28
.
- Das Subnetz ist ein reguläres Subnetz. In der Google Cloud CLI entspricht das dem Wert
Wenn Sie einen Connector für den Serverloser VPC-Zugriff in demselben Projekt erstellen möchten, das das vom Connector verwendete VPC-Netzwerk enthält, können Sie das Subnetz des Connectors entweder manuell erstellen, bevor Sie den Connector erstellen, oder Google Cloud kann das Subnetz für den Connector automatisch erstellen.
Beachten Sie Folgendes, wenn Google Cloud ein Subnetz für einen Connector erstellt:
Automatisch erstellte Subnetze für Verbindungen sind nicht sichtbar, wenn Sie Subnetze auflisten, unabhängig davon, ob Sie die Google Cloud Console, die Google Cloud CLI oder die Compute Engine API verwenden.
Automatisch erstellte Subnetze für Verbindungen können nicht beschrieben werden.
Automatisch erstellte Subnetze sind in der Liste der Subnetze enthalten, die angezeigt wird, wenn Sie ein VPC-Netzwerk beschreiben.
Weitere Informationen zu Subnetzen, einschließlich der Auflistung vorhandener Subnetze, um zu ermitteln, welche IP-Adressbereiche bereits verwendet werden, finden Sie unter Mit Subnetzen arbeiten.
Beschränkungen
IPv6-Traffic wird nicht unterstützt.
Connector erstellen
Wenn Sie Anfragen an Ihr VPC-Netzwerk senden und die entsprechenden Antworten ohne das öffentliche Internet erhalten möchten, können Sie einen Connector für serverlosen VPC-Zugriff verwenden.
Wenn sich Ihr Connector im selben Projekt wie sein VPC-Netzwerk befindet, können Sie entweder einen Connector mit einem vorhandenen Subnetz oder einen Connector und ein neues Subnetz erstellen.
Wenn sich der Connector in einem Dienstprojekt befindet und eine freigegebenes VPC-Netzwerk verwendet, befinden sich der Connector und das zugehörige VPC-Netzwerk in verschiedenen Projekten. Wenn sich ein Connector und sein VPC-Netzwerk in verschiedenen Projekten befinden, muss ein Administrator des freigegebenen VPC-Netzwerks das Subnetz des Connectors im freigegebenen VPC-Netzwerk erstellen, bevor Sie den Connector erstellen können und Sie müssen den Connector mit einem vorhandenen Subnetz erstellen.
Weitere Informationen zu den Subnetzanforderungen finden Sie unter Anforderungen an Connector-Subnetze.
Weitere Informationen zum Connector-Durchsatz, einschließlich Maschinentyp und Skalierung, finden Sie unter Durchsatz und Skalierung.
Sie können einen Connector mit der Google Cloud Console, der Google Cloud CLI oder Terraform erstellen:
Console
Rufen Sie die Übersichtsseite für serverlosen VPC-Zugriff auf:
Klicken Sie auf Connector erstellen.
Geben Sie im Feld Name einen Namen für den Connector ein, der den Namenskonventionen von Compute Engine entspricht, mit den zusätzlichen Anforderungen, dass der Name weniger als 21 Zeichen lang sein muss und Bindestriche (-) als zwei Zeichen gezählt werden.
Wählen Sie im Feld Region eine Region für den Connector aus. Sie muss mit der Region des serverlosen Dienstes übereinstimmen.
Wenn sich Ihr Dienst oder Job in der Region
us-central
odereurope-west
befindet, verwenden Sieus-central1
odereurope-west1
.Wählen Sie im Feld Netzwerk das VPC-Netzwerk aus, an das der Connector angehängt werden soll.
Wählen Sie im Feld Subnetz eine der folgenden Optionen aus:
Connector mit einem vorhandenen Subnetz erstellen: Wählen Sie das vorhandene Subnetz im Feld Subnetz aus.
Connector und neues Subnetz erstellen: Wählen Sie Benutzerdefinierter IP-Bereich im Feld Subnetz aus. Geben Sie dann die erste Adresse in ein nicht verwendetes
/28
-CIDR-Feld ein (z. B.10.8.0.0/28
) zur Verwendung als primärer IPv4-Adressbereich eines neuen Subnetzes, das Google Cloud im VPC-Netzwerk des Connectors erstellt. Achten Sie darauf, dass der IP-Bereich nicht mit vorhandenen Routen im VPC-Netzwerk des Connectors in Konflikt steht. Der Name des neuen Subnetzes beginnt mit dem Präfix "aet-".
(Optional) Wenn Sie Skalierungsoptionen für zusätzliche Kontrolle über den Connector festlegen möchten, klicken Sie auf Skalierungseinstellungen anzeigen, um das Skalierungsformular anzuzeigen:
- Legen Sie die minimale und maximale Anzahl von Instanzen für den Connector fest oder verwenden Sie die Standardwerte von 2 (Min.) und 10 (Max.). Der Connector skaliert horizontal auf den angegebenen Maximalwert, wenn die Traffic-Nutzung es erfordert, der Connector skaliert jedoch nicht zurück, wenn der Traffic abnimmt. Sie müssen Werte zwischen
2
und10
verwenden. - Wählen Sie im Menü Instanztyp den Maschinentyp aus, der für den Connector verwendet werden soll, oder verwenden Sie den Standardwert
e2-micro
. Beachten Sie die Seitenleiste zu den Kosten auf der linken Seite, wenn Sie den Instanztyp auswählen, der die Bandbreiten- und Kostenschätzungen anzeigt:
- Legen Sie die minimale und maximale Anzahl von Instanzen für den Connector fest oder verwenden Sie die Standardwerte von 2 (Min.) und 10 (Max.). Der Connector skaliert horizontal auf den angegebenen Maximalwert, wenn die Traffic-Nutzung es erfordert, der Connector skaliert jedoch nicht zurück, wenn der Traffic abnimmt. Sie müssen Werte zwischen
Klicken Sie auf Erstellen.
Neben dem Namen des Connectors wird ein grünes Häkchen angezeigt, sobald er verwendet werden kann.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Aktualisieren Sie die Komponenten von
gcloud
auf die neueste Version:gcloud components update
Die Serverless VPC Access API muss für das Projekt aktiviert sein:
gcloud services enable vpcaccess.googleapis.com
Erstellen Sie den Connector mit einer der folgenden Optionen:
Weitere Informationen und optionale Argumente finden Sie in der
gcloud
-Referenz.Connector mit einem vorhandenen Subnetz erstellen
gcloud compute networks vpc-access connectors create CONNECTOR_NAME \ --region REGION \ --subnet SUBNET_NAME \ --subnet-project HOST_PROJECT_ID \ --min-instances MIN \ --max-instances MAX \ --machine-type MACHINE_TYPE
Ersetzen Sie dabei Folgendes:
CONNECTOR_NAME
ist ein Name für den Connector, der mit den Compute Engine-Namenskonventionen übereinstimmt. Er muss weiter weniger als 21 Zeichen lang sein, wobei Bindestriche (-) als zwei Zeichen zählen.REGION
ist eine Region für Ihren Connector, die der Region des serverlosen Dienstes oder Jobs entspricht. Wenn sich Ihr Dienst oder Job in der Regionus-central
odereurope-west
befindet, verwenden Sieus-central1
odereurope-west1
.SUBNET_NAME
ist der Name des vorhandenen Subnetzes.HOST_PROJECT_ID
ist die Projekt-ID des freigegebenen VPC-Hostprojekts. Wenn sich der Connector und das vorhandene Subnetz im selben Projekt befinden, lassen Sie das Flag--subnet-project
weg.MIN
ist die Mindestanzahl an Instanzen, die für den Connector verwendet werden müssen. Verwenden Sie eine Ganzzahl zwischen2
(Standardeinstellung) und9
.MAX
ist die maximale Anzahl an Instanzen, die für den Connector verwendet werden können. Verwenden Sie eine Ganzzahl zwischen3
und10
(Standardeinstellung). Wenn der Connector bis zur maximalen Anzahl von Instanzen hochskaliert wird, skaliert er nicht wieder herunter.MACHINE_TYPE
muss einer der folgenden sein:f1-micro
,e2-micro
odere2-standard-4
.
Erstellen Sie einen Connector und ein neues Subnetz:
gcloud compute networks vpc-access connectors create CONNECTOR_NAME \ --region REGION \ --network VPC_NETWORK \ --range IP_RANGE --min-instances MIN \ --max-instances MAX \ --machine-type MACHINE_TYPE
Ersetzen Sie dabei Folgendes:
CONNECTOR_NAME
ist ein Name für den Connector, der mit den Compute Engine-Namenskonventionen übereinstimmt. Er muss weiter weniger als 21 Zeichen lang sein, wobei Bindestriche (-) als zwei Zeichen zählen.REGION
ist eine Region für Ihren Connector, die der Region des serverlosen Dienstes oder Jobs entspricht. Wenn sich Ihr Dienst oder Job in der Regionus-central
odereurope-west
befindet, verwenden Sieus-central1
odereurope-west1
.VPC_NETWORK
ist der Name des VPC-Netzwerks, an das der Connector angehängt wird. Der Connector und das VPC-Netzwerk müssen sich im selben Projekt befinden.IP_RANGE
: bietet ein nicht verwendetes/28
CIDR (z. B.10.8.0.0/28
), das als primärer IPv4-Adressbereich eines neues Subnetzes verwendet werden kann, das Google Cloud im VPC Netzwerk des Connectors erstellt. Achten Sie darauf, dass der IP-Bereich nicht mit vorhandenen Routen im VPC-Netzwerk des Connectors in Konflikt steht. Der Name des neuen Subnetzes beginnt mit dem Präfix "aet-".MIN
ist die Mindestanzahl an Instanzen, die für den Connector verwendet werden müssen. Verwenden Sie eine Ganzzahl zwischen2
(Standardeinstellung) und9
.MAX
ist die maximale Anzahl an Instanzen, die für den Connector verwendet werden können. Verwenden Sie eine Ganzzahl zwischen3
und10
(Standardeinstellung). Wenn der Connector bis zur maximalen Anzahl von Instanzen hochskaliert wird, skaliert er nicht wieder herunter.MACHINE_TYPE
muss einer der folgenden sein:f1-micro
,e2-micro
odere2-standard-4
.
Prüfen Sie vor der Verwendung des Connectors, ob sein Status
READY
lautet:gcloud compute networks vpc-access connectors describe CONNECTOR_NAME \ --region REGION
Ersetzen Sie dabei Folgendes:
CONNECTOR_NAME
: Der Name Ihres Connectors; dies ist der Name, den Sie im vorherigen Schritt angegeben haben.REGION
: Region Ihres Connectors; dies ist die Region, die Sie im vorherigen Schritt angegeben haben.
Die Ausgabe sollte die Zeile
state: READY
enthalten.
Terraform
Sie können eine Terraform-Ressource verwenden, um die vpcaccess.googleapis.com
API zu aktivieren.
Sie können Terraform-Module verwenden, um ein VPC-Netzwerk und ein Subnetz zu erstellen. Danach können Sie den Connector erstellen.
Serverlose Umgebung für die Verwendung eines Connectors konfigurieren
Nachdem Sie einen Connector für serverlosen VPC-Zugriff erstellt haben, konfigurieren Sie Ihre serverlose Umgebung für die Verwendung des Connectors. Folgen Sie dazu der Anleitung für Ihre serverlose Umgebung:
- Cloud Run konfigurieren
- Cloud Run-Funktionen konfigurieren
- App Engine konfigurieren
Cloud Run für die Verwendung des Connectors konfigurieren
Wenn Sie einen neuen Dienst erstellen oder eine neue Überarbeitung bereitstellen, können Sie den Dienst für die Verwendung eines Connectors konfigurieren, indem Sie die Google Cloud Console, die Google Cloud CLI, eine YAML-Datei oder eine Terraform-Ressource verwenden.
Console
Rufen Sie in der Google Cloud Console Cloud Run auf.
Klicken Sie auf Container bereitstellen und wählen Sie Dienst aus, um einen neuen Dienst zu konfigurieren. Wenn Sie einen vorhandenen Dienst konfigurieren möchten, klicken Sie auf den Dienst und dann auf Neue Überarbeitung bearbeiten und bereitstellen.
Wenn Sie einen neuen Dienst konfigurieren, füllen Sie die Seite mit den anfänglichen Diensteinstellungen aus und klicken Sie dann auf Container, Volumes, Netzwerk, Sicherheit, um die Seite zur Dienstkonfiguration zu maximieren.
Klicken Sie auf den Tab Verbindungen.
- 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.
Klicken Sie auf Erstellen oder Bereitstellen.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
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
. - Ersetzen Sie
CONNECTOR_NAME
durch den Namen des Connectors. Wenn sich Ihr Connector im Hostprojekt einer freigegebenen VPC befindet, muss dies der vollständig angegebene Name sein. Beispiel: dabei ist HOST_PROJECT_ID die ID des Hostprojekts, CONNECTOR_REGION die Region des Connectors und CONNECTOR_NAME der Name, den Sie dem Connector gegeben haben.projects/HOST_PROJECT_ID/locations/CONNECTOR_REGION/connectors/CONNECTOR_NAME
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.
- Ersetzen Sie
YAML
Wenn Sie einen neuen Dienst erstellen, überspringen Sie diesen Schritt. Wenn Sie einen vorhandenen Dienst aktualisieren, laden Sie die zugehörige YAML-Konfiguration herunter:
gcloud run services describe SERVICE --format export > service.yaml
Fügen Sie das Attribut
run.googleapis.com/vpc-access-connector
unter dem Attributannotations
unter dem übergeordneten Attributspec
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. Wenn sich Ihr Connector im Hostprojekt einer freigegebenen VPC befindet, muss dies der vollständig angegebene Name sein. Beispiel: dabei ist HOST_PROJECT_ID die ID des Hostprojekts, CONNECTOR_REGION die Region des Connectors und CONNECTOR_NAME der Name, den Sie dem Connector gegeben haben.projects/HOST_PROJECT_ID/locations/CONNECTOR_REGION/connectors/CONNECTOR_NAME
- Ersetzen Sie
Ersetzen Sie den Dienst mit dem folgenden Befehl durch die neue Konfiguration:
gcloud beta run services replace service.yaml
Terraform
Sie können eine Terraform-Ressource verwenden, um einen Dienst zu erstellen und für die Verwendung Ihres Connectors zu konfigurieren.
Cloud Run-Funktionen für die Verwendung eines Connectors konfigurieren
Sie können eine Funktion so konfigurieren, dass ein Connector aus der Google Cloud Console oder der Google Cloud CLI verwendet wird:
Console
Gehen Sie zur Übersichtsseite "Cloud Run Functions-Funktionen" in der Google Cloud Console:
Klicken Sie auf Funktion erstellen. Klicken Sie alternativ auf eine vorhandene Funktion, um deren Detailseite aufzurufen, und klicken dann auf Bearbeiten.
Maximieren Sie die erweiterten Einstellungen, indem Sie auf EINFÜHRUNG, BUILD UND VERBINDUNGEN klicken.
Geben Sie auf dem Tab Verbindungen unter "Einstellungen für ausgehenden Traffic" den Namen des Connectors im Feld VPC-Connector ein.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Verwenden Sie den Befehl
gcloud functions deploy
, um die Funktion bereitzustellen, und geben Sie dabei das Flag--vpc-connector
an:gcloud functions deploy FUNCTION_NAME \ --vpc-connector CONNECTOR_NAME \ FLAGS...
Dabei gilt:
FUNCTION_NAME
ist der Name Ihrer Funktion.CONNECTOR_NAME
ist der Name Ihres Connectors. Wenn sich Ihr Connector im Hostprojekt einer freigegebenen VPC befindet, muss dies der vollständig angegebene Name sein. Beispiel: dabei ist HOST_PROJECT_ID die ID des Hostprojekts, CONNECTOR_REGION die Region des Connectors und CONNECTOR_NAME der Name, den Sie dem Connector gegeben haben.projects/HOST_PROJECT_ID/locations/CONNECTOR_REGION/connectors/CONNECTOR_NAME
FLAGS...
verweist auf andere Flags, die Sie bei der Funktionsbereitstellung übergeben.
Weitere Informationen dazu, wie Sie besser steuern können, welche Anfragen über den Connector weitergeleitet werden, finden Sie unter Einstellungen für ausgehenden Traffic.
App Engine für die Verwendung des Connectors konfigurieren
Python 2
Stellen Sie die Verwendung des App Engine-URL-Abrufdienstes ein.
Standardmäßig werden alle Anfragen über den URL-Abrufdienst weitergeleitet. Dadurch schlagen Anfragen an Ihr VPC-Netzwerk fehl. Informationen zum Deaktivieren dieser Standardeinstellung finden Sie unter URL-Abruf für die Verarbeitung aller ausgehenden Anfragen deaktivieren.
Sie können die Bibliothek
urlfetch
bei Bedarf weiterhin direkt für einzelne Anfragen verwenden. Dies wird jedoch nicht empfohlen.Fügen Sie der Datei
app.yaml
das Feld für serverlosen VPC-Zugriff hinzu:vpc_access_connector: name: projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME
Ersetzen Sie Folgendes:
PROJECT_ID
durch Ihre Google Cloud-Projekt-ID. Wenn sich Ihr Connector im Hostprojekt einer freigegebenen VPC befindet, muss dies die ID des Hostprojekts sein.REGION
ist die Region, in der sich der Connector befindet.CONNECTOR_NAME
durch den Namen des Connectors.
Stellen Sie den Dienst bereit:
gcloud app deploy
Nachdem der Dienst bereitgestellt wurde, kann er Anfragen an interne IP-Adressen senden, um auf Ressourcen in Ihrem VPC-Netzwerk zuzugreifen.
Java 8
Stellen Sie die Verwendung des App Engine-URL-Abrufdienstes
URLFetchService
ein.Fügen Sie der Datei
appengine-web.xml
in Ihrem Dienst das Element für serverlosen VPC-Zugriff hinzu:<vpc-access-connector> <name>projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME</name> </vpc-access-connector>
Ersetzen Sie Folgendes:
PROJECT_ID
durch Ihre Google Cloud-Projekt-ID. Wenn sich Ihr Connector im Hostprojekt einer freigegebenen VPC befindet, muss dies die ID des Hostprojekts sein.REGION
ist die Region, in der sich der Connector befindet.CONNECTOR_NAME
durch den Namen des Connectors.
Stellen Sie den Dienst bereit:
gcloud app deploy WEB-INF/appengine-web.xml
Nachdem der Dienst bereitgestellt wurde, kann er Anfragen an interne IP-Adressen senden, um auf Ressourcen in Ihrem VPC-Netzwerk zuzugreifen.
Go 1.11
Stellen Sie die Verwendung des App Engine-URL-Abrufdienstes ein.
Der serverlose VPC-Zugriff unterstützt keinen URL-Abruf. Anfragen mit URL-Abruf ignorieren die Einstellungen für den serverlosen VPC-Zugriff. Führen Sie stattdessen ausgehende Verbindungen mit Sockets aus.
Fügen Sie der Datei
app.yaml
das Feld für serverlosen VPC-Zugriff hinzu:vpc_access_connector: name: projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME
Ersetzen Sie Folgendes:
PROJECT_ID
durch Ihre Google Cloud-Projekt-IDREGION
ist die Region, in der sich der Connector befindet.CONNECTOR_NAME
ist der Name des Connectors.
Stellen Sie den Dienst bereit:
gcloud app deploy
Nachdem der Dienst bereitgestellt wurde, kann er Anfragen an interne IP-Adressen senden, um auf Ressourcen in Ihrem VPC-Netzwerk zuzugreifen.
Alle anderen Laufzeiten
Fügen Sie der Datei
app.yaml
das Feld für serverlosen VPC-Zugriff hinzu:vpc_access_connector: name: projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME
Ersetzen Sie Folgendes:
PROJECT_ID
durch Ihre Google Cloud-Projekt-ID. Wenn sich Ihr Connector im Hostprojekt einer freigegebenen VPC befindet, muss dies die ID des Hostprojekts sein.REGION
ist die Region, in der sich der Connector befindet.CONNECTOR_NAME
durch den Namen des Connectors.
Stellen Sie den Dienst bereit:
gcloud app deploy
Nachdem der Dienst bereitgestellt wurde, kann er Anfragen an interne IP-Adressen senden, um auf Ressourcen in Ihrem VPC-Netzwerk zuzugreifen.
Firewallregeln für Connectors konfigurieren
Erforderliche Firewallregeln für Connectors in Dienstprojekten
Wenn Sie einen Connector in einem eigenständigen VPC-Netzwerk oder im Hostprojekt eines freigegebenen VPC-Netzwerks erstellen, werden in Google Cloud alle erforderlichen Firewallregeln für den Betrieb des Connectors erstellt. Weitere Informationen finden Sie unter Firewallregeln für Konnektoren in eigenständigen VPC-Netzwerken oder Freigegebenen VPC-Hostprojekte.
Wenn Sie jedoch einen Connector in einem Dienstprojekt erstellen und der Connector auf ein freigegebenes VPC-Netzwerk im Hostprojekt abzielt, müssen Sie Firewallregeln hinzufügen, um den erforderlichen Traffic für den Betrieb des Connectors aus den folgenden Bereichen zuzulassen:
- IP-Bereich der serverlosen Infrastruktur:
35.199.224.0/19
- IP-Bereiche der Systemdiagnoseprüfung:
35.191.0.0/16
,35.191.192.0/18
und130.211.0.0/22
Diese Bereiche werden von der Google-Infrastruktur verwendet, die Cloud Run, Cloud Run-Funktionen und der App Engine Standardumgebung zugrunde liegt. Alle Anfragen von diesen IP-Adressen stammen aus der Google-Infrastruktur, damit jede serverlose Ressource nur mit dem Connector kommuniziert, mit dem sie verbunden ist.
Außerdem müssen Sie Traffic vom Subnetz des Connectors zu Ressourcen in Ihrem VPC-Netzwerk zulassen.
Zum Ausführen dieser Schritte benötigen Sie eine der folgenden Rollen im Hostprojekt:
- Inhaberrolle (
roles/owner
) - Rolle "Compute-Sicherheitsadministrator" (
roles/compute.securityAdmin
) - Benutzerdefinierte IAM-Rolle (Identity and Access Management) mit aktivierter Berechtigung
compute.firewalls.create
Wenden Sie bei einer einfachen Konfiguration die Regeln an, damit serverlose Dienste in jedem Dienstprojekt, das mit dem freigegebenen VPC-Netzwerk verbunden ist, Anfragen an jede Ressource im Netzwerk senden können.
Führen Sie die folgenden Befehle im Hostprojekt aus, um diese Regeln anzuwenden:
Erstellen Sie Firewallregeln, die es Anfragen von der serverlosen Infrastruktur und den Systemdiagnoseprüfungen von Google ermöglichen, alle Connectors im Netzwerk zu erreichen. In diesen Befehlen werden UDP- und TCP-Ports als Proxys bzw. für HTTP-Systemdiagnosen verwendet. Ändern Sie die angegebenen Ports nicht.
gcloud compute firewall-rules create serverless-to-vpc-connector \ --allow tcp:667,udp:665-666,icmp \ --source-ranges=35.199.224.0/19 \ --direction=INGRESS \ --target-tags vpc-connector \ --network=VPC_NETWORK
gcloud compute firewall-rules create vpc-connector-to-serverless \ --allow tcp:667,udp:665-666,icmp \ --destination-ranges=35.199.224.0/19 \ --direction=EGRESS \ --target-tags vpc-connector \ --network=VPC_NETWORK
gcloud compute firewall-rules create vpc-connector-health-checks \ --allow tcp:667 \ --source-ranges=35.191.0.0/16,35.191.192.0/18,130.211.0.0/22 \ --direction=INGRESS \ --target-tags vpc-connector \ --network=VPC_NETWORK
Ersetzen Sie
VPC_NETWORK
durch den Namen des VPC-Netzwerks, an das der Connector angehängt werden soll.Erstellen Sie eine Firewallregel für eingehenden Traffic in Ihrem VPC-Netzwerk, um Anfragen von Connectors zuzulassen, die auf dieses Netzwerk ausgerichtet sind:
gcloud compute firewall-rules create vpc-connector-requests \ --allow tcp,udp,icmp \ --direction=INGRESS \ --source-tags vpc-connector \ --network=VPC_NETWORK
Mit dieser Regel erhält der Connector Zugriff auf alle Ressourcen im Netzwerk. Informationen zum Beschränken der Ressourcen, die Ihre serverlose Umgebung über den serverlosen VPC-Zugriff erreichen kann, finden Sie unter Zugriff von Connector-VM auf VPC-Netzwerkressourcen beschränken.
Firewallregeln für bestimmte Connectors erstellen
Die Vorgehensweise unter Erforderliche Firewallregeln für Connectors in Dienstprojekten führt zu Firewallregeln, die für alle Connectors gelten – sowohl für aktuelle als auch für Connectors, die erstellt werden in der Zukunft. Wenn Sie dies nicht möchten, sondern Regeln erstellen möchten, die nur für bestimmte Connectors gelten, können Sie die Regeln so ausrichten, dass sie nur für diese Connectors gelten.
Sie können einen der folgenden Mechanismen verwenden, um den Umfang der Regeln auf bestimmte Connectors zu beschränken.
- Netzwerk-Tags: Jeder Connector hat zwei Netzwerk-Tags:
vpc-connector
undvpc-connector-REGION-CONNECTOR_NAME
. Verwenden Sie das letztere Tag, um den Umfang der Firewallregeln auf einen bestimmten Connector zu beschränken. - IP-Bereiche: Verwenden Sie diesen Typ nur für Ausgangsregeln, da er nicht für eingehenden Traffic funktioniert. Sie können den IP-Bereich des Connector-Subnetzes verwenden, um den Umfang Ihrer Firewallregeln auf einen einzelnen VPC-Connector zu beschränken.
VPC-Netzwerkressourcen des Connector-VM-Zugriffs einschränken
Sie können den Zugriff des Connectors auf Ressourcen im Ziel-VPC-Netzwerk mithilfe von VPC-Firewallregeln oder Regeln in Firewallrichtlinien einschränken. Diese Einschränkungen können Sie mit einer der folgenden Strategien erreichen:
- Erstellen Sie Regeln für eingehenden Traffic, deren Ziele die Ressourcen darstellen, auf die Sie den Zugriff durch Connector-VMs beschränken möchten und deren Quellen die Connector-VMs darstellen.
- Erstellen Sie Regeln für ausgehenden Traffic, deren Ziele die Connector-VMs darstellen und deren Ziele die Ressourcen darstellen, auf die Sie den Zugriff der Connector-VM beschränken möchten.
Die folgenden Beispiele veranschaulichen jede Strategie.
Zugriff mit Regeln für eingehenden Traffic einschränken
Wählen Sie entweder Netzwerk-Tags oder CIDR-Bereiche aus, um den eingehenden Traffic zum VPC-Netzwerk zu steuern.
Netzwerk-Tags
In den folgenden Schritten wird gezeigt, wie Sie Regeln für eingehenden Traffic erstellen, die den Zugriff eines Connectors auf Ihr VPC-Netzwerk anhand der Connector-Netzwerk-Tags einschränken.
Prüfen Sie, ob Sie die erforderlichen Berechtigungen zum Einfügen von Firewallregeln haben. Sie benötigen eine der folgenden Rollen für Identity and Access Management (IAM):
- Rolle "Compute-Sicherheitsadministrator"
- Benutzerdefinierte IAM-Rolle mit aktivierter Berechtigung
compute.firewalls.create
Lehnen Sie Connector-Traffic im gesamten VPC-Netzwerk ab.
Erstellen Sie eine Firewallregel für eingehenden Traffic mit einer Priorität von weniger als 1.000 in Ihrem VPC-Netzwerk, um eingehenden Traffic aus dem Connector-Netzwerk-Tag abzulehnen. Dadurch wird die implizite Firewallregel überschrieben, die von serverlosem VPC-Zugriff in Ihrem VPC-Netzwerk standardmäßig erstellt wird.
gcloud compute firewall-rules create RULE_NAME \ --action=DENY \ --rules=PROTOCOL \ --source-tags=VPC_CONNECTOR_NETWORK_TAG \ --direction=INGRESS \ --network=VPC_NETWORK \ --priority=PRIORITY
Ersetzen Sie dabei Folgendes:
RULE_NAME: Name der neuen Firewallregel. Beispiel:
deny-vpc-connector
PROTOCOL: Ein oder mehrere Protokolle, die Sie von Ihrem VPC-Connector zulassen möchten. Unterstützte Protokolle sind
tcp
oderudp
. Beispiel:tcp:80,udp
lässt TCP-Traffic über Port 80 sowie UDP-Traffic zu. Weitere Informationen finden Sie in der Dokumentation zum Flagallow
.Aus Sicherheits- und Validierungsgründen können Sie auch Ablehnungsregeln konfigurieren, um Traffic für die folgenden nicht unterstützten Protokolle zu blockieren:
ah
,all
,esp
,icmp
,ipip
undsctp
.VPC_CONNECTOR_NETWORK_TAG: das universelle Connector-Netzwerk-Tag, wenn Sie den Zugriff für alle Connectors (einschließlich zukünftiger Connectors) einschränken möchten, oder das eindeutige Netzwerk-Tag, wenn Sie den Zugriff für einen bestimmten Connector einschränken möchten.
- Universelles Netzwerk-Tag:
vpc-connector
Eindeutiges Netzwerk-Tag:
vpc-connector-REGION-CONNECTOR_NAME
Ersetzen Sie:
- REGION: Region des Connectors, den Sie einschränken möchten
- CONNECTOR_NAME: Name des Connectors, den Sie einschränken möchten.
Weitere Informationen zu Netzwerk-Tags des Connectors finden Sie unter Netzwerk-Tags.
- Universelles Netzwerk-Tag:
VPC_NETWORK: Der Name des VPC-Netzwerks
PRIORITY: Eine Ganzzahl zwischen 0 und 65.535. Beispielsweise wird durch 0 die höchste Priorität festgelegt.
Erlauben Sie Connector-Traffic für die Ressource, die Connector-Traffic empfangen soll.
Verwenden Sie die Flags
allow
undtarget-tags
, um eine Firewallregel für eingehenden Traffic zu erstellen, die auf die Ressource in Ihrem VPC-Netzwerk ausgerichtet ist, auf die der VPC-Connector zugreifen soll. Setzen Sie die Priorität für diese Regel auf einen niedrigeren Wert als die Priorität der Regel, die Sie im vorherigen Schritt erstellt haben.gcloud compute firewall-rules create RULE_NAME \ --allow=PROTOCOL \ --source-tags=VPC_CONNECTOR_NETWORK_TAG \ --direction=INGRESS \ --network=VPC_NETWORK \ --target-tags=RESOURCE_TAG \ --priority=PRIORITY
Ersetzen Sie dabei Folgendes:
RULE_NAME: Name der neuen Firewallregel. Beispiel:
allow-vpc-connector-for-select-resources
PROTOCOL: Ein oder mehrere Protokolle, die Sie von Ihrem VPC-Connector zulassen möchten. Unterstützte Protokolle sind
tcp
oderudp
. Beispiel:tcp:80,udp
lässt TCP-Traffic über Port 80 sowie UDP-Traffic zu. Weitere Informationen finden Sie in der Dokumentation zum Flagallow
.VPC_CONNECTOR_NETWORK_TAG: das universelle Connector-Netzwerk-Tag, wenn Sie den Zugriff für alle Connectors (einschließlich zukünftiger Connectors) einschränken möchten, oder das eindeutige Netzwerk-Tag, wenn Sie den Zugriff für einen bestimmten Connector einschränken möchten. Dieser muss mit dem Netzwerk-Tag übereinstimmen, das Sie im vorherigen Schritt angegeben haben.
- Universelles Netzwerk-Tag:
vpc-connector
Eindeutiges Netzwerk-Tag:
vpc-connector-REGION-CONNECTOR_NAME
Ersetzen Sie:
- REGION: Region des Connectors, den Sie einschränken möchten
- CONNECTOR_NAME: Name des Connectors, den Sie einschränken möchten.
Weitere Informationen zu Netzwerk-Tags des Connectors finden Sie unter Netzwerk-Tags.
- Universelles Netzwerk-Tag:
VPC_NETWORK: Der Name des VPC-Netzwerks
RESOURCE_TAG: Netzwerk-Tag für die VPC-Ressource, auf die Ihr VPC-Connector zugreifen soll
PRIORITY: Eine Ganzzahl, die kleiner ist als die Priorität, die Sie im vorherigen Schritt festgelegt haben. Wenn Sie beispielsweise die Priorität der Regel, die Sie im vorherigen Schritt erstellt haben, auf 990 gesetzt haben, versuchen Sie es mit 980.
Weitere Informationen zu den erforderlichen und optionalen Flags für das Erstellen von Firewallregeln finden Sie in der Dokumentation zu gcloud compute firewall-rules create
.
CIDR-Bereich
In den folgenden Schritten wird gezeigt, wie Sie Regeln für eingehenden Traffic erstellen, die den Zugriff eines Connectors auf Ihr VPC-Netzwerk anhand des CIDR-Bereichs des Connectors beschränken.
Prüfen Sie, ob Sie die erforderlichen Berechtigungen zum Einfügen von Firewallregeln haben. Sie benötigen eine der folgenden Rollen für Identity and Access Management (IAM):
- Rolle "Compute-Sicherheitsadministrator"
- Benutzerdefinierte IAM-Rolle mit aktivierter Berechtigung
compute.firewalls.create
Lehnen Sie Connector-Traffic im gesamten VPC-Netzwerk ab.
Erstellen Sie eine Firewallregel für eingehenden Traffic mit einer Priorität von weniger als 1.000 in Ihrem VPC-Netzwerk, um eingehenden Traffic aus dem CIDR-Bereich des Connectors abzulehnen. Dadurch wird die implizite Firewallregel überschrieben, die von serverlosem VPC-Zugriff in Ihrem VPC-Netzwerk standardmäßig erstellt wird.
gcloud compute firewall-rules create RULE_NAME \ --action=DENY \ --rules=PROTOCOL \ --source-ranges=VPC_CONNECTOR_CIDR_RANGE \ --direction=INGRESS \ --network=VPC_NETWORK \ --priority=PRIORITY
Ersetzen Sie dabei Folgendes:
RULE_NAME: Name der neuen Firewallregel. Beispiel:
deny-vpc-connector
PROTOCOL: Ein oder mehrere Protokolle, die Sie von Ihrem VPC-Connector zulassen möchten. Unterstützte Protokolle sind
tcp
oderudp
. Beispiel:tcp:80,udp
lässt TCP-Traffic über Port 80 sowie UDP-Traffic zu. Weitere Informationen finden Sie in der Dokumentation zum Flagallow
.Aus Sicherheits- und Validierungsgründen können Sie auch Ablehnungsregeln konfigurieren, um Traffic für die folgenden nicht unterstützten Protokolle zu blockieren:
ah
,all
,esp
,icmp
,ipip
undsctp
.VPC_CONNECTOR_CIDR_RANGE: Der CIDR-Bereich für den Connector, dessen Zugriff Sie einschränken.
VPC_NETWORK: Der Name des VPC-Netzwerks
PRIORITY: Eine Ganzzahl zwischen 0 und 65.535. Beispielsweise wird durch 0 die höchste Priorität festgelegt.
Erlauben Sie Connector-Traffic für die Ressource, die Connector-Traffic empfangen soll.
Verwenden Sie die Flags
allow
undtarget-tags
, um eine Firewallregel für eingehenden Traffic zu erstellen, die auf die Ressource in Ihrem VPC-Netzwerk ausgerichtet ist, auf die der VPC-Connector zugreifen soll. Setzen Sie die Priorität für diese Regel auf einen niedrigeren Wert als die Priorität der Regel, die Sie im vorherigen Schritt erstellt haben.gcloud compute firewall-rules create RULE_NAME \ --allow=PROTOCOL \ --source-ranges=VPC_CONNECTOR_CIDR_RANGE \ --direction=INGRESS \ --network=VPC_NETWORK \ --target-tags=RESOURCE_TAG \ --priority=PRIORITY
Ersetzen Sie dabei Folgendes:
RULE_NAME: Name der neuen Firewallregel. Beispiel:
allow-vpc-connector-for-select-resources
PROTOCOL: Ein oder mehrere Protokolle, die Sie von Ihrem VPC-Connector zulassen möchten. Unterstützte Protokolle sind
tcp
oderudp
. Beispiel:tcp:80,udp
lässt TCP-Traffic über Port 80 sowie UDP-Traffic zu. Weitere Informationen finden Sie in der Dokumentation zum Flagallow
.VPC_CONNECTOR_CIDR_RANGE: Der CIDR-Bereich für den Connector, dessen Zugriff Sie einschränken
VPC_NETWORK: Der Name des VPC-Netzwerks
RESOURCE_TAG: Netzwerk-Tag für die VPC-Ressource, auf die Ihr VPC-Connector zugreifen soll
PRIORITY: Eine Ganzzahl, die kleiner ist als die Priorität, die Sie im vorherigen Schritt festgelegt haben. Wenn Sie beispielsweise die Priorität der Regel, die Sie im vorherigen Schritt erstellt haben, auf 990 gesetzt haben, versuchen Sie es mit 980.
Weitere Informationen zu den erforderlichen und optionalen Flags zum Erstellen von Firewallregeln finden Sie in der Dokumentation zu gcloud compute firewall-rules create
.
Zugriff mithilfe von Regeln für ausgehenden Traffic beschränken
In den folgenden Schritten wird gezeigt, wie Sie Regeln für ausgehenden Traffic erstellen, um den Zugriff durch Connectors zu beschränken.
Prüfen Sie, ob Sie die erforderlichen Berechtigungen zum Einfügen von Firewallregeln haben. Sie benötigen eine der folgenden Rollen von Identity and Access Management (IAM):
- Rolle "Compute-Sicherheitsadministrator"
- Benutzerdefinierte IAM-Rolle mit aktivierter Berechtigung
compute.firewalls.create
Lehnen Sie den ausgehenden Traffic über den Connector ab.
Erstellen Sie eine Firewallregel für ausgehenden Traffic im Connector für serverlosen VPC-Zugriff, um das Senden von ausgehendem Traffic mit Ausnahme der festgelegten Antworten an ein beliebiges Ziel zu verhindern.
gcloud compute firewall-rules create RULE_NAME \ --action=DENY \ --rules=PROTOCOL \ --direction=EGRESS \ --target-tags=VPC_CONNECTOR_NETWORK_TAG \ --network=VPC_NETWORK \ --priority=PRIORITY
Ersetzen Sie dabei Folgendes:
RULE_NAME: Name der neuen Firewallregel. Beispiel:
deny-vpc-connector
PROTOCOL: Ein oder mehrere Protokolle, die Sie von Ihrem VPC-Connector zulassen möchten. Unterstützte Protokolle sind
tcp
oderudp
. Beispiel:tcp:80,udp
lässt TCP-Traffic über Port 80 sowie UDP-Traffic zu. Weitere Informationen finden Sie in der Dokumentation zum Flagallow
.Aus Sicherheits- und Validierungsgründen können Sie auch Ablehnungsregeln konfigurieren, um Traffic für die folgenden nicht unterstützten Protokolle zu blockieren:
ah
,all
,esp
,icmp
,ipip
undsctp
.VPC_CONNECTOR_NETWORK_TAG: Das universelle VPC-Connector-Netzwerk-Tag, wenn die Regel für alle vorhandenen und zukünftig erstellten VPC-Connectors gelten soll. Wenn Sie einen bestimmten Connector steuern möchten, können Sie das eindeutige Netzwerk-Tag des VPC-Connectors verwenden.
VPC_NETWORK: Der Name des VPC-Netzwerks
PRIORITY: Eine Ganzzahl zwischen 0 und 65.535. Beispielsweise wird durch 0 die höchste Priorität festgelegt.
Lassen Sie ausgehenden Traffic zu, wenn sich das Ziel in dem CIDR-Bereich befindet, auf den der Connector zugreifen soll.
Verwenden Sie die Flags
allow
unddestination-ranges
, um eine Firewallregel zu erstellen, die ausgehenden Traffic von Ihrem Connector für einen bestimmten Zielbereich zulässt. Legen Sie den Zielbereich auf den CIDR-Bereich der Ressource in Ihrem VPC-Netzwerk fest, auf die der Connector zugreifen soll. Setzen Sie die Priorität für diese Regel auf einen niedrigeren Wert als die Priorität der Regel, die Sie im vorherigen Schritt erstellt haben.gcloud compute firewall-rules create RULE_NAME \ --allow=PROTOCOL \ --destination-ranges=RESOURCE_CIDR_RANGE \ --direction=EGRESS \ --network=VPC_NETWORK \ --target-tags=VPC_CONNECTOR_NETWORK_TAG \ --priority=PRIORITY
Ersetzen Sie dabei Folgendes:
RULE_NAME: Name der neuen Firewallregel. Beispiel:
allow-vpc-connector-for-select-resources
PROTOCOL: Ein oder mehrere Protokolle, die Sie von Ihrem VPC-Connector zulassen möchten. Unterstützte Protokolle sind
tcp
oderudp
. Beispiel:tcp:80,udp
lässt TCP-Traffic über Port 80 sowie UDP-Traffic zu. Weitere Informationen finden Sie in der Dokumentation zum Flagallow
.RESOURCE_CIDR_RANGE: Der CIDR-Bereich für den Connector, dessen Zugriff Sie einschränken.
VPC_NETWORK: Der Name des VPC-Netzwerks
VPC_CONNECTOR_NETWORK_TAG: Das universelle VPC-Connector-Netzwerk-Tag, wenn die Regel für alle vorhandenen und zukünftig erstellten VPC-Connectors gelten soll. Wenn Sie einen bestimmten Connector steuern möchten, können Sie das eindeutige Netzwerk-Tag des VPC-Connectors verwenden. Wenn Sie im vorherigen Schritt das eindeutige Netzwerk-Tag genutzt haben, verwenden Sie das eindeutige Netzwerk-Tag.
PRIORITY: Eine Ganzzahl, die kleiner ist als die Priorität, die Sie im vorherigen Schritt festgelegt haben. Wenn Sie beispielsweise die Priorität der Regel, die Sie im vorherigen Schritt erstellt haben, auf 990 gesetzt haben, versuchen Sie es mit 980.
Weitere Informationen zu den erforderlichen und optionalen Flags für das Erstellen von Firewallregeln finden Sie in der Dokumentation zu gcloud compute firewall-rules create
.
Connector aktualisieren
Sie können die folgenden Attribute Ihres Connectors über die Google Cloud Console, die Google Cloud CLI oder die API aktualisieren und überwachen:
- Maschinentyp (Instanz)
- Mindest- und Höchstzahl von Instanzen
- Letzter Durchsatz, Anzahl der Instanzen und CPU-Auslastung
Maschinentyp aktualisieren
Console
Rufen Sie die Übersichtsseite für serverlosen VPC-Zugriff auf:
Wählen Sie den zu bearbeitenden Connector aus und klicken Sie auf Bearbeiten.
Wählen Sie in der Liste Instanztyp den gewünschten Maschinentyp (Instanz) aus. Weitere Informationen zu verfügbaren Maschinentypen finden Sie in der Dokumentation zu Durchsatz und Skalierung.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Führen Sie den folgenden Befehl in Ihrem Terminal aus, um den Connector-Maschinentyp zu aktualisieren:
Ersetzen Sie Folgendes:gcloud beta compute networks vpc-access connectors update CONNECTOR_NAME --region=REGION --machine-type=MACHINE_TYPE
CONNECTOR_NAME
: der Name des ConnectorsREGION
: der Name der Region Ihres ConnectorsMACHINE_TYPE
: Ihr bevorzugter Maschinentyp. Weitere Informationen zu verfügbaren Maschinentypen finden Sie in der Dokumentation zu Durchsatz und Skalierung.
Mindest- und Höchstzahl von Instanzen verringern
So verringern Sie die Mindest- und Höchstzahl von Instanzen:
- Erstellen Sie einen neuen Connector mit den gewünschten Werten.
- Aktualisieren Sie Ihren Dienst oder Ihre Funktion, um den neuen Connector zu verwenden.
- Löschen Sie den alten Connector, wenn Sie den Traffic verschoben haben.
Weitere Informationen finden Sie unter Connector für serverlosen VPC-Zugriff erstellen.
Mindest- und Höchstzahl von Instanzen erhöhen
Console
Rufen Sie die Übersichtsseite für serverlosen VPC-Zugriff auf:
Wählen Sie den zu bearbeitenden Connector aus und klicken Sie auf Bearbeiten.
Wählen Sie im Feld Mindestinstanzen die gewünschte Mindestanzahl von Instanzen aus.
Der kleinstmögliche Wert für dieses Feld ist der aktuelle Wert. Der größtmögliche Wert für dieses Feld ist der aktuelle Wert im Feld Maximale Anzahl von Instanzen minus 1. Lautet der Wert im Feld Maximale Instanzzahl beispielsweise 8, ist der größtmögliche Wert für das Feld Mindestinstanzen 7.
Wählen Sie im Feld Maximale Instanzen Ihre bevorzugte maximale Anzahl von Instanzen aus.
Der kleinstmögliche Wert für dieses Feld ist der aktuelle Wert. Der größtmögliche Wert für dieses Feld ist 10.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Führen Sie den folgenden Befehl in Ihrem Terminal aus, um die Mindest- oder Höchstanzahl von Instanzen für den Connector zu erhöhen:
Ersetzen Sie Folgendes:gcloud beta compute networks vpc-access connectors update CONNECTOR_NAME --region=REGION --min-instances=MIN_INSTANCES --max-instances=MAX_INSTANCES
CONNECTOR_NAME
: der Name des ConnectorsREGION
: der Name der Region Ihres ConnectorsMIN_INSTANCES
: Ihre bevorzugte Mindestanzahl von Instanzen.- Der kleinstmögliche Wert für dieses Feld ist der aktuelle Wert von
min_instances
. Informationen zum Ermitteln des aktuellen Werts finden Sie unter Aktuelle Attributwerte finden. - Der größtmögliche Wert für dieses Feld ist der aktuelle
max_instances
-Wert minus 1, damin_instances
kleiner alsmax_instances
sein muss. Beispiel: Wennmax_instances
8 ist, ist der größtmögliche Wert für dieses Feld 7. Wenn Ihr Connector den Standardwertmax-instances
von 10 verwendet, ist der größtmögliche Wert dieses Feldes 9. Wie Sie den Wert vonmax-instances
ermitteln, erfahren Sie unter Aktuelle Attributwerte finden.
- Der kleinstmögliche Wert für dieses Feld ist der aktuelle Wert von
MAX_INSTANCES
:- Der kleinstmögliche Wert für dieses Feld ist der aktuelle Wert von
max_instances
. Informationen zum Ermitteln des aktuellen Werts finden Sie unter Aktuelle Attributwerte finden. - Der größtmögliche Wert für dieses Feld ist 10.
Wenn Sie nur die minimale, aber nicht die maximale Anzahl von Instanzen erhöhen wollen, müssen Sie trotzdem die maximale Anzahl von Instanzen angeben. Umgekehrt müssen Sie, wenn Sie nur die maximale, nicht aber die minimale Anzahl der Instanzen aktualisieren wollen, die minimale Anzahl der Instanzen angeben. Geben Sie den aktuellen Wert an, um die minimale oder maximale Anzahl von Instanzen auf dem aktuellen Wert zu halten. Informationen zum Ermitteln des aktuellen Werts finden Sie unter Aktuelle Attributwerte finden.
- Der kleinstmögliche Wert für dieses Feld ist der aktuelle Wert von
Aktuelle Attributwerte finden
Führen Sie den folgenden Befehl in Ihrem Terminal aus, um die aktuellen Attributwerte für Ihren Connector zu ermitteln:
gcloud compute networks vpc-access connectors describe CONNECTOR_NAME --region=REGION --project=PROJECT
CONNECTOR_NAME
: der Name des ConnectorsREGION
: der Name der Region Ihres ConnectorsPROJECT
: der Name Ihres Google Cloud-Projekts
Connector-Auslastung überwachen
Wenn Sie die Auslastung im Zeitverlauf beobachten, können Sie feststellen, wann die Einstellungen eines Connectors angepasst werden müssen. Wenn die CPU-Auslastung beispielsweise stark ansteigt, sollten Sie versuchen, die maximale Anzahl von Instanzen zu erhöhen, um bessere Ergebnisse zu erzielen. Wenn der Durchsatz maximal ausgeschöpft ist, können Sie zu einem größeren Maschinentyp wechseln.
So rufen Sie Diagramme für den Durchsatz, die Anzahl der Instanzen und die CPU-Auslastungsmesswerte im Zeitverlauf mithilfe der Google Cloud Console auf:
Rufen Sie die Übersichtsseite für serverlosen VPC-Zugriff auf:
Klicken Sie auf den Namen des Connectors, den Sie überwachen möchten.
Wählen Sie die Anzahl der Tage zwischen 1 und 90 Tagen aus.
Bewegen Sie den Mauszeiger im Diagramm Durchsatz über das Diagramm, um den letzten Durchsatz des Connectors zu sehen.
Bewegen Sie den Mauszeiger im Diagramm Anzahl der Instanzen über das Diagramm, um die Anzahl der zuletzt vom Connector verwendeten Instanzen zu sehen.
Bewegen Sie den Mauszeiger im Diagramm CPU-Auslastung auf das Diagramm, um die aktuelle CPU-Auslastung des Connectors zu sehen. Das Diagramm zeigt die CPU-Auslastung, die auf Instanzen für das 50., 95. und 99. Perzentil verteilt ist.
Connector löschen
Achten Sie darauf, dass noch keine Dienste oder Jobs mit ihm verbunden sind, bevor Sie einen Connector löschen.
Nutzer der freigegebenen VPC, die Connectors im Hostprojekt der freigegebenen VPC einrichten, können den Befehl gcloud compute networks vpc-access connectors describe
verwenden, um die Projekte aufzulisten, in denen Dienste oder Jobs einen bestimmten Connector verwenden.
Verwenden Sie zum Löschen eines Connectors die Google Cloud Console oder die Google Cloud CLI:
Console
Rufen Sie in der Google Cloud Console die Übersichtsseite für serverlosen VPC-Zugriff auf:
Wählen Sie den Connector aus, den Sie löschen möchten.
Klicken Sie auf Löschen.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Verwenden Sie den folgenden
gcloud
-Befehl, um einen Connector zu löschen:gcloud compute networks vpc-access connectors delete CONNECTOR_NAME --region=REGION
Ersetzen Sie dabei Folgendes:
- CONNECTOR_NAME ist der Name des Connectors, den Sie löschen möchten.
- REGION ist die Region, in der sich der Connector befindet.
Cloud Run-Umgebung für die Verwendung von Direct VPC anstelle eines Connectors konfigurieren
Sie können Ihren Cloud Run-Dienst aktivieren, um ausgehenden Traffic direkt an ein VPC-Netzwerk zu senden. Dies ermöglicht den Zugriff auf Compute Engine-VM-Instanzen, Memorystore-Instanzen und alle anderen Ressourcen mit einer internen IP-Adresse.
Dienst für die Verwendung von Direct VPC konfigurieren
Durch ausgehenden Direct VPC-Traffic kann Ihr Cloud Run-Dienst Traffic ohne Connector für serverlosen VPC-Zugriff an ein VPC-Netzwerk senden. Die Netzwerkkosten werden wie der Dienst selbst auf null skaliert. Sie können auch Netzwerk-Tags direkt zu Cloud Run-Dienstüberarbeitungen hinzufügen, um eine detailliertere Netzwerksicherheit zu erhalten, z. B. durch Anwenden von VPC-Firewallregeln.
Sie können ausgehenden Direct VPC-Traffic mit einem Dienst über die Google Cloud Console, die Google Cloud CLI oder YAML oder Terraform konfigurieren.
Console
Klicken Sie auf Dienst erstellen, wenn Sie einen neuen Dienst für die Bereitstellung konfigurieren. Wenn Sie einen vorhandenen Dienst konfigurieren und bereitstellen, klicken Sie auf den Dienst und dann auf Neue Überarbeitung bearbeiten und bereitstellen.
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 Container, Netzwerk, Sicherheit, um die Seite zur Dienstkonfiguration zu maximieren.
Klicken Sie auf den Tab Netzwerk.
Klicken Sie auf Mit einer VPC für ausgehenden Traffic verbinden.
Klicken Sie auf Traffic direkt an eine VPC senden.
Wählen Sie im Feld Netzwerk das VPC-Netzwerk aus, an das Sie Traffic senden möchten.
Wählen Sie im Feld Subnetz das Subnetz aus, von dem Ihr Dienst IP-Adressen empfängt. Sie können mehrere Dienste im selben Subnetz bereitstellen.
Optional: Geben Sie die Namen der Netzwerk-Tags ein, die Sie Ihrem Dienst oder Ihren Diensten zuordnen möchten. Netzwerktags werden auf Versionsebene angegeben. Jede Dienstversion kann unterschiedliche Netzwerk-Tags haben, z. B.
network-tag-2
.Wählen Sie für Traffic-Routing eine der folgenden Optionen:
- Nur Anfragen an private IPs an die VPC weiterleiten, um nur Traffic an interne Adressen über das VPC-Netzwerk zu senden.
- Gesamten Traffic an die VPC weiterleiten, um den gesamten ausgehenden Traffic über das VPC-Netzwerk zu senden.
Klicken Sie auf Erstellen oder Bereitstellen.
Klicken Sie auf den Dienst und dann auf den Tab Netzwerk, um zu prüfen, ob sich der Dienst in Ihrem VPC-Netzwerk befindet. Netzwerk und Subnetz werden auf der VPC-Karte aufgeführt.
Sie können nun Anfragen von Ihrem Cloud Run-Dienst an eine beliebige Ressource im VPC-Netzwerk senden, je nach Ihren Firewallregeln.
gcloud
So stellen Sie einen Cloud Run-Dienst ohne Connector über die Google Cloud CLI bereit:
Aktualisieren Sie die Komponenten von
gcloud
auf die neueste Version:gcloud components update
Die Compute Engine API muss für das Projekt aktiviert sein:
gcloud services enable compute.googleapis.com
Stellen Sie Ihren Cloud Run-Dienst mit folgendem Befehl bereit:
gcloud run deploy SERVICE_NAME \ --image=IMAGE_URL \ --network=NETWORK \ --subnet=SUBNET \ --network-tags=NETWORK_TAG_NAMES \ --vpc-egress=EGRESS_SETTING \ --region=REGION
Ersetzen Sie:
- SERVICE_NAME durch den Namen Ihres Cloud Run-Dienstes.
- IMAGE_URL durch einen Verweis auf das Container-Image, z. B.
us-docker.pkg.dev/cloudrun/container/hello:latest
. Wenn Sie Artifact Registry verwenden, muss das Repository REPO_NAME bereits erstellt sein. Die URL hat die FormLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG
. - NETWORK durch den Namen Ihres VPC-Netzwerks.
-
SUBNET durch den Namen Ihres Subnetzes. Das Subnetz muss
/26
oder größer sein. Ausgehender Direct VPC-Traffic unterstützt die IPv4-Bereiche RFC 1918, RFC 6598 und die Klasse E. Sie können mehrere Dienste oder Jobs im selben Subnetz bereitstellen oder ausführen. Das Subnetz darf jedoch nicht für vorhandene Connectors freigegeben sein. - Optional: NETWORK_TAG_NAMES durch die durch Kommas getrennten Namen der Netzwerk-Tags ersetzen, die Sie mit einem Dienst verknüpfen möchten. Bei Diensten werden Netzwerk-Tags auf Versionsebene angegeben. Jede Dienstversion kann unterschiedliche Netzwerk-Tags haben, z. B.
network-tag-2
. - EGRESS_SETTING durch einen Wert für die Einstellung für ausgehenden Traffic:
all-traffic
: Sendet den gesamten ausgehenden Traffic über das VPC-Netzwerk.private-ranges-only
: Sendet nur Traffic an interne Adressen über das VPC-Netzwerk.
- REGION durch eine Region für Ihren Dienst.
Führen Sie folgenden Befehl aus, um zu prüfen, ob sich Ihr Dienst in Ihrem VPC-Netzwerk befindet:
gcloud run services describe SERVICE_NAME \ --region=REGION
Ersetzen Sie:
SERVICE_NAME
durch den Namen des Dienstes.REGION
durch die Region, die Sie im vorherigen Schritt für Ihren Dienst angegeben haben.
Die Ausgabe sollte die Einstellung für Netzwerk, Subnetz und ausgehenden Traffic enthalten, zum Beispiel:
VPC access: Network: default Subnet: subnet Egress: private-ranges-only
Sie können nun Anfragen von Ihrem Cloud Run-Dienst an eine beliebige Ressource im VPC-Netzwerk senden, je nach Ihren Firewallregeln.
YAML
Wenn Sie einen neuen Dienst erstellen, überspringen Sie diesen Schritt. Wenn Sie einen vorhandenen Dienst aktualisieren, laden Sie die zugehörige YAML-Konfiguration herunter:
gcloud run services describe SERVICE --format export > service.yaml
Aktualisieren Sie die folgenden Attribute:
apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE_NAME labels: cloud.googleapis.com/location: REGION spec: template: metadata: annotations: run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]' run.googleapis.com/vpc-access-egress: EGRESS_SETTING spec: containers: - image: IMAGE
Ersetzen Sie:
- SERVICE_NAME durch den Namen Ihres Cloud Run-Dienstes. Dienstnamen dürfen maximal 49 Zeichen lang sein und pro Region und Projekt nur einmal vorkommen.
- REGION durch die Region für Ihren Cloud Run-Dienst; diese muss der Region Ihres Subnetzes entsprechen.
- NETWORK durch den Namen Ihres VPC-Netzwerks.
-
SUBNET durch den Namen Ihres Subnetzes. Das Subnetz muss
/26
oder größer sein. Ausgehender Direct VPC-Traffic unterstützt die IPv4-Bereiche RFC 1918, RFC 6598 und die Klasse E. Sie können mehrere Dienste oder Jobs im selben Subnetz bereitstellen oder ausführen. Das Subnetz darf jedoch nicht für vorhandene Connectors freigegeben sein. - Optional: Ersetzen Sie NETWORK_TAG_NAMES durch die Namen der Netzwerk-Tags, die Sie einem Dienst zuordnen möchten. Bei Diensten werden Netzwerk-Tags auf Versionsebene angegeben. Jede Dienstversion kann unterschiedliche Netzwerk-Tags haben, z. B.
network-tag-2
. - EGRESS_SETTING durch einen Wert für die Einstellung für ausgehenden Traffic:
all-traffic
: Sendet den gesamten ausgehenden Traffic über das VPC-Netzwerk.private-ranges-only
: Sendet nur Traffic an interne Adressen über das VPC-Netzwerk.
- IMAGE durch die URL Ihres Dienst-Container-Images.
Sie können auch weitere Konfigurationen angeben, z. B. Umgebungsvariablen oder Speicherlimits.
Erstellen oder aktualisieren Sie den Dienst mit dem folgenden Befehl:
gcloud run services replace service.yaml
Terraform
Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.
Fügen Sie der Datei
main.tf
Folgendes hinzu:
Optional: Veröffentlichen Sie Ihren Dienst, wenn Sie den nicht authentifizierten Zugriff auf den Dienst zulassen möchten.
Job für die Verwendung von Direct VPC konfigurieren
Durch ausgehenden Direct VPC-Traffic kann Ihr Cloud Run-Job Traffic ohne Connector für serverlosen VPC-Zugriff an ein VPC-Netzwerk senden. Sie können auch Netzwerk-Tags direkt zu Cloud Run-Jobs hinzufügen, um eine detailliertere Netzwerksicherheit zu erhalten, z. B. durch Anwenden von VPC-Firewallregeln.
Sie können ausgehenden Direct VPC-Traffic mit einem Job über die Google Cloud Console, die Google Cloud CLI oder YAML konfigurieren.
Console
Klicken Sie auf den Tab Jobs und füllen Sie die Seite mit den anfänglichen Jobeinstellungen wie gewünscht aus, wenn Sie einen neuen Job konfigurieren. Klicken Sie auf den Job und dann auf Bearbeiten, wenn Sie einen vorhandenen Job konfigurieren.
Klicken Sie auf Container, Variablen und Secrets, Verbindungen, Sicherheit, um die Seite mit den Jobattributen zu maximieren.
Klicken Sie auf den Tab Verbindungen.
Klicken Sie auf Mit einer VPC für ausgehenden Traffic verbinden.
Klicken Sie auf Traffic direkt an eine VPC senden.
Wählen Sie im Feld Netzwerk das VPC-Netzwerk aus, an das Sie Traffic senden möchten.
Wählen Sie im Feld Subnetz das Subnetz aus, von dem Ihr Job IP-Adressen empfängt. Sie können mehrere Jobs im selben Subnetz ausführen.
Wählen Sie für Traffic-Routing eine der folgenden Optionen:
- Nur Anfragen an private IPs an die VPC weiterleiten, um nur Traffic an interne Adressen über das VPC-Netzwerk zu senden.
- Gesamten Traffic an die VPC weiterleiten, um den gesamten ausgehenden Traffic über das VPC-Netzwerk zu senden.
Optional: Geben Sie die Namen der Netzwerk-Tags ein, die Sie Ihrem Dienst oder Ihren Diensten zuordnen möchten. Netzwerktags werden auf Versionsebene angegeben. Jede Dienstversion kann unterschiedliche Netzwerk-Tags haben, z. B.
network-tag-2
.Optional: Geben Sie die Namen der Netzwerk-Tags ein, die Sie Ihrem Job oder Ihren Jobs zuordnen möchten. Bei Jobs werden Netzwerk-Tags auf Ausführungsebene angegeben. Jede Jobausführung kann unterschiedliche Netzwerk-Tags haben, z. B.
network-tag-2
.Klicken Sie auf Erstellen oder Aktualisieren.
Klicken Sie auf den Job und dann auf den Tab Konfiguration, um zu prüfen, ob sich der Job in Ihrem VPC-Netzwerk befindet. Netzwerk und Subnetz werden auf der VPC-Karte aufgeführt.
Sie können Ihren Cloud Run-Job jetzt ausführen und Anfragen vom Job an eine beliebige Ressource im VPC-Netzwerk senden, je nach Firewallregeln.
gcloud
So erstellen Sie einen Cloud Run-Job ohne Connector über die Google Cloud CLI:
Aktualisieren Sie die Komponenten von
gcloud
auf die neueste Version:gcloud components update
Die Compute Engine API muss für das Projekt aktiviert sein:
gcloud services enable compute.googleapis.com
Erstellen Sie mit folgendem Befehl einen Cloud Run-Job:
gcloud run jobs create JOB_NAME \ --image=IMAGE_URL \ --network=NETWORK \ --subnet=SUBNET \ --network-tags=NETWORK_TAG_NAMES \ --vpc-egress=EGRESS_SETTING \ --region=REGION
Ersetzen Sie:
- JOB_NAME durch den Namen Ihres Cloud Run-Jobs.
- IMAGE_URL durch einen Verweis auf das Container-Image, z. B.
us-docker.pkg.dev/cloudrun/container/job:latest
. - NETWORK durch den Namen Ihres VPC-Netzwerks.
-
SUBNET durch den Namen Ihres Subnetzes. Das Subnetz muss
/26
oder größer sein. Ausgehender Direct VPC-Traffic unterstützt die IPv4-Bereiche RFC 1918, RFC 6598 und die Klasse E. Sie können mehrere Dienste oder Jobs im selben Subnetz bereitstellen oder ausführen. Das Subnetz darf jedoch nicht für vorhandene Connectors freigegeben sein. - Optional: Ersetzen Sie NETWORK_TAG_NAMES durch die Namen der Netzwerk-Tags, die Sie einem Job zuordnen möchten. Für Jobs werden Netzwerk-Tags auf Ausführungsebene angegeben. Jede Jobausführung kann unterschiedliche Netzwerk-Tags haben, z. B.
network-tag-2
. - EGRESS_SETTING durch einen Wert für die Einstellung für ausgehenden Traffic:
all-traffic
: Sendet den gesamten ausgehenden Traffic über das VPC-Netzwerk.private-ranges-only
: Sendet nur Traffic an interne Adressen über das VPC-Netzwerk.
- REGION durch eine Region für Ihren Job.
Führen Sie folgenden Befehl aus, um zu prüfen, ob sich der Job in Ihrem VPC-Netzwerk befindet:
gcloud run jobs describe JOB_NAME \ --region=REGION
Ersetzen Sie:
JOB_NAME
durch den Namen des Jobs.REGION
durch die Region für Ihren Job, die Sie im vorherigen Schritt angegeben haben.
Die Ausgabe sollte den Namen Ihres Netzwerks und des Subnetzes enthalten, zum Beispiel:
VPC network: Network: default Subnet: default
Sie können Ihren Cloud Run-Job jetzt ausführen und Anfragen vom Job an eine beliebige Ressource im VPC-Netzwerk senden, je nach Firewallregeln.
YAML
Wenn Sie einen neuen Job erstellen, überspringen Sie diesen Schritt. Wenn Sie einen vorhandenen Job aktualisieren, laden Sie die zugehörige YAML-Konfiguration herunter:
gcloud run jobs describe JOB_NAME --format export > job.yaml
Aktualisieren Sie die folgenden Attribute:
apiVersion: run.googleapis.com/v1 kind: Job metadata: name: JOB_NAME annotations: run.googleapis.com/launch-stage: BETA labels: cloud.googleapis.com/location: REGION spec: template: metadata: annotations: run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]' run.googleapis.com/vpc-access-egress: EGRESS_SETTING spec: containers: - image: IMAGE
Ersetzen Sie:
- JOB_NAME durch den Namen Ihres Cloud Run-Jobs. Jobnamen dürfen maximal 49 Zeichen lang sein und pro Region und Projekt nur einmal vorkommen.
- REGION durch die Region für Ihren Cloud Run-Job; diese muss der Region Ihres Subnetzes entsprechen.
- NETWORK durch den Namen Ihres VPC-Netzwerks.
-
SUBNET durch den Namen Ihres Subnetzes. Das Subnetz muss
/26
oder größer sein. Ausgehender Direct VPC-Traffic unterstützt die IPv4-Bereiche RFC 1918, RFC 6598 und die Klasse E. Sie können mehrere Dienste oder Jobs im selben Subnetz bereitstellen oder ausführen. Das Subnetz darf jedoch nicht für vorhandene Connectors freigegeben sein. - Optional: Ersetzen Sie NETWORK_TAG_NAMES durch die Namen der Netzwerk-Tags, die Sie einem Job zuordnen möchten. Für Jobs werden Netzwerk-Tags auf Ausführungsebene angegeben. Jede Jobausführung kann unterschiedliche Netzwerk-Tags haben, z. B.
network-tag-2
. - EGRESS_SETTING durch einen Wert für die Einstellung für ausgehenden Traffic:
all-traffic
: Sendet den gesamten ausgehenden Traffic über das VPC-Netzwerk.private-ranges-only
: Sendet nur Traffic an interne Adressen über das VPC-Netzwerk.
- IMAGE durch die URL Ihres Job-Container-Images.
Erstellen oder aktualisieren Sie den Dienst mit dem folgenden Befehl:
gcloud run jobs replace job.yaml
Fehlerbehebung
Dienstkontoberechtigungen
Zum Ausführen von Vorgängen in Ihrem Google Cloud-Projekt verwendet der Dienst für den serverlosen VPC-Zugriff das Dienstkonto Dienstagent für serverlosen VPC-Zugriff. Die E-Mail-Adresse dieses Dienstkontos hat das folgende Format:
service-PROJECT_NUMBER@gcp-sa-vpcaccess.iam.gserviceaccount.com
Standardmäßig hat dieses Dienstkonto die Rolle Dienstagent für serverlosen VPC-Zugriff (roles/vpcaccess.serviceAgent
). Serverlose VPC-Zugriffsvorgänge können fehlschlagen, wenn Sie die Berechtigungen dieses Kontos ändern.
Schlechte Netzwerkleistung oder hohe CPU-Auslastung bei Inaktivität
Die Verwendung eines einzelnen Connectors für Tausende von Instanzen kann zu Leistungseinbußen und einer erhöhten CPU-Auslastung bei Inaktivität führen. Sie können das Problem beheben, indem Sie Ihre Dienste auf mehrere Connectors aufteilen.
Fehler
Fehler: Dienstkonto benötigt Service Agent-Rolle
Wenn Sie die Organisationsrichtlinie Restrict Resource Service Usage verwenden, um den Cloud Deployment Manager (deploymentmanager.googleapis.com
) zu blockieren, wird möglicherweise folgende Fehlermeldung angezeigt:
Serverless VPC Access service account (service-<PROJECT_NUMBER>@gcp-sa-vpcaccess.iam.gserviceaccount.com) needs Serverless VPC Access Service Agent role in the project.
Legen Sie die Organisationsrichtlinie fest, um den Deployment Manager aus der Sperrliste zu entfernen, oder fügen Sie ihn zur Zulassungsliste hinzu.
Fehler beim Erstellen eines Connectors
Wenn beim Erstellen eines Connectors ein Fehler auftritt, versuchen Sie Folgendes:
- Geben Sie einen internen RFC 1918-IP-Bereich an, der sich nicht mit vorhandenen IP-Adressreservierungen im VPC-Netzwerk überschneidet.
- Erteilen Sie Ihrem Projekt die Berechtigung, Compute Engine-VM-Images aus dem Projekt mit der ID
serverless-vpc-access-images
zu verwenden. Weitere Informationen zum Aktualisieren Ihrer Organisationsrichtlinien finden Sie unter Einschränkungen für den Image-Zugriff festlegen.
Zugriff auf Ressourcen nicht möglich
Wenn Sie einen Connector angegeben haben, aber immer noch nicht auf Ressourcen in Ihrem VPC-Netzwerk zugreifen können, achten Sie darauf, dass es in Ihrem VPC-Netzwerk keine Firewallregeln mit einer Priorität unter 1000 gibt, die eingehenden Traffic aus dem IP-Bereich Ihres Connectors verweigern.
Wenn Sie einen Connector in einem freigegebenen VPC-Dienstprojekt konfigurieren, achten Sie darauf, dass Ihre Firewallregeln eingehenden Traffic von Ihrer serverlosen Infrastruktur zum Connector zulassen.
Fehler bezüglich verweigerter Verbindung
Wenn Sie connection refused
- oder connection timeout
-Fehler erhalten, die die Netzwerkleistung beeinträchtigen, könnten Ihre Verbindungen unbegrenzt über Aufrufe Ihrer serverlosen Anwendung hinweg wachsen. Verwenden Sie eine Clientbibliothek, die Verbindungspools unterstützt, um die maximale Anzahl der pro Instanz verwendeten Verbindungen zu begrenzen. Ausführliche Beispiele zu Verbindungspools finden Sie unter Datenbankverbindungen verwalten.
Fehler bezüglich nicht gefundener Ressource
Wenn Sie ein VPC-Netzwerk oder eine Firewallregel löschen, wird möglicherweise eine Meldung wie diese angezeigt: The resource
"aet-uscentral1-subnet--1-egrfw" was not found.
Informationen zu diesem Fehler und zu seiner Behebung finden Sie in der Dokumentation zu VPC-Firewallregeln unter Fehler bezüglich nicht gefundener Ressource.
Nächste Schritte
- Administratoraktivitäten mit dem Audit-Logging für den serverlosen VPC-Zugriff überwachen.
- Schützen Sie Ressourcen und Daten, indem Sie mit VPC Service Controls einen Dienstperimeter erstellen.
- Mehr über die IAM-Rollen (Identity and Access Management) für den serverlosen VPC-Zugriff erfahren. Unter Rollen für serverlosen VPC-Zugriff in der IAM-Dokumentation finden Sie eine Liste der Berechtigungen, die mit jeder Rolle verknüpft sind.
- Informationen zum Herstellen einer Verbindung zu Memorystore von: