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:
-
Desarrollador de Cloud Run (
roles/run.developer
) en la tarea de Cloud Run -
Usuario de cuenta de servicio (
roles/iam.serviceAccountUser
) en la identidad de servicio
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
En la Google Cloud consola, ve a la página de trabajos de Cloud Run:
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.
Haz clic en Contenedores, volúmenes, conexiones y seguridad para desplegar la página de propiedades del trabajo.
Haz clic en la pestaña Contenedor.
- Selecciona el tamaño de memoria que quieras en la lista desplegable Memoria.
Haz clic en Crear o en Actualizar.
gcloud
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
oM
, que corresponden a gigabytes o megabytes, respectivamente. También puedes usar los equivalentes de potencia de dos:Gi
oMi
, que corresponden a gibibytes o mebibytes, respectivamente.
Para definir límites de memoria al actualizar un trabajo, sigue estos pasos:
gcloud run jobs update JOB_NAME --memory SIZE
YAML
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
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
oM
, que corresponden a gigabytes o megabytes, respectivamente. También puedes usar los equivalentes en potencias de dos:Gi
oMi
, que corresponden a gibibytes o mebibytes, respectivamente.También puede especificar más configuraciones, como variables de entorno o límites de memoria.
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 recursogoogle_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
oM
, que corresponden a gigabytes o megabytes, respectivamente. También puedes usar los equivalentes en potencias de dos:Gi
oMi
, 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
En la Google Cloud consola, ve a la página de trabajos de Cloud Run:
Haz clic en el trabajo que te interese para abrir la página Detalles del trabajo.
Haz clic en Ver y editar configuración de trabajo.
Busca el ajuste del límite de memoria en los detalles de la configuración.
gcloud
Usa el siguiente comando:
gcloud run jobs describe JOB_NAME
Busca el ajuste del límite de memoria en la configuración devuelta.