Un trabajo de Cloud Run consta de una o más tareas. La configuración de reintentos máximos especifica la cantidad de veces que una tarea puede reiniciarse en caso de que falle antes de que la falla sea permanente. El valor predeterminado es 3.
Esta configuración se aplica por tarea, no por trabajo. Si configuras esto en 0, las tareas solo se ejecutan una vez y no se reintentan en caso de error.
Roles obligatorios
Para obtener los permisos que necesitas para configurar los trabajos 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 trabajo 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 trabajo de Cloud Run interactúa con lasGoogle Cloud APIs, 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 los permisos de implementación y cómo administrar el acceso.
Configura reintentos máximos
Puedes configurar la cantidad máxima de reintentos para un trabajo de Cloud Run con laGoogle Cloud consola, gcloud CLI, YAML o Terraform:
Console
En la consola Google Cloud , ve a la página de Cloud Run:
Selecciona Trabajos en el menú de navegación de Cloud Run:
Si creas un trabajo nuevo, haz clic en Implementar contenedor para completar la página de configuración de trabajo inicial.
Si quieres configurar un trabajo existente, selecciónalo y, luego, haz clic en Ver y editar la configuración del trabajo.
Haz clic en Contenedores, Conexiones, Seguridad para expandir la página de propiedades del trabajo.
En la sección Capacidad de tareas, especifica la cantidad de reintentos con un número entero del
0al10.Haz clic en Crear o Actualizar.
gcloud
Para establecer reintentos máximos cuando creas un trabajo nuevo, ejecuta el siguiente comando:
gcloud run jobs create JOB --image IMAGE_URL --max-retries RETRY
Reemplaza lo siguiente:
JOBpor el nombre del trabajo de Cloud Run.IMAGE_URL: Es una referencia a la imagen del contenedor, por ejemplo,us-docker.pkg.dev/cloudrun/container/job:latest.RETRY: Es la cantidad de reintentos. Especifica un número entero del0al10.
Para actualizar la cantidad máxima de reintentos de un trabajo existente, ejecuta el siguiente comando:
gcloud run jobs update JOB --max-retries RETRY
YAML
Si creas un trabajo nuevo, omite este paso. Si actualizas un trabajo existente, descarga su configuración de YAML:
gcloud run jobs describe JOB --format export > job.yaml
Actualiza el atributo
maxRetries::apiVersion: run.googleapis.com/v1 kind: Job metadata: name: JOB spec: template: spec: template: spec: containers: - image: IMAGE_URL maxRetries: RETRY
Reemplaza lo siguiente:
JOBpor el nombre del trabajo de Cloud Run.IMAGE_URL: Es una referencia a la imagen del contenedor, por ejemplo,us-docker.pkg.dev/cloudrun/container/job:latest.RETRY: Es la cantidad de reintentos. Especifica un número entero del0al10.
Crea o actualiza el servicio con el siguiente comando:
gcloud run jobs replace job.yaml
El comando
gcloud run jobs replaceusa de forma predeterminada el archivojob.yamlsi está presente.
Terraform
Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform.
Agrega lo siguiente a un recursogoogle_cloud_run_v2_job en tu configuración de Terraform:Ver la configuración máxima de reintentos
Para ver la configuración actual de reintentos máximos para tu trabajo de Cloud Run, usa la consola de Google Cloud o Google Cloud CLI:
Console
En la Google Cloud consola, ve a la página de trabajos de Cloud Run:
Haz clic en el trabajo para abrir la página Detalles del trabajo.
Haz clic en Ver y editar la configuración del trabajo.
Ubica la configuración de reintentos máximas en los detalles de configuración.
gcloud
Ejecuta el comando siguiente:
gcloud run jobs describe JOB
Busca la configuración de reintentos máximos en la configuración que se muestra.