Speicherlimits für Worker-Pools konfigurieren

Sie können die Menge an Arbeitsspeicher auswählen, die für Ihren Cloud Run-Worker-Pool bereitgestellt werden soll. Auf dieser Seite wird beschrieben, wie Sie die Größe des Arbeitsspeichers für Ihren Worker-Pool angeben.

Grundlegendes zur Arbeitsspeichernutzung

Cloud Run-Instanzen, die das zulässige Arbeitsspeicherlimit überschreiten, werden beendet.

Der verfügbare Arbeitsspeicher für Ihre Instanz muss für Folgendes ausreichen:

  • Ausführen der ausführbaren Datei des Worker-Pools, da die ausführbare Datei in den Arbeitsspeicher geladen werden muss
  • Zuweisen von Arbeitsspeicher im Worker-Pool-Prozess
  • Schreiben von Dateien in das Dateisystem

Die Größe des bereitgestellten Container-Images wirkt sich nicht auf den für die Instanz verfügbaren Arbeitsspeicher aus.

Speicherlimits festlegen und aktualisieren

Sie können Arbeitsspeicherlimits für Cloud Run-Worker-Pools festlegen. Standardmäßig beträgt der jedem Worker-Pool zugewiesene Speicher 512 MiB.

Erforderlicher Arbeitsspeicher beim Festlegen eines CPU-Werts

Beim Festlegen eines CPU-Werts ist der folgende Arbeitsspeicher erforderlich:

CPUs Erforderlicher Arbeitsspeicher
1 vCPU 128 MiB bis 4 GiB
2 vCPU 128 MiB bis 8 GiB
4 vCPU 2 bis 16 GiB
6 vCPU 4 bis 24 GiB
8 vCPU 4 bis 32 GiB

Maximale Arbeitsspeichermenge

Sie können maximal 32 Gibibyte (32 Gi) Arbeitsspeicher konfigurieren.

Sie können ein maximales Arbeitsspeicherlimit mit benutzerdefinierten Organisationsrichtlinien erzwingen.

Mindestspeicher

Die Mindestspeichereinstellung beträgt 512 MiB.

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-Worker-Pools benötigen:

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 Ihr Cloud Run-Workerpool mitGoogle 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.

Speicherlimits konfigurieren

Jede Konfigurationsänderung führt zur Erstellung einer neuen Überarbeitung. Für nachfolgende Überarbeitungen gilt automatisch dieselbe Konfigurationseinstellung, sofern Sie sie nicht explizit aktualisieren.

Sie können Arbeitsspeicherlimits für einen Cloud Run-Workerpool mit derGoogle Cloud Console, der Google Cloud CLI, YAML oder Terraform festlegen:

Console

  1. Rufen Sie in der Google Cloud Console Cloud Run auf:

    Zu Cloud Run

  2. Wählen Sie im Menü Worker-Pools aus und klicken Sie auf Container bereitstellen, um einen neuen Worker-Pool zu konfigurieren. Wenn Sie einen vorhandenen Workerpool konfigurieren möchten, klicken Sie auf den Workerpool und dann auf Neue Überarbeitung bearbeiten und bereitstellen.

  3. Wenn Sie einen neuen Worker-Pool konfigurieren, füllen Sie die Seite mit den anfänglichen Worker-Pool-Einstellungen aus und klicken Sie dann auf Container, Volumes, Netzwerk, Sicherheit, um die Seite zur Konfiguration von Worker-Pools zu maximieren.

  4. Klicken Sie auf den Tab Container.

    Image

    • Wählen Sie die Arbeitsspeichergröße aus der Liste Arbeitsspeicher aus.
  5. Klicken Sie auf Erstellen oder Bereitstellen.

gcloud

Mit dem folgenden Befehl können Sie die Speicherzuordnung eines bestimmten Worker-Pools aktualisieren:

gcloud beta run worker-pools update WORKER_POOL --memory SIZE

Ersetzen Sie Folgendes:

  • WORKER_POOL: der Name Ihres Worker-Pools
  • SIZE: eine Arbeitsspeichergröße aus der Tabelle für CPU und Arbeitsspeicher. Das Format für die Größe ist eine feste oder Gleitkommazahl gefolgt von einer Einheit: G oder M, die dem Gigabyte oder Megabyte entspricht, oder verwenden Sie die Potenz von zwei Entsprechungen: Gi oder Mi, die Gibibyte bzw. Mebibyte entsprechen.

Sie können die Speicherlimits auch während der Bereitstellung festlegen. Verwenden Sie folgenden Befehl:

gcloud beta run worker-pools deploy --image IMAGE_URL --memory SIZE

Ersetzen Sie Folgendes:

  • IMAGE_URL: Ein Verweis auf das Container-Image, das den Worker-Pool enthält, z. B. us-docker.pkg.dev/cloudrun/container/worker-pool:latest.
  • SIZE: eine Arbeitsspeichergröße aus der Tabelle für CPU und Arbeitsspeicher. Das Format für die Größe ist eine feste oder Gleitkommazahl gefolgt von einer Einheit: G oder M, die dem Gigabyte oder Megabyte entspricht, oder verwenden Sie die Potenz von zwei Entsprechungen: Gi oder Mi, die Gibibyte bzw. Mebibyte entsprechen.

YAML

  1. Wenn Sie einen neuen Worker-Pool erstellen, überspringen Sie diesen Schritt. Wenn Sie einen vorhandenen Worker-Pool aktualisieren, laden Sie die zugehörige YAML-Konfiguration herunter:

    gcloud beta run worker-pools describe WORKER_POOL --format export > workerpool.yaml
  2. Das folgende Beispiel enthält die YAML-Konfiguration:

    apiVersion: run.googleapis.com/v1
    kind: WorkerPool
    metadata:
      name: WORKER_POOL
      annotations:
        run.googleapis.com/launch-stage: BETA
    spec:
      template:
        spec:
          containers:
          - image: IMAGE_URL
            resources:
              limits:
                memory: SIZE

    Ersetzen Sie Folgendes:

    • WORKER_POOL: Der Name Ihres Cloud Run-Worker-Pools.
    • IMAGE_URL: Ein Verweis auf das Container-Image, das den Worker-Pool enthält, z. B. us-docker.pkg.dev/cloudrun/container/worker-pool:latest.
    • SIZE: die ausgewählte Speichergröße. Das Format ist eine feste oder Gleitkommazahl gefolgt von einer Einheit:G oderM dem Gigabyte oder Megabyte entspricht, oder verwenden Sie die Potenz von zwei Entsprechungen: Gi oderMi, die Gibibyte bzw. Mebibyte entsprechen.
  3. Erstellen oder aktualisieren Sie den Worker-Pool mit dem folgenden Befehl:

    gcloud beta run worker-pools replace workerpool.yaml

Terraform

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.

resource "google_cloud_run_v2_worker_pool" "default" {
  name     = "WORKER_POOL"
  location = "REGION"
  launch_stage = "BETA"

  template {
    containers {
      image = "IMAGE_URL"
      resources {
        limits = {
          memory = "SIZE"
        }
      }
    }
  }
}

Ersetzen Sie Folgendes:

  • WORKER_POOL: der Name des Worker-Pools.
  • REGION: die Google Cloud Region. Beispiel: europe-west1.
  • IMAGE_URL: ein Verweis auf das Container-Image, das den Worker-Pool enthält, z. B. us-docker.pkg.dev/cloudrun/container/worker-pool:latest
  • SIZE: eine Arbeitsspeichergröße aus der Tabelle für CPU und Arbeitsspeicher. Das Format für die Größe ist eine feste oder Gleitkommazahl gefolgt von einer Einheit: G oder M, die dem Gigabyte oder Megabyte entspricht, oder verwenden Sie die Potenz von zwei Entsprechungen: Gi oder Mi, die Gibibyte bzw. Mebibyte entsprechen.

Speicherkonfiguration für den Worker-Pool ansehen

  1. Rufen Sie in der Google Cloud Console Cloud Run auf:

    Zu Cloud Run

  2. Klicken Sie auf Worker-Pools, um die Liste der bereitgestellten Worker-Pools aufzurufen.

  3. Klicken Sie auf den Worker-Pool, den Sie untersuchen möchten, um den zugehörigen Detailbereich aufzurufen.

  4. Klicken Sie auf den Tab Container, um die Speicherkonfiguration des Worker-Pools für jeden Container aufzurufen.