Speicherlimits für Jobs konfigurieren

Sie können die Menge an Arbeitsspeicher auswählen, die für Ihren Cloud Run-Job bereitgestellt werden soll. Auf dieser Seite wird beschrieben, wie Sie die für Ihren Job verfügbare Arbeitsspeichermenge 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 Jobs, da die ausführbare Datei in den Arbeitsspeicher geladen werden muss
  • Zuweisen von Arbeitsspeicher im Jobprozess
  • Schreiben von Dateien in das Dateisystem

Die Größe des bereitgestellten Container-Images hat keinen Einfluss auf den für die Instanz verfügbaren Arbeitsspeicher.

Speicherlimits festlegen und aktualisieren

Sie können Arbeitsspeicherlimits für Cloud Run-Jobs festlegen. Standardmäßig beträgt der jedem Job zugewiesene Arbeitsspeicher 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.

Mindestspeicher

Die Mindestspeichermenge, die Sie in der Ausführungsumgebung der zweiten Generation konfigurieren können, beträgt 512 MiB.

Kostengesichtspunkte

Die Kosten für Ihren Cloud Run-Job werden unter anderem durch die Arbeitsspeicherkonfiguration und die Dauer der Aktivität Ihrer Ressource beeinflusst. Wenn Sie Ihre Ressourcen überdimensionieren, können Ihre Kosten steigen. So ermitteln Sie, welche Arbeitsspeicherkonfiguration für Ihre Ressource am besten geeignet ist:

  1. Legen Sie eine anfängliche Baseline-Konfiguration fest.
  2. Beobachten Sie Ihre Arbeitsspeicherauslastungs-Messwerte in Cloud Monitoring, während Sie das System unter Last testen.
  3. Passen Sie die Konfiguration nach Bedarf an.

Wenn die Arbeitsspeicherauslastung konstant niedrig ist, sollten Sie den zugewiesenen Arbeitsspeicher reduzieren. Wenn die Latenz hoch und die Arbeitsspeicherauslastung nahe 100 % liegt, sollten Sie den zugewiesenen Arbeitsspeicher erhöhen. Wenn Fehler aufgrund von Arbeitsspeichermangel auftreten, sollten Sie den zugewiesenen Arbeitsspeicher erhöhen oder Ihre Anwendung so ändern, dass Arbeitsspeicherlecks vermieden werden und weniger Arbeitsspeicher verwendet wird. Im Cloud Monitoring-Dashboard finden Sie weitere Informationen zur Arbeitsspeicherauslastung.

Weitere Informationen finden Sie unter Cloud Run-Preise oder schätzen Sie die Kosten mit dem Preisrechner.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zu gewähren, um die zum Konfigurieren von Cloud Run-Jobs erforderlichen Berechtigungen zu erhalten:

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-Job 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.

Speicherlimits konfigurieren

Für einen Cloud Run-Job müssen mindestens 512Mi angegeben werden. So geben Sie den Arbeitsspeicher für einen Cloud Run-Job an:

Console

  1. Rufen Sie in der Google Cloud Console die Seite Cloud Run-Jobs auf:

    Zu Cloud Run

  2. Klicken Sie auf Container bereitstellen , um die Seite mit den anfänglichen Jobeinstellungen auszufüllen. Wenn Sie einen vorhandenen Job konfigurieren, wählen Sie den Job aus und klicken Sie dann auf Jobkonfiguration ansehen und bearbeiten.

  3. Klicken Sie auf Container, Verbindungen, Sicherheit , um die Seite mit den Jobattributen zu maximieren.

  4. Klicken Sie auf den Tab Container.

    Bild

    • Wählen Sie die gewünschte Arbeitsspeichergröße aus der Drop-down-Liste Arbeitsspeicher aus.
  5. Klicken Sie auf Erstellen oder Aktualisieren.

gcloud

  1. So legen Sie Arbeitsspeicherlimits beim Erstellen eines Jobs fest:

    gcloud run jobs create JOB_NAME --image IMAGE_URL --memory SIZE

    Ersetzen Sie:

    • JOB_NAME durch den Namen des Jobs.
    • IMAGE_URL: ein Verweis auf das Container-Image, z. B. us-docker.pkg.dev/cloudrun/container/job:latest.
    • SIZE durch die gewünschte Arbeitsspeichergröße. 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.
  2. So legen Sie Arbeitsspeicherlimits beim Aktualisieren eines Jobs fest:

    gcloud run jobs update JOB_NAME --memory SIZE

YAML

  1. 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
  2. Aktualisieren Sie das Attribut memory:

    apiVersion: run.googleapis.com/v1
    kind: Job
    metadata:
      name: JOB
    spec:
      template:
        spec:
          template:
            spec:
          containers:
          - image: IMAGE
            resources:
              limits:
                memory: SIZE

    Ersetzen Sie SIZE durch die gewünschte Speichergröße und geben Sie mindestens 512 Mi an. Das Format ist eine feste Zahl oder Gleitkommazahl gefolgt von der Einheit: G oder M, was Gigabyte oder Megabyte entspricht. Alterntiv verwenden Sie die Potenz von zwei Entsprechungen: Gi oder Mi, was Gibibyte bzw. Mebibyte entspricht.

    Sie können auch weitere Konfigurationen angeben, z. B. Umgebungsvariablen oder Speicherlimits.

  3. Aktualisieren Sie die vorhandene Jobkonfiguration:

    gcloud run jobs replace job.yaml

Terraform

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

Fügen Sie einer google_cloud_run_v2_job Ressource in Ihrer Terraform-Konfiguration Folgendes hinzu:

resource "google_cloud_run_v2_job" "default" {
  name     = "cloudrun-job"
  location = "REGION"
  deletion_protection = false

  template {
    template {
      containers {
        image = "us-docker.pkg.dev/cloudrun/container/job"
        resources {
          limits = {
            cpu    = "2"
            memory = "SIZE"
          }
        }
      }
    }
  }
}

Ersetzen Sie:

  • REGION durch die Google Cloud Region. Beispiel: europe-west1.
  • SIZE durch die erforderliche Arbeitsspeichergröße und geben Sie mindestens 512 Mi an. Das Format ist eine feste Zahl oder Gleitkommazahl gefolgt von der Einheit: G oder M, was Gigabyte oder Megabyte entspricht. Alternativ verwenden Sie die Potenz von zwei Entsprechungen: Gi oder Mi was Gibibyte bzw. Mebibyte entspricht.

Einstellungen für das Speicherlimit anzeigen

So rufen Sie die aktuellen Einstellungen für das Speicherlimit für Ihren Cloud Run-Job auf:

Console

  1. Rufen Sie in der Google Cloud Console die Seite „Cloud Run-Jobs“ auf:

    Zu Cloud Run-Jobs

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

  3. Klicken Sie auf Jobkonfiguration ansehen und bearbeiten.

  4. Suchen Sie die Einstellung für das Speicherlimit in den Konfigurationsdetails.

gcloud

  1. Verwenden Sie den folgenden Befehl:

    gcloud run jobs describe JOB_NAME
  2. Suchen Sie in der zurückgegebenen Konfiguration nach der Einstellung für das Speicherlimit.