Configura zonas de pruebas para grupos de trabajadores

Los entornos de pruebas de Cloud Run proporcionan un entorno rápido, seguro y aislado para ejecutar flujos de trabajo de agentes dentro de tu grupo de trabajadores, ejecutar cargas útiles que no sean de confianza y controlar eventos de forma aislada. Los entornos de pruebas están altamente optimizados para la latencia y se ejecutan dentro de la misma instancia que tu contenedor, y comparten su CPU y memoria asignadas.

En esta página, se describe cómo configurar entornos de pruebas en tu contenedor. Para obtener detalles sobre cómo escribir código para interactuar con el entorno de pruebas mediante la CLI, consulta Ejecución de código en Cloud Run.

Antes de comenzar

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Google Cloud project.

  3. Instala e inicializa gcloud CLI.
  4. Implementa un grupo de trabajadores de Cloud Run worker pool.

Roles obligatorios

Para obtener los permisos que necesitas para configurar y, luego, implementar los grupos de trabajadores 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 grupo de trabajadores 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.

Habilita los entornos de pruebas

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.

Para habilitar los entornos de pruebas en los grupos de trabajadores de Cloud Run, usa Google Cloud CLI o una configuración de YAML:

gcloud

Para implementar o actualizar el grupo de trabajadores, especifica la marca --sandbox-launcher:

  • Para implementar un grupo de trabajadores nuevo, ejecuta el siguiente comando:

    gcloud beta run worker-pools deploy WORKER_POOL --image IMAGE_URL --sandbox-launcher

    Reemplaza lo siguiente:

    • WORKER_POOL: el nombre de tu grupo de trabajadores de Cloud Run.
    • IMAGE_URL: Una referencia a la imagen del contenedor que contiene el grupo de trabajadores, como us-docker.pkg.dev/cloudrun/container/worker-pool:latest
  • Para actualizar un grupo de trabajadores existente, ejecuta el siguiente comando:

    gcloud beta run worker-pools update WORKER_POOL --sandbox-launcher

YAML

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

    gcloud run worker-pools describe WORKER_POOL --format export > worker-pool.yaml
  2. Actualiza tu archivo YAML para incluir el atributo sandboxLauncher establecido en true dentro de la configuración de tu contenedor:

    apiVersion: run.googleapis.com/v1
    kind: WorkerPool
    metadata:
      name: WORKER_POOL
      annotations:
        run.googleapis.com/launch-stage: BETA
    spec:
      template:
        spec:
          containers:
          - name: CONTAINER
            image: IMAGE_URL
            sandboxLauncher: true
    

    Reemplaza lo siguiente:

    • WORKER_POOL: el nombre de tu grupo de trabajadores de Cloud Run.
    • CONTAINER: el nombre de tu contenedor.
    • IMAGE_URL: Una referencia a la imagen del contenedor que contiene el grupo de trabajadores, como us-docker.pkg.dev/cloudrun/container/worker-pool:latest
  3. Crea o actualiza el grupo de trabajadores con el siguiente comando:

    gcloud run worker-pools replace worker-pool.yaml

    El comando gcloud run worker-pools replace usa de forma predeterminada el archivo worker-pool.yaml si está presente.

Los entornos de pruebas comparten la CPU y la memoria asignadas al contenedor host. Asegúrate de que los límites de CPU y memoria de tu contenedor principal puedan admitir tu aplicación y cualquier entorno de pruebas activo que ejecutes al mismo tiempo.

Inhabilita los entornos de pruebas

Para inhabilitar la capacidad de iniciar un entorno de pruebas en tu grupo de trabajadores, usa Google Cloud CLI o una configuración de YAML:

gcloud

Actualiza el grupo de trabajadores con la marca --no-sandbox-launcher ejecutando el siguiente comando:

gcloud beta run worker-pools update WORKER_POOL --no-sandbox-launcher

Reemplaza WORKER_POOL por el nombre de tu grupo de trabajadores.

YAML

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

    gcloud run worker-pools describe WORKER_POOL --format export > worker-pool.yaml
  2. Actualiza tu archivo YAML para quitar el atributo sandboxLauncher dentro de la configuración de tu contenedor:

    apiVersion: run.googleapis.com/v1
    kind: WorkerPool
    metadata:
      name: WORKER_POOL
    spec:
      template:
        spec:
          containers:
          - name: CONTAINER
            image: IMAGE_URL
    

    Reemplaza lo siguiente:

    • WORKER_POOL: el nombre de tu grupo de trabajadores de Cloud Run.
    • CONTAINER: el nombre de tu contenedor.
    • IMAGE_URL: Una referencia a la imagen del contenedor que contiene el grupo de trabajadores, como us-docker.pkg.dev/cloudrun/container/worker-pool:latest
  3. Crea o actualiza el grupo de trabajadores con el siguiente comando:

    gcloud run worker-pools replace worker-pool.yaml

    El comando gcloud run worker-pools replace usa de forma predeterminada el archivo worker-pool.yaml si está presente.

Visualiza la configuración del entorno de pruebas

Para ver la configuración actual del entorno de pruebas de tu grupo de trabajadores de Cloud Run, sigue estos pasos:

Console

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

    Ir a Grupos de trabajadores de Cloud Run

  2. Haz clic en el grupo de trabajadores para abrir su página Detalles del grupo de trabajadores.

  3. Haz clic en la pestaña Revisiones.

  4. En la pestaña Contenedores, busca la configuración del iniciador del entorno de pruebas para ver si los contenedores en entornos de pruebas están habilitados o inhabilitados.

gcloud

  1. Usa el siguiente comando:

    gcloud run worker-pools describe WORKER_POOL

    Reemplaza WORKER_POOL por el nombre de tu grupo de trabajadores.

  2. Para verificar que los contenedores en entornos de pruebas estén habilitados, busca el atributo sandboxLauncher: true en la configuración que se muestra.

Para ejecutar código que no sea de confianza en un entorno de pruebas desde tu grupo de trabajadores, consulta Ejecución de código en Cloud Run.