Définir le nombre maximal de requêtes simultanées par instance (services)

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Pour comprendre le réglage du nombre maximal de requêtes simultanées par instance, consultez le document conceptuel.

Tout changement de configuration entraîne la création d'une révision. Les révisions ultérieures obtiennent aussi automatiquement le même paramètre de configuration, à moins que vous ne le mettiez explicitement à jour.

Pour les services Cloud Run, vous pouvez définir le nombre maximal de requêtes simultanées par instance à l'aide de Google Cloud Console, de la ligne de commande gcloud ou d'un fichier .yaml lorsque vous créez un service ou déployez une nouvelle révision :

Console

  1. Accédez à Cloud Run

  2. Cliquez sur Créer un service si vous configurez un nouveau service sur lequel effectuer un déploiement. Si vous configurez un service existant, cliquez sur celui-ci puis sur Modifier et déployer la nouvelle révision.

  3. Si vous configurez un nouveau service, remplissez la page initiale des paramètres du service selon vos besoins, puis cliquez sur Conteneur, connexions, sécurité pour développer la page de configuration du service.

  4. Cliquez sur l'onglet Conteneur.

    image

  5. Définissez le nombre maximal de requêtes simultanées par instance dans la zone de texte Nombre maximal de requêtes par conteneur.

  6. Cliquez sur Créer ou Déployer.

Command line

Pour définir le nombre maximal de requêtes simultanées par instance, exécutez la commande suivante :

gcloud run services update SERVICE --concurrency CONCURRENCY

Remplacer

  • SERVICE par le nom de votre service ;
  • CONCURRENCY par le nombre maximal de requêtes simultanées par instance de conteneur. Par exemple, la ligne de commande suivante définit un maximum de 1 requête simultanée :

    gcloud run services update SERVICE --concurrency 1

La modification du nombre maximal de requêtes simultanées par instance pour un service donné entraîne la réutilisation de ce paramètre pour toute nouvelle version.

Pour rétablir le nombre maximal de requêtes simultanées par instance par défaut (80), utilisez la commande ci-dessous :

gcloud run services update SERVICE --concurrency default

Remplacez SERVICE par le nom du service que vous configurez.

YAML

Vous pouvez télécharger et afficher la configuration de service existante à l'aide de la commande gcloud run services describe --format export, qui renvoie les résultats nettoyés au format YAML. Vous pouvez ensuite modifier les champs décrits ci-dessous et importer le fichier YAML modifié à l'aide de la commande gcloud run services replace. Veillez à ne modifier que les champs indiqués.

  1. Pour afficher et télécharger la configuration, exécutez la commande suivante :

    gcloud run services describe SERVICE --format export > service.yaml
  2. Mettez à jour l'attribut containerConcurrency :

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

    Remplacez

    • SERVICE par le nom de votre service Cloud Run
    • IMAGE_URL par une référence à l'image du conteneur, par exemple us-docker.pkg.dev/cloudrun/container/hello:latest ;
    • CONCURRENCY par le nombre maximal de requêtes simultanées par instance de conteneur.
    • REVISION par un nouveau nom de révision ou supprimez-le (le cas échéant). Si vous indiquez un nouveau nom de révision, il doit répondre aux critères suivants :
      • Commencer par SERVICE-
      • Ne contenir que des lettres minuscules, des chiffres et -
      • Ne pas se terminer par -
      • Ne pas dépasser 63 caractères
  3. Remplacez la configuration du service en utilisant la commande suivante :

    gcloud run services replace service.yaml

Terraform

Ajoutez les éléments suivants à une ressource google_cloud_run_service dans votre configuration Terraform, sous template.spec.containers. Remplacez 80 par le nombre maximal de requêtes simultanées souhaité.

# Maximum concurrent requests
# https://cloud.google.com/run/docs/configuring/concurrency
container_concurrency = 80

Pour appliquer votre configuration Terraform dans un projet Google Cloud, procédez comme suit :

  1. Lancez Cloud Shell.
  2. Définissez le projet Google Cloud auquel vous souhaitez appliquer la configuration Terraform :
    export GOOGLE_CLOUD_PROJECT=PROJECT_ID
    
  3. Créez un répertoire et ouvrez un nouveau fichier dans ce répertoire. Le nom du fichier doit comporter l'extension .tf, par exemple main.tf :
    mkdir DIRECTORY && cd DIRECTORY && nano main.tf
    
  4. Copiez l'exemple dans main.tf.
  5. Examinez et modifiez les exemples de paramètres à appliquer à votre environnement.
  6. Enregistrez vos modifications en appuyant sur Ctrl-x, puis sur y.
  7. Initialisez Terraform :
    terraform init
  8. Examinez la configuration et vérifiez que les ressources que Terraform va créer ou mettre à jour correspondent à vos attentes :
    terraform plan

    Corrigez les modifications de la configuration si nécessaire.

  9. Appliquez la configuration Terraform en exécutant la commande suivante et en saisissant yes lorsque vous y êtes invité :
    terraform apply

    Attendez que Terraform affiche le message "Apply completed!" (Application terminée).

  10. Ouvrez votre projet Google Cloud pour afficher les résultats. Dans la console Google Cloud, accédez à vos ressources dans l'interface utilisateur pour vous assurer que Terraform les a créées ou mises à jour.

Afficher les paramètres de simultanéité

Pour afficher les paramètres de simultanéité actuels de votre service Cloud Run, procédez comme suit :

Console

  1. Accédez à Cloud Run

  2. Cliquez sur le service qui vous intéresse pour ouvrir la page Informations sur le service.

  3. Cliquez sur l'onglet Révisions.

  4. Dans le panneau de détails sur la droite, le paramètre de simultanéité est répertorié dans l'onglet Conteneur.

Ligne de commande

  1. Exécutez la commande suivante :

    gcloud run services describe SERVICE
  2. Recherchez le paramètre de simultanéité dans la configuration renvoyée.