Configura la política de reinicio para las instancias

La política de reinicio de la instancia de Cloud Run determina si la instancia debe reiniciarse y cuándo.

Opciones de política de reinicio

Selecciona una de las siguientes políticas de reinicio:

  • on-failure (predeterminado): Si algún contenedor sale con un código de estado distinto de cero o si el contenedor experimenta fallas de infraestructura, la instancia se reinicia. En el caso de las instancias de varios contenedores, esto significa que cualquier contenedor que falle provoca que se reinicie toda la instancia.
  • always: Cuando sale cualquier contenedor, la instancia siempre se reinicia. Esto incluye salidas limpias con el código 0.
  • never: La instancia nunca se reinicia. Cuando finaliza cualquier contenedor, la instancia pasa de inmediato a un estado STOPPED o FAILED.

Cuando configuras la política de reinicio always o on-failure para tu instancia, esta se reinicia automáticamente al final de un ciclo de vida de aproximadamente 7 días, por lo que se ejecuta de forma indefinida, a menos que se interrumpa de otra manera.

Roles obligatorios

Para obtener los permisos que necesitas para configurar y, también, implementar instancias 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 los roles de IAM de Cloud Run y los permisos de IAM de Cloud Run. Si tu instancia de Cloud Run interactúa con Google Cloud las 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 permisos de implementación y administra el acceso.

Configura la política de reinicio

Configura la política de reinicio para una instancia de Cloud Run con Google Cloud CLI o YAML:

gcloud

Para especificar una política de reinicio cuando implementas una instancia nueva, haz lo siguiente:

gcloud beta run instances deploy INSTANCE \
    --image=IMAGE_URL \
    --restart-policy=POLICY

Para actualizar la política de reinicio de una instancia existente, haz lo siguiente:

gcloud beta run instances update INSTANCE \
    --restart-policy=POLICY

Reemplaza lo siguiente:

  • INSTANCE: El nombre de la instancia.
  • IMAGE_URL: Una referencia a la imagen del contenedor, como us-docker.pkg.dev/cloudrun/container/hello:latest.
  • POLICY: La política de reinicio que se aplicará. Elige entre on-failure, always o never.

YAML

  1. Si creas una instancia nueva, omite este paso. Si actualizas una instancia existente, descarga su configuración de YAML:

    gcloud beta run instances describe INSTANCE --format export > instance.yaml
  2. En el siguiente ejemplo, se muestra la configuración de YAML:

    apiVersion: run.googleapis.com/v1
    kind: Instance
    metadata:
      name: INSTANCE
      annotations:
        run.googleapis.com/launch-stage: BETA
    spec:
      containers:
      - name: CONTAINER_NAME
        image: IMAGE_URL
      restartPolicy: POLICY

    Reemplaza lo siguiente:

    • INSTANCE: El nombre de tu instancia de Cloud Run.
    • CONTAINER_NAME: El nombre del contenedor.
    • IMAGE_URL: Una referencia a la imagen del contenedor, como us-docker.pkg.dev/cloudrun/container/hello:latest.
    • POLICY: La política de reinicio que se aplicará. Elige entre on-failure, always o never.
  3. Crea o actualiza la instancia con el siguiente comando:

    gcloud beta run instances replace instance.yaml