Definir el número máximo de solicitudes simultáneas por instancia

Para entender el ajuste de solicitudes simultáneas máximas por instancia, consulta el documento de conceptos.

Roles obligatorios

Para obtener los permisos que necesitas para configurar e implementar servicios de Cloud Run, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos:

Si vas a desplegar un servicio o una función a partir de código fuente, también debes tener otros roles concedidos en tu proyecto y en la cuenta de servicio de Cloud Build.

Para ver una lista de los roles y permisos de gestión de identidades y accesos asociados a Cloud Run, consulta los artículos sobre roles de gestión de identidades y accesos de Cloud Run y permisos de gestión de identidades y accesos de Cloud Run. Si tu servicio de Cloud Run interactúa con APIs, como las bibliotecas de cliente de Cloud, consulta la guía de configuración de la identidad del servicio.Google Cloud Para obtener más información sobre cómo conceder roles, consulta los artículos sobre permisos de implementación y gestión del acceso.

Configurar el número máximo de solicitudes simultáneas por instancia

Cualquier cambio en la configuración conlleva la creación de una nueva revisión. Las revisiones posteriores también recibirán automáticamente este ajuste de configuración, a menos que hagas cambios explícitos para modificarlo.

En el caso de los servicios de Cloud Run, puedes definir el número máximo de solicitudes simultáneas por instancia mediante la Google Cloud consola, la línea de comandos de gcloud o un archivo .yaml cuando creas un servicio o despliegas una revisión:

Consola

  1. En la Google Cloud consola, ve a Cloud Run:

    Ir a Cloud Run

  2. Seleccione Servicios en el menú y haga clic en Implementar contenedor para configurar un nuevo servicio. Si vas a configurar un servicio que ya tienes, haz clic en él y, a continuación, en Editar y desplegar nueva revisión.

  3. Si vas a configurar un servicio nuevo, rellena la página de configuración inicial del servicio y, a continuación, haz clic en Contenedores, volúmenes, redes y seguridad para desplegar la página de configuración del servicio.

  4. Haz clic en la pestaña Contenedor.

    imagen

    • En el cuadro de texto Número máximo de solicitudes por contenedor, introduce el valor máximo de solicitudes simultáneas por instancia que quieras.
  5. Haz clic en Crear o en Implementar.

gcloud

Para definir el número máximo de solicitudes simultáneas por instancia, usa el siguiente comando:

gcloud run services update SERVICE --concurrency CONCURRENCY

Haz los cambios siguientes:

  • SERVICE: el nombre de tu servicio.
  • CONCURRENCY: número máximo de solicitudes simultáneas por instancia. Por ejemplo, con el siguiente código se define un máximo de 1 solicitud simultánea:

    gcloud run services update SERVICE --concurrency 1

Si cambias el número máximo de solicitudes simultáneas por instancia de un servicio concreto, esta configuración se registrará en una nueva revisión.

Para volver al número máximo predeterminado de solicitudes simultáneas por instancia (80), usa el comando

gcloud run services update SERVICE --concurrency default

Sustituye SERVICE por el nombre del servicio que estás configurando.

YAML

  1. Si va a crear un servicio, puede saltarse este paso. Si va a actualizar un servicio, descargue su configuración YAML:

    gcloud run services describe SERVICE --format export > service.yaml
  2. Actualice el atributo containerConcurrency:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        metadata:
          name: REVISION
        spec:
          containerConcurrency: CONCURRENCY

    Haz los cambios siguientes:

    • SERVICE: el nombre de tu servicio de Cloud Run
    • IMAGE_URL: una referencia a la imagen del contenedor, por ejemplo, us-docker.pkg.dev/cloudrun/container/hello:latest. Si usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL sigue el formato LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG .
    • CONCURRENCY: número máximo de solicitudes simultáneas por instancia.
    • REVISION con un nuevo nombre de revisión o elimínelo (si está presente). Si proporcionas un nuevo nombre de revisión, debe cumplir los siguientes criterios:
      • Empieza por SERVICE-
      • Contiene solo letras minúsculas, números y -
      • No termina con -
      • No supera los 63 caracteres
  3. Crea o actualiza el servicio con el siguiente comando:

    gcloud run services replace service.yaml

Terraform

Para saber cómo aplicar o quitar una configuración de Terraform, consulta Comandos básicos de Terraform.

Añade lo siguiente a un recurso google_cloud_run_v2_service en tu configuración de Terraform:

resource "google_cloud_run_v2_service" "default" {
  name     = "cloudrun-service-concurrency"
  location = "us-central1"

  deletion_protection = false # set to "true" in production

  template {
    containers {
      image = "us-docker.pkg.dev/cloudrun/container/hello"
    }
    # Maximum concurrent requests
    max_instance_request_concurrency = 80
  }
}

Sustituye 80 por el número máximo de solicitudes simultáneas que quieras.

Ver la configuración de simultaneidad

Para ver la configuración de simultaneidad actual de tu servicio de Cloud Run, sigue estos pasos:

Consola

  1. En la Google Cloud consola, ve a Cloud Run:

    Ir a Cloud Run

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

  3. Haz clic en la pestaña Revisiones.

  4. En el panel de detalles de la derecha, el ajuste de simultaneidad se encuentra en la pestaña Contenedor.

gcloud

  1. Usa el siguiente comando:

    gcloud run services describe SERVICE
  2. Busca el ajuste de simultaneidad en la configuración devuelta.