Auf dieser Seite wird beschrieben, wie Sie die Anzahl der zu verwendenden vCPUs für jede Cloud Run-Instanz angeben. Cloud Run-Containerinstanzen sind standardmäßig auf 2 vCPUs beschränkt. Sie können diesen Wert wie auf dieser Seite beschrieben erhöhen oder verringern.
vCPU-Limits festlegen und aktualisieren
Standardmäßig ist jede Instanz auf 2 vCPUs und 2 GiB Arbeitsspeicher festgelegt. Sie können dies in einen der Werte in der folgenden Tabelle ändern.
Die Nebenläufigkeit ist nicht konfigurierbar, sie ist auf 80 festgelegt.
Tabelle für vCPUs und Arbeitsspeicher
Im Folgenden sind die Arbeitsspeicheranforderungen für vCPUs aufgeführt:
| CPUs | Erforderlicher Arbeitsspeicher |
|---|---|
| 1 vCPU | 512 MiB bis 4 GiB |
| 2 vCPUs | 512 MiB bis 8 GiB |
| 4 vCPUs | 2 bis 16 GiB |
| 6 vCPUs | 4 bis 24 GiB |
| 8 vCPUs | 4 bis 32 GiB |
Werte über 1 müssen Ganzzahlen sein.
Maximale Anzahl von vCPUs
Die maximale Anzahl von vCPUs, die Sie konfigurieren können, beträgt 8 vCPUs.
Mindestanzahl von vCPUs
Die Mindestanzahl von vCPUs für die Instanz beträgt 1 vCPU. Jeder Container kann mit fraktionierten CPUs konfiguriert werden. Die Summe aller Container in der Instanz muss jedoch mindestens 1 vCPU betragen.
Kostengesichtspunkte
Die Kosten für Ihre Cloud Run-Ressource werden unter anderem durch die CPU-Konfiguration und die Dauer der Aktivität der Ressource beeinflusst. Wenn Sie Ihre Ressourcen überdimensionieren, können Ihre Kosten steigen. So ermitteln Sie, welche CPU-Konfiguration für Ihre Ressource am besten geeignet ist:
- Legen Sie eine anfängliche Baseline-Konfiguration für ein CPU-Limit fest, das die CPU-Auslastung und die Kosten ausgleicht.
- Behalten Sie die Messwerte zur CPU-Auslastung in Cloud Monitoring im Blick, während Sie das System unter Last testen.
- Passen Sie die CPU-Konfiguration nach Bedarf an.
Wenn die CPU-Auslastung unter Spitzenlast konstant niedrig ist, sollten Sie die vCPU-Zuweisung reduzieren. Wenn die Latenz hoch ist, sollten Sie die vCPU-Zuweisung erhöhen.
Auf der Seite Cloud Hub-Optimierung finden Sie zusammenfassende Kostendaten, Nutzungsdaten und Empfehlungen zur Kostenoptimierung für Ressourcen. Weitere Informationen finden Sie unter Cloud Run-Preise oder schätzen Sie die Kosten mit dem Preisrechner.
CPU-Burst und ‑Drosselung
Cloud Run-Instanzen verwenden ein gemeinsames CPU-Zuweisungsmodell mit Baseline-Kontingenten und Burst-Funktion, das ähnlich wie die cgroup-Zuweisung des Linux-Planers verwaltet wird.
Wenn Sie vCPU-Limits für eine Cloud Run-Instanz konfigurieren, besteht das CPU-Verhalten aus den folgenden Mechanismen:
- Grundkontingent: Jeder Instanz wird eine kontinuierliche Baseline von 6,25% (1/16) pro konfigurierter vCPU zugewiesen. Sie können Ihre Instanz unbegrenzt innerhalb dieser Baseline ausführen.
- Burst-Kapazität:Wenn Ihre Instanz unter ihrer Baseline-Kapazität ausgeführt wird, wird kontinuierlich ungenutzte CPU-Zeit in ein Burst-Guthabenbudget (bis zu 500 Sekunden) angesammelt. Wenn Ihre Arbeitslast rechenintensive Aufgaben auslöst, wird die Instanz automatisch auf bis zu 100% der konfigurierten vCPU-Zuweisung erhöht, bis das angesammelte Burst-Guthaben aufgebraucht ist.
- Drosselung:Sobald das Burst-Guthaben bei hoher CPU-Auslastung aufgebraucht ist, wird die Instanz wieder auf ihr Grundkontingent (6,25% pro konfigurierter vCPU) gedrosselt, bis zusätzliches Burst-Guthaben angesammelt ist.
- Auffüllung:Das Burst-Budget wird immer dann aufgefüllt, wenn die CPU-Nutzung unter die Baseline von 6,25% fällt.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren und Bereitstellen von Cloud Run-Instanzen benötigen:
- Cloud Run-Entwickler (
roles/run.developer) für die Cloud Run-Instanz - Dienstkontonutzer (
roles/iam.serviceAccountUser) für die Dienstidentität
Eine Liste der IAM-Rollen und -Berechtigungen im Zusammenhang mit Cloud Run finden Sie unter IAM-Rollen für Cloud Run und IAM-Berechtigungen für Cloud Run. Wenn Ihre Cloud Run-Instanz mit Google Cloud APIs wie Cloud-Clientbibliotheken verknüpft ist, lesen Sie die Konfigurationsanleitung für Dienstidentitäten. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Bereitstellungsberechtigungen und Zugriff verwalten.
CPU-Limits konfigurieren
Sie können CPU-Limits für eine Cloud Run-Instanz mit der Google Cloud CLI oder YAML festlegen:
gcloud
Mit dem folgenden Befehl können Sie die CPU-Limits für eine bestimmte Instanz aktualisieren:
gcloud beta run instances update INSTANCE --cpu CPU
Ersetzen Sie Folgendes:
- INSTANCE: Der Name der Instanz.
- CPU: Das CPU-Limit. Geben Sie den Wert
1,2,4,6, oder8CPUs an und folgen Sie dabei den Anforderungen in der Tabelle für CPUs und Arbeitsspeicher.
Sie können die CPU auch während der Bereitstellung mit dem folgenden Befehl festlegen:
gcloud beta run instances deploy --image IMAGE_URL --cpu CPU
Ersetzen Sie Folgendes:
IMAGE_URL: Ein Verweis auf das Container-Image, z. B.us-docker.pkg.dev/cloudrun/container/hello:latest.- CPU: Der Wert
1,2,4,6, oder8CPUs, entsprechend den Anforderungen in der Tabelle für CPUs und Arbeitsspeicher.
YAML
Wenn Sie eine neue Instanz erstellen, überspringen Sie diesen Schritt. Wenn Sie eine vorhandene Instanz aktualisieren, laden Sie die zugehörige YAML-Konfiguration herunter:
gcloud beta run instances describe INSTANCE --format export > instance.yaml
Das folgende Beispiel enthält die YAML-Konfiguration:
apiVersion: run.googleapis.com/v1 kind: Instance metadata: name: INSTANCE annotations: run.googleapis.com/launch-stage: BETA spec: containers: — image: IMAGE_URL resources: limits: cpu: `CPU`
Ersetzen Sie Folgendes:
- INSTANCE: Der Name Ihrer Cloud Run-Instanz.
IMAGE_URL: Ein Verweis auf das Container-Image, z. B.us-docker.pkg.dev/cloudrun/container/hello:latest.- CPU: Der Wert für das CPU-Limit.
Geben Sie den Wert
1,2,4,6oder8CPUs oder für weniger als 1 CPU einen Wert zwischen 0,08 und weniger als 1,00 in Schritten von 0,01 an. Die erforderlichen Einstellungen finden Sie in der Tabelle unter CPU-Limits festlegen und aktualisieren.
Erstellen oder aktualisieren Sie die Instanz mit dem folgenden Befehl:
gcloud beta run instances replace instance.yaml
Beispielszenario: Instanz mit 2 vCPUs
Wenn eine Instanz mit einem Limit von 2 vCPUs konfiguriert ist:
- Baseline-Betrieb:Die Instanz kann konstant mit bis zu 0,125 vCPUs (6,25% von 2 vCPUs) ausgeführt werden. Während des Betriebs unter dieser Baseline wird Burst-Guthaben angesammelt.
- Vollständiger Burst:Wenn die Arbeitslast zusätzliche Rechenleistung erfordert, wird die Instanz auf bis zu 2 vCPUs (100% Auslastung) erhöht und das angesammelte Burst-Budget wird verbraucht.
- Drosselung:Wenn das Burst-Guthaben aufgebraucht ist, wird die Instanz wieder auf die Baseline von 0,125 vCPUs gedrosselt, bis neues Burst-Guthaben angesammelt ist.
CPU-Konfiguration für die Instanz ansehen
Mit dem Google Cloud CLI-Befehl gcloud beta run instances describe können Sie Konfigurationsdetails aufrufen.