Configurare i limiti di memoria per i job

Puoi scegliere la quantità di memoria da fornire per il job Cloud Run. Questa pagina descrive come specificare la quantità di memoria disponibile per il tuo job.

Informazioni sull'utilizzo della memoria

Le istanze Cloud Run che superano il limite di memoria consentito vengono terminate.

La memoria disponibile per l'istanza deve essere sufficiente per:

  • Esecuzione dell'eseguibile del job, perché l'eseguibile deve essere caricato in memoria
  • Allocazione della memoria nel processo del job
  • Scrittura di file nel file system

Le dimensioni dell'immagine container di cui è stato eseguito il deployment non influiscono sulla memoria disponibile per l'istanza.

Impostare e aggiornare i limiti di memoria

Puoi impostare limiti di memoria per i job Cloud Run. Per impostazione predefinita, la memoria allocata a ogni job è 512 MiB.

CPU minime richieste

La quantità di memoria allocata che scegli corrisponde a una quantità minima di CPU per il tuo job. Quando imposti un limite di memoria, sono necessari i seguenti limiti minimi di CPU:

Memoria Numero minimo di CPU richieste
128 MiB 0,083 vCPU
256 MiB .167 vCPU
512 MiB 0,333 vCPU
1 GiB 0,583 vCPU
2 GiB 1 vCPU
Più di 4 GiB 2 vCPU
Più di 8 GiB 4 vCPU
Più di 16 GiB 6 vCPU
Più di 24 GiB 8 vCPU

Quantità massima di memoria

La quantità massima di memoria che puoi configurare è 32 gibibyte (32 Gi).

Memoria minima

La quantità minima di memoria che puoi configurare nell'ambiente di esecuzione di seconda generazione è 512 MiB.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per configurare i job Cloud Run, chiedi all'amministratore di concederti i seguenti ruoli IAM:

Per un elenco di ruoli e autorizzazioni IAM associati a Cloud Run, consulta Ruoli IAM Cloud Run e Autorizzazioni IAM Cloud Run. Se il tuo job Cloud Run interagisce con le APIGoogle Cloud , come le librerie client Cloud, consulta la guida alla configurazione dell'identità del servizio. Per ulteriori informazioni sulla concessione dei ruoli, consulta Autorizzazioni di deployment e Gestire l'accesso.

Configurare i limiti di memoria

Devi specificare un minimo di 512 Mi per un job Cloud Run. Per specificare la memoria per un job Cloud Run:

Console

  1. Nella Google Cloud console, vai alla pagina dei job Cloud Run:

    Vai a Cloud Run

  2. Seleziona Job dal menu e fai clic su Deploy container per compilare la pagina delle impostazioni iniziali del job. Se stai configurando un job esistente, seleziona il job, poi fai clic su Modifica.

  3. Fai clic su Container, volumi, connessioni, sicurezza per espandere la pagina delle proprietà del job.

  4. Fai clic sulla scheda Contenitore.

    immagine

    • Seleziona la dimensione della memoria che preferisci dall'elenco a discesa Memoria.
  5. Fai clic su Crea o Aggiorna.

gcloud

  1. Per impostare i limiti di memoria quando crei un job:

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

    Sostituisci:

    • JOB_NAME con il nome del job.
    • IMAGE_URL con un riferimento all'immagine container, ad esempio us-docker.pkg.dev/cloudrun/container/job:latest.
    • SIZE con le dimensioni della memoria desiderate. Il formato per le dimensioni è un numero a virgola fissa o mobile seguito da un'unità: G o M corrispondenti rispettivamente a gigabyte o megabyte oppure utilizza gli equivalenti in base 2: Gi o Mi corrispondenti rispettivamente a gibibyte o mebibyte.
  2. Per impostare i limiti di memoria quando aggiorni un job:

    gcloud run jobs update JOB_NAME --memory SIZE

YAML

  1. Se stai creando un nuovo job, salta questo passaggio. Se stai aggiornando un job esistente, scarica la relativa configurazione YAML:

    gcloud run jobs describe JOB_NAME --format export > job.yaml
  2. Aggiorna l'attributo memory:

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

    Sostituisci SIZE con la dimensione di memoria desiderata, specificando un minimo di 512 Mi. Il formato è un numero in virgola fissa o mobile seguito da un'unità: G o M corrispondente rispettivamente a gigabyte o megabyte oppure utilizza gli equivalenti in base alla potenza di 2: Gi o Mi corrispondente rispettivamente a gibibyte o mebibyte.

    Puoi anche specificare altre configurazioni, come variabili di ambiente o limiti di memoria.

  3. Aggiorna la configurazione del job esistente:

    gcloud run jobs replace job.yaml

Terraform

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.

Aggiungi quanto segue a una risorsa google_cloud_run_v2_job nella configurazione Terraform:

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"
          }
        }
      }
    }
  }
}

Sostituisci:

  • REGION con la regione Google Cloud . Ad esempio europe-west1.
  • SIZE con le dimensioni della memoria richieste, specificando un minimo di 512 Mi. Il formato è un numero in virgola fissa o mobile seguito da un'unità: G o M corrispondente rispettivamente a gigabyte o megabyte oppure utilizza gli equivalenti in base alla potenza di 2: Gi o Mi corrispondente rispettivamente a gibibyte o mebibyte.

Visualizzare le impostazioni del limite di memoria

Per visualizzare le impostazioni attuali del limite di memoria per il tuo job Cloud Run:

Console

  1. Nella Google Cloud console, vai alla pagina dei job Cloud Run:

    Vai ai job Cloud Run

  2. Fai clic sull'offerta di lavoro che ti interessa per aprire la pagina Dettagli offerta di lavoro.

  3. Fai clic su Visualizza e modifica la configurazione del job.

  4. Individua l'impostazione del limite di memoria nei dettagli della configurazione.

gcloud

  1. Utilizza questo comando:

    gcloud run jobs describe JOB_NAME
  2. Individua l'impostazione del limite di memoria nella configurazione restituita.