Allocation du processeur

Cette page explique comment spécifier si le processeur n'est alloué que lors du traitement des requêtes ou s'il est systématiquement alloué pour chaque instance de conteneur Cloud Run. Il peut être utile de définir l'allocation systématique du processeur pour exécuter des tâches en arrière-plan et d'autres tâches de traitement asynchrones. Notez que le paramètre d'allocation systématique est compatible avec l'utilisation du nombre minimal d'instances.

Par défaut, le processeur des instances de conteneur Cloud Run n'est alloué que pendant le traitement des requêtes et n'est donc pas alloué en dehors du démarrage des instances de conteneur et du traitement des requêtes. Vous pouvez modifier ce comportement de sorte que le processeur soit toujours alloué et disponible même en l'absence de requêtes entrantes.

Impact sur les tarifs

Si vous ne choisissez l'allocation de processeurs que pendant le traitement des requêtes, vous ne payez que par requête et uniquement lorsque l'instance de conteneur traite une requête. Si vous choisissez le paramètre CPU toujours alloué, le cycle de vie complet de l'instance de conteneur vous est facturé. Pour en savoir plus, consultez les grilles tarifaires de Cloud Run.

Définir et modifier l'allocation de processeurs

Toute modification 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.

Si vous choisissez l'option de processeur toujours alloué, vous devez spécifier au moins 512 Mio de mémoire.

Par défaut, le processeur n'est alloué que pendant le traitement des requêtes pour chaque instance de conteneur. Vous pouvez modifier cette valeur à l'aide de 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, renseignez la page de paramètres initiale du service, puis cliquez sur Suivant > Paramètres avancés pour accéder à la page de configuration du service.

  4. Cliquez sur l'onglet Conteneur.

    image

  5. Sélectionnez l'allocation de processeur souhaitée sous CPU allocation and pricing (Allocation du processeur et tarification). Sélectionnez CPU is only allocated during request processing (Le processeur n'est alloué que lors du traitement des requêtes) pour que vos instances ne se voient allouées le processeur que lorsqu'elles reçoivent des requêtes. Sélectionnez CPU is always allocated (Le processeur est toujours alloué) pour allouer le processeur pendant toute la durée de vie des instances de conteneur.

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

Command line

Vous pouvez mettre à jour l'allocation du processeur. Pour configurer les processeurs sur une allocation systématique pour un service donné :

gcloud beta run services update SERVICE --no-cpu-throttling 

Remplacez SERVICE par le nom du service.

Pour définir l'allocation de processeurs uniquement pendant le traitement des requêtes, procédez comme suit :

gcloud beta run services update SERVICE --cpu-throttling 

Vous pouvez également définir l'allocation du processeur pendant le déploiement. Pour configurer les processeurs sur une allocation systématique :

gcloud run deploy --image IMAGE_URL --no-cpu-throttling

Pour définir l'allocation de processeurs uniquement pendant le traitement des requêtes, procédez comme suit :

gcloud run deploy --image IMAGE_URL --cpu-throttling

Remplacez IMAGE_URL par une référence à l'image de conteneur, par exemple us-docker.pkg.dev/cloudrun/container/hello:latest.

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 cpu :

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        metadata:
          annotations:
            run.googleapis.com/cpu-throttling: 'BOOLEAN`

    Remplacez

    • SERVICE par le nom de votre service Cloud Run
    • BOOLEAN par true pour définir l'allocation du processeur uniquement lors du traitement des requêtes ou par false pour définir le processeur à toujours alloué.
  3. Remplacez la configuration du service en utilisant la commande suivante :

    gcloud run services replace service.yaml

Afficher les paramètres d'allocation de processeur

Pour afficher les paramètres d'allocation de processeurs actuels de votre service, 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 d'allocation de processeurs est répertorié sous l'onglet Conteneur.

Command line

  1. Exécutez la commande suivante :

    gcloud run services describe SERVICE
  2. Recherchez le paramètre d'allocation de processeurs dans la configuration renvoyée.