Configurar límites de memoria para tareas

Puedes elegir la cantidad de memoria que quieres asignar a tu trabajo de Cloud Run. En esta página se describe cómo especificar la cantidad de memoria disponible para tu trabajo.

Información sobre el uso de memoria

Las instancias de Cloud Run que superen el límite de memoria permitido se terminarán.

La memoria disponible de tu instancia debe ser suficiente para lo siguiente:

  • Ejecutar el archivo ejecutable de la tarea, ya que debe cargarse en la memoria
  • Asignar memoria en el proceso de tu trabajo
  • Escribir archivos en el sistema de archivos

El tamaño de la imagen de contenedor desplegada no afecta a la memoria disponible para la instancia.

Definir y actualizar límites de memoria

Puedes definir límites de memoria en los trabajos de Cloud Run. De forma predeterminada, la memoria asignada a cada trabajo es de 512 MiB.

CPUs mínimas necesarias

La cantidad de memoria asignada que elijas se corresponde con una cantidad mínima de CPU para tu tarea. Cuando se establece un límite de memoria, se requieren los siguientes límites mínimos de CPU:

Memoria CPUs mínimas necesarias
128 MiB 0,083 vCPU
256 MiB 0,167 vCPU
512 MiB 0,333 vCPU
1 GiB 0,583 vCPU
2 GiB 1 vCPU
Más de 4 GiB 2 vCPUs
Más de 8 GiB 4 vCPUs
Más de 16 GiB 6 vCPUs
Más de 24 GiB 8 vCPUs

Cantidad máxima de memoria

La cantidad máxima de memoria que puedes configurar es de 32 gibibytes (32 Gi).

Memoria mínima

La cantidad mínima de memoria que puedes configurar en el entorno de ejecución de segunda generación es de 512 MiB.

Roles obligatorios

Para obtener los permisos que necesitas para configurar los trabajos de Cloud Run, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos:

Para ver una lista de los roles y permisos de gestión de identidades y accesos asociados a Cloud Run, consulta los artículos sobre roles de gestión de identidades y accesos de Cloud Run y permisos de gestión de identidades y accesos de Cloud Run. Si tu trabajo de Cloud Run interactúa con APIs deGoogle Cloud , como las bibliotecas de cliente de Cloud, consulta la guía de configuración de la identidad de servicio. Para obtener más información sobre cómo conceder roles, consulta los artículos sobre permisos de implementación y gestión del acceso.

Configurar límites de memoria

Debes especificar un mínimo de 512 Mi para un trabajo de Cloud Run. Para especificar la memoria de un trabajo de Cloud Run, sigue estos pasos:

Consola

  1. En la Google Cloud consola, ve a la página de trabajos de Cloud Run:

    Ir a Cloud Run

  2. Seleccione Trabajos en el menú y haga clic en Implementar contenedor para rellenar la página de configuración inicial del trabajo. Si vas a configurar un trabajo que ya existe, selecciona el trabajo y haz clic en Editar.

  3. Haz clic en Contenedores, volúmenes, conexiones y seguridad para desplegar la página de propiedades del trabajo.

  4. Haz clic en la pestaña Contenedor.

    imagen

    • Selecciona el tamaño de memoria que quieras en la lista desplegable Memoria.
  5. Haz clic en Crear o en Actualizar.

gcloud

  1. Para definir límites de memoria al crear un trabajo, sigue estos pasos:

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

    Sustituye:

    • JOB_NAME con el nombre del trabajo.
    • IMAGE_URL: una referencia a la imagen del contenedor, por ejemplo, us-docker.pkg.dev/cloudrun/container/job:latest.
    • SIZE con el tamaño de memoria que quieras. El formato del tamaño es un número de coma fija o flotante seguido de una unidad: G o M, que corresponden a gigabytes o megabytes, respectivamente. También puedes usar los equivalentes de potencia de dos: Gi o Mi, que corresponden a gibibytes o mebibytes, respectivamente.
  2. Para definir límites de memoria al actualizar un trabajo, sigue estos pasos:

    gcloud run jobs update JOB_NAME --memory SIZE

YAML

  1. Si vas a crear un trabajo, sáltate este paso. Si vas a actualizar una tarea, descarga su configuración YAML:

    gcloud run jobs describe JOB_NAME --format export > job.yaml
  2. Actualice el atributo memory:

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

    Sustituye SIZE por el tamaño de memoria que quieras, con un mínimo de 512 Mi. El formato es un número de punto fijo o flotante seguido de una unidad: G o M, que corresponden a gigabytes o megabytes, respectivamente. También puedes usar los equivalentes en potencias de dos: Gi o Mi, que corresponden a gibibytes o mebibytes, respectivamente.

    También puede especificar más configuraciones, como variables de entorno o límites de memoria.

  3. Actualiza la configuración de la tarea:

    gcloud run jobs replace job.yaml

Terraform

Para saber cómo aplicar o quitar una configuración de Terraform, consulta Comandos básicos de Terraform.

Añade lo siguiente a un recurso google_cloud_run_v2_job en tu configuración de 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"
          }
        }
      }
    }
  }
}

Sustituye:

  • REGION con la región Google Cloud . Por ejemplo, europe-west1.
  • SIZE con el tamaño de memoria necesario, especificando un mínimo de 512 Mi. El formato es un número de punto fijo o flotante seguido de una unidad: G o M, que corresponden a gigabytes o megabytes, respectivamente. También puedes usar los equivalentes en potencias de dos: Gi o Mi, que corresponden a gibibytes o mebibytes, respectivamente.

Ver los ajustes de límite de memoria

Para ver la configuración actual del límite de memoria de tu trabajo de Cloud Run, sigue estos pasos:

Consola

  1. En la Google Cloud consola, ve a la página de trabajos de Cloud Run:

    Ir a tareas de Cloud Run

  2. Haz clic en el trabajo que te interese para abrir la página Detalles del trabajo.

  3. Haz clic en Ver y editar configuración de trabajo.

  4. Busca el ajuste del límite de memoria en los detalles de la configuración.

gcloud

  1. Usa el siguiente comando:

    gcloud run jobs describe JOB_NAME
  2. Busca el ajuste del límite de memoria en la configuración devuelta.