Limites de processeur

Cette page explique comment spécifier le nombre de processeurs à allouer à chaque instance Cloud Run. Par défaut, les instances de conteneur Cloud Run sont limitées à 1 processeur. Vous pouvez augmenter ou diminuer cette valeur comme décrit sur cette page.

Cette page décrit également comment activer ou désactiver l'optimisation du processeur au démarrage, une fonctionnalité qui augmente temporairement l'allocation de processeur lors du démarrage de l'instance afin de réduire la latence de démarrage.

Définir et mettre à jour les limites de processeur

Vous pouvez définir des limites de processeur pour les services et les tâches Cloud Run.

Par défaut, chaque instance est limitée à un processeur. Vous pouvez augmenter cette valeur à l'aide de n'importe quelle valeur entière, jusqu'à un maximum de huit processeurs.

Processeur et mémoire

Voici les exigences minimales de mémoire pour les processeurs :

Processeurs Mémoire minimale
4 2 Gi0
6 3 Gio
8 4 Gio

Si vous souhaitez utiliser moins d'un processeur, vous pouvez sélectionner une valeur comprise entre 0,08 et 1, par incréments de 0,01. Toute valeur supérieure à 1 doit être un nombre entier. Si vous utilisez moins d'un processeur, les exigences suivantes sont appliquées :

Paramètre Exigence
Memory Un minimum de 0,5 processeur est nécessaire pour définir une limite de mémoire supérieure à 512 Mio.
Un minimum d'un processeur est nécessaire pour définir une limite de mémoire supérieure à 1 Gio.
Simultanéité La simultanéité maximale doit être définie sur 1.
Processeur alloué L'allocation de processeurs ne doit être définie sur le processeur alloué que lors du traitement des requêtes.
Environnement d'exécution Vous devez utiliser l'environnement d'exécution de première génération.

Pour les services Cloud Run

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.

Vous pouvez définir des limites de processeur à 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, mise en réseau, sécurité pour développer la page de configuration du service.

  4. Cliquez sur l'onglet Conteneur.

    image

    • Sélectionnez la limite de processeur souhaitée dans la liste déroulante, en utilisant Personnalisé si vous souhaitez utiliser moins d'un processeur. Sélectionnez une valeur de 1, 2, 4, 6 ou 8 pour le nombre de processeurs, ou, pour un nombre de processeurs inférieur à 1, spécifiez une valeur comprise entre 0,08 et 1,00, par incréments de 0,01 (Consultez le tableau de la section Définir et mettre à jour des limites de processeur pour connaître les paramètres requis.)
  5. Cliquez sur Créer ou Déployer.

Ligne de commande

Vous pouvez mettre à jour les limites de processeur d'un service donné à l'aide de la commande suivante :

gcloud run services update SERVICE --cpu CPU

Remplacer

  • SERVICE par le nom de votre service
  • CPU par la limite de processeur souhaitée Spécifiez une valeur de 1, 2, 4, 6 ou 8 pour le nombre de processeurs, ou, pour un nombre de processeurs inférieur à 1, spécifiez une valeur comprise entre 0,08 et 1,00, par incréments de 0,01 (Consultez le tableau de la section Définir et mettre à jour des limites de processeur pour connaître les paramètres requis.)

Vous pouvez également définir l'allocation de processeurs lors du déploiement, en utilisant la commande suivante :

gcloud run deploy --image IMAGE_URL --cpu CPU

Remplacer

  • IMAGE_URL par une référence à l'image de conteneur, par exemple us-docker.pkg.dev/cloudrun/container/hello:latest. Lorsque vous utilisez Artifact Registry, l'URL se présente sous la forme suivante: REGION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.
  • CPU avec la valeur de 1, 2, 4, 6 ou 8 pour le nombre de processeurs, ou, pour un nombre de processeurs inférieur à 1, spécifiez une valeur comprise entre 0,08 et 1,00, par incréments de 0,01 (Consultez le tableau de la section Définir et mettre à jour des limites de processeur pour connaître les paramètres requis.)

YAML

Vous pouvez télécharger et afficher les configurations de service existantes à 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:
          name: REVISION
        spec:
          containers:
          - image: IMAGE
            resources:
              limits:
                cpu: CPU

    Remplacez

    • SERVICE par le nom de votre service Cloud Run
    • IMAGE_URL par une référence à l'image de conteneur, par exemple us-docker.pkg.dev/cloudrun/container/hello:latest. Lorsque vous utilisez Artifact Registry, l'URL se présente sous la forme suivante: REGION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.
    • CPU par la valeur de limite de processeur souhaitée. Spécifiez une valeur de 1, 2, 4, 6 ou 8 pour le nombre de processeurs, ou, pour un nombre de processeurs inférieur à 1, spécifiez une valeur comprise entre 0,08 et 1,00, par incréments de 0,01 (Consultez le tableau de la section Définir et mettre à jour des limites de processeur pour connaître les paramètres requis.)
    • 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

Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez la page Commandes Terraform de base.

Ajoutez les éléments suivants à une ressource google_cloud_run_service dans votre configuration Terraform, sous template.spec.containers. Remplacez 1000m par le nombre de processeurs souhaité.

resources {
  limits = {
    # CPU usage limit
    # https://cloud.google.com/run/docs/configuring/cpu
    cpu = "1000m" # 1 vCPU

    # Memory usage limit (per container)
    # https://cloud.google.com/run/docs/configuring/memory-limits
    memory = "512Mi"
  }
}

Pour les jobs Cloud Run

Vous devez définir un minimum de un processeur pour une tâche Cloud Run.

Pour spécifier l'utilisation du processeur pour une tâche Cloud Run, procédez comme suit :

Console

  1. Accédez à Cloud Run

  2. Si vous configurez une nouvelle tâche, cliquez sur l'onglet Tâches et remplissez la page des paramètres initiaux de la tâche selon vos besoins. Si vous configurez une tâche existante, cliquez sur celle-ci, puis sur Modifier.

  3. Cliquez sur Conteneur, variables et secrets, connexions, sécurité pour développer la page des propriétés de la tâche.

  4. Cliquez sur l'onglet Général.

    image

    • Sélectionnez l'allocation de processeurs souhaitée dans la liste déroulante. Sélectionnez un nombre de processeurs, 1, 2, 4, 6 ou 8. Les tâches nécessitent au minimum un processeur. (consultez le tableau de la section Définir et mettre à jour des limites de processeur pour connaître les paramètres requis).
  5. Cliquez sur Créer ou Mettre à jour.

Command line

  1. Mettez à jour les limites de processeur d'une tâche donnée à l'aide de la commande suivante :

    gcloud run jobs update JOB_NAME --cpu CPU

    Remplacer

    • JOB_NAME par le nom de votre tâche
    • CPU par la limite de processeur souhaitée Spécifiez un nombre de processeurs 1, 2, 4, 6 ou 8. Les tâches nécessitent au minimum un processeur. (Consultez le tableau de la section Définir et mettre à jour des limites de processeur pour connaître les paramètres requis.)

    Vous pouvez également définir le processeur lorsque vous créez une tâche à l'aide de la commande suivante :

    gcloud run jobs create JOB_NAME --image IMAGE_URL --cpu CPU

    Remplacer

    • JOB_NAME par le nom de votre tâche.
    • IMAGE_URL par une référence à l'image de conteneur, par exemple us-docker.pkg.dev/cloudrun/container/job:latest.
    • CPU par la limite de processeur souhaitée Spécifiez un nombre de processeurs 1, 2, 4, 6 ou 8. Les tâches nécessitent au minimum un processeur. (Consultez le tableau de la section Définir et mettre à jour des limites de processeur pour connaître les paramètres requis.)

YAML

Téléchargez et affichez la configuration de tâche existante à l'aide de la commande gcloud run jobs describe --format export, qui renvoie les résultats nettoyés au format YAML. Modifiez ensuite les champs décrits ci-dessous et importez le fichier YAML modifié à l'aide de la commande gcloud run jobs 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 jobs describe JOB_NAME --format export > job.yaml
  2. Mettez à jour l'attribut cpu :

    apiVersion: run.googleapis.com/v1
    kind: Job
    metadata:
      name: JOB
    spec:
      template:
        spec:
          template:
            spec:
              containers:
              - image: IMAGE
              resources:
                limits:
                  cpu: CPU

    Remplacez CPU par la limite de processeur souhaitée. Spécifiez un nombre de processeurs 1, 2, 4, 6 ou 8. Les tâches nécessitent au minimum un processeur. (Consultez le tableau de la section Définir et mettre à jour des limites de processeur pour connaître les paramètres requis.)

    Vous pouvez également spécifier d'autres éléments de configuration, tels que des variables d'environnement ou des limites de mémoire.

  3. Mettez à jour la configuration de tâche existante :

    gcloud run jobs replace job.yaml

Configurer l'optimisation du processeur au démarrage (services)

La fonctionnalité d'optimisation du processeur au démarrage pour les révisions fournit davantage de ressources processeur pendant le temps de démarrage de l'instance et pendant les 10 secondes suivant le démarrage de l'instance.

L'optimisation réelle du processeur varie en fonction des paramètres de limite de votre processeur :

Limite de processeur Processeur optimisé
0-1 2
2 4
4 8
6 8
8 8

La quantité de processeur supplémentaire allouée vous est facturée pendant la durée de démarrage du conteneur. Par exemple, si le temps de démarrage du conteneur est de 15 secondes et que vous allouez deux processeurs, avec l'optimisation du processeur au démarrage, quatre processeurs vous seront facturés pour le temps de démarrage de l'instance (éventuellement plus court), y compris pour les 10 secondes après le démarrage de votre conteneur et pour deux processeurs pendant le reste du cycle de vie du conteneur.

Vous pouvez activer ou désactiver la fonctionnalité d'optimisation du processeur au démarrage à l'aide de la console Google Cloud ou de Google Cloud CLI.

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, mise en réseau, sécurité pour développer la page de configuration du service.

  4. Cliquez sur l'onglet Conteneur.

    Image

    • Pour activer l'optimisation du processeur au démarrage, cochez la case Optimisation du processeur au démarrage. Pour désactiver cette fonctionnalité, décochez la case.
  5. Cliquez sur Créer ou Déployer.

Ligne de commande

  1. Vous pouvez activer l'optimisation du processeur au démarrage pour un service donné à l'aide de la commande suivante :

    gcloud run services update SERVICE --cpu-boost

    Remplacez SERVICE par le nom du service.

    Vous pouvez activer l'optimisation du processeur au démarrage lors du déploiement à l'aide de la commande suivante :

    gcloud run deploy --image IMAGE_URL --cpu-boost

    Remplacez IMAGE_URL par une référence à l'image de conteneur, par exemple us-docker.pkg.dev/cloudrun/container/hello:latest. Lorsque vous utilisez Artifact Registry, l'URL se présente sous la forme suivante: REGION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.

  2. Vous pouvez désactiver l'optimisation du processeur au démarrage pour un service donné à l'aide de la commande suivante :

    gcloud run services update SERVICE --no-cpu-boost

    Remplacez SERVICE par le nom du service.

    Vous pouvez désactiver l'optimisation du processeur au démarrage lors du déploiement à l'aide de la commande suivante :

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

YAML

Vous pouvez télécharger et afficher les configurations de service existantes à 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 run.googleapis.com/startup-cpu-boost en spécifiant 'true' pour activer l'optimisation du processeur au démarrage ou 'false' pour la désactiver :

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        metadata:
          annotations:
            run.googleapis.com/startup-cpu-boost: 'true'

    Remplacer

    • SERVICE par le nom de votre service Cloud Run
  3. Remplacez la configuration du service en utilisant la commande suivante :

    gcloud run services replace service.yaml

Afficher les paramètres du processeur

Pour afficher les paramètres actuels du processeur 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 processeur est répertorié sous l'onglet Conteneur.

Ligne de commande

  1. Exécutez la commande suivante :

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

Pour afficher les paramètres actuels du processeur de votre tâche Cloud Run, procédez comme suit :

Console

  1. Accéder aux tâches Cloud Run

  2. Cliquez sur la tâche qui vous intéresse pour ouvrir la page Informations sur la tâche.

  3. Cliquez sur l'onglet Configuration.

  4. Recherchez le paramètre de processeur dans les détails de la configuration.

Command line

  1. Exécutez la commande suivante :

    gcloud run jobs describe JOB_NAME
  2. Recherchez le paramètre de processeur dans la configuration renvoyée.