Configurar reintentos máximos (trabajos)

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:

Para obtener una lista de los roles y los permisos de IAM asociados con Cloud Run, consulta Roles de IAM de Cloud Run y Permisos de IAM de Cloud Run. Si tu trabajo de Cloud Run interactúa con las APIs de Google 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 reintentos máximos

Para especificar los reintentos máximos, sigue estos pasos:

Console

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

    Ir a Cloud Run

  2. Haz clic en Implementar contenedor y selecciona Trabajo para completar la página de configuración de trabajo inicial. Si quieres configurar un trabajo existente, selecciona el trabajo y, luego, haz clic en Editar.

  3. Haz clic en Contenedor, variables y secretos, conexiones y seguridad para expandir la página de propiedades del trabajo.

  4. Haz clic en la pestaña General.

    imagen

    • Especifica la cantidad de reintentos mediante un número entero de 0 a 10.
  5. Haz clic en Crear o Actualizar.

gcloud

  1. Para un trabajo que estés creando, sigue estos pasos:

    gcloud run jobs create JOB_NAME --image IMAGE_URL --max-retries RETRY

    Reemplazar

    • JOB_NAME por el nombre de tu trabajo.
    • IMAGE_URL por una referencia a la imagen del contenedor, como us-docker.pkg.dev/cloudrun/container/job:latest
    • RETRY por la cantidad de reintentos: especifica un número entero de 0 a 10.
  2. Para un trabajo que estás actualizando:

    gcloud run jobs update JOB_NAME --max-retries RETRY

YAML

  1. Si creas un trabajo nuevo, omite este paso. Si actualizas un trabajo existente, descarga su configuración de YAML:

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

    apiVersion: run.googleapis.com/v1
    kind: Job
    metadata:
      name: JOB
    spec:
      template:
        spec:
          template:
            spec:
              containers:
              - image: IMAGE
              maxRetries: RETRIES

    Reemplaza RETRIES por la cantidad de reintentos: especifica un número entero de 0 a 10.

    También puedes especificar más opciones de configuración, como variables de entorno o límites de memoria.

  3. Actualiza la configuración del trabajo existente:

    gcloud run jobs replace job.yaml

Terraform

Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform.

Si deseas especificar los reintentos máximos para un trabajo de Cloud Run, usa el recurso google_cloud_run_v2_job y aplica el siguiente fragmento a tu archivo main.tf:

resource "google_cloud_run_v2_job" "default" {
  name     = "cloud-run-job-retries"
  location = "us-central1"

  deletion_protection = false # set to "true" in production

  template {
    template {
      max_retries = 3

      containers {
        image = "us-docker.pkg.dev/cloudrun/container/job:latest"
      }
    }
  }
}

Ver la configuración máxima de reintentos

Para ver la configuración máxima actual de reintentos para tu trabajo de Cloud Run, sigue estos pasos:

Console

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

    Ir a Trabajos de Cloud Run

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

  3. Haz clic en la pestaña Configuración.

  4. Ubica la configuración de reintentos máximas en los detalles de configuración.

gcloud

  1. Usa el siguiente comando:

    gcloud run jobs describe JOB_NAME
  2. Busca la configuración de reintentos máximos en la configuración que se muestra.