Puedes elegir la cantidad de memoria que deseas proporcionar para tu grupo de trabajadores de Cloud Run. En esta página, se describe cómo especificar la cantidad de memoria disponible para tu grupo de trabajadores.
Comprende el uso de la memoria
Las instancias de Cloud Run que superan el límite de memoria permitido se finalizan.
La memoria disponible para tu instancia debe ser suficiente para lo siguiente:
- Ejecutar el ejecutable del grupo de trabajadores, ya que este debe cargarse en la memoria
- Asignar memoria en el proceso del grupo de trabajadores
- Escribir archivos en el sistema de archivos
El tamaño de la imagen de contenedor implementada no afecta la memoria disponible para la instancia.
Configura y actualiza los límites de memoria
Puedes establecer límites de memoria en los grupos de trabajadores de Cloud Run. De forma predeterminada, la memoria asignada a cada grupo de trabajadores es de 512 MiB.
CPU mínima requerida
La cantidad de memoria asignada que elijas corresponderá a una cantidad mínima de CPU para tu grupo de trabajadores. Cuando se establece un límite de memoria, se requieren los siguientes límites mínimos de CPU:
Memoria | Cantidad mínima de CPU necesarias |
---|---|
2 GiB | 1 CPU virtual |
Más de 4 GiB | 2 vCPU |
Más de 8 GiB | 4 CPU virtuales |
Más de 16 GiB | 6 CPU virtuales |
Más de 24 GiB | 8 CPU virtuales |
Cantidad máxima de memoria
La cantidad máxima de memoria que puedes configurar es de 32 gibibyte (32 Gi
).
Memoria mínima
El parámetro de configuración de memoria mínimo es de 512 MiB.
Roles obligatorios
Para obtener los permisos que necesitas para configurar y, luego, implementar grupos de trabajadores de Cloud Run, pídele a tu administrador que te otorgue los siguientes roles de IAM:
-
Desarrollador de Cloud Run (
roles/run.developer
) en el grupo de trabajadores de Cloud Run -
Usuario de la cuenta de servicio (
roles/iam.serviceAccountUser
) en la identidad del servicio
Para obtener una lista de los roles y los permisos de IAM asociados con Cloud Run, consulta los roles de IAM de Cloud Run y los permisos de IAM de Cloud Run. Si tu grupo de trabajadores de Cloud Run interactúa con las APIs deGoogle Cloud , como las bibliotecas cliente de Cloud, consulta la guía de configuración de identidades del servicio. Para obtener más información sobre cómo otorgar roles, consulta permisos de implementación y administra el acceso.
Configura límites de memoria
Cualquier cambio en la configuración conlleva la creación de una revisión nueva. Las revisiones posteriores también adoptarán esta configuración de manera automática, a menos que realices actualizaciones explícitas para cambiarla.
Puedes establecer límites de memoria para un grupo de trabajadores de Cloud Run con Google Cloud CLI o Terraform:
gcloud
Puedes actualizar la asignación de memoria de un grupo de trabajadores determinado con el siguiente comando:
gcloud beta run worker-pools update WORKER_POOL --memory SIZE
Reemplaza lo siguiente:
- WORKER_POOL por el nombre de tu grupo de trabajadores
- SIZE con un tamaño de memoria de la tabla de CPU y memoria.
El formato del tamaño es un número de punto fijo o flotante seguido de una unidad:
G
oM
, que corresponde a gigabytes o megabytes, respectivamente, o usa equivalentes a la potencia de dos:Gi
oMi
correspondientes a gibibyte o mebibyte, respectivamente.
También puedes establecer límites de memoria durante la implementación mediante el siguiente comando:
gcloud beta run worker-pools deploy --image IMAGE_URL --memory SIZE
Reemplaza lo siguiente:
- IMAGE_URL por una referencia a la imagen del contenedor que contiene el grupo de trabajadores, como
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
. - SIZE con un tamaño de memoria de la tabla de CPU y memoria. El formato del tamaño es un número de punto fijo o flotante seguido de una unidad: G o M, que corresponde a gigabytes o megabytes, respectivamente, o usa equivalentes a la potencia de dos: Gi o Mi, que corresponden a gibibyte o mebibyte, respectivamente.
Terraform
Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform.
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"
}
}
}
}
}
Reemplaza lo siguiente:
- WORKER_POOL por el nombre del grupo de trabajadores
- REGION con la Google Cloud región. Por ejemplo, europe-west1.
- IMAGE_URL por una referencia a la imagen del contenedor que contiene el grupo de trabajadores, como
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
- SIZE con un tamaño de memoria de la tabla de CPU y memoria.
El formato del tamaño es un número de punto fijo o flotante seguido de una unidad:
G
oM
, que corresponde a gigabytes o megabytes, respectivamente, o usa equivalentes a la potencia de dos:Gi
oMi
correspondientes a gibibyte o mebibyte, respectivamente.
Consulta la configuración de memoria del grupo de trabajadores
En la consola de Google Cloud , ve a Cloud Run:
Haz clic en Grupos de trabajadores para ver la lista de grupos de trabajadores implementados.
Haz clic en el grupo de trabajadores que deseas examinar para mostrar su panel de detalles.
Haz clic en la pestaña Contenedores para mostrar la configuración de memoria del grupo de trabajadores para cada contenedor.