Configurer l'allocation de processeurs

Découvrez comment spécifier le nombre de processeurs à allouer à chaque instance de conteneur Knative serving. Par défaut, Knative serving ne spécifie pas de nombre minimal ou maximal de processeurs. En revanche, vos services sont limités par la quantité de ressources disponibles. Apprenez-en plus sur les ressources de processeur dans le contrat d'exécution du conteneur.

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.

Vous pouvez définir l'allocation de processeurs à l'aide de la console Google Cloud, de Google Cloud CLI ou d'un fichier YAML lorsque vous déployez un nouveau service ou mettez à jour un service existant et déployez une révision :

Console

  1. Accédez à Knative serving dans la console Google Cloud :

    Accéder à Knative serving

  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. Sous Paramètres avancés, cliquez sur Conteneur.

  4. Sélectionnez l'allocation de processeurs souhaitée dans la liste déroulante. Vous pouvez sélectionner des valeurs exprimées en unités de processeur Kubernetes. Par exemple, spécifiez 1 pour 1 processeur, 400m pour 0,4 processeur, etc.

  5. Cliquez sur Suivant pour passer à la section suivante.

  6. Dans la section Configurer la manière dont ce service est déclenché, sélectionnez la connectivité que vous souhaitez utiliser pour appeler le service.

  7. Cliquez sur Créer pour déployer l'image sur Knative serving et attendez la fin du déploiement.

Ligne de commande

  • Pour les services existants, définissez le nombre de processeurs à allouer en exécutant la commande gcloud run services update avec le paramètre --cpu :

    gcloud run services update SERVICE --cpu CPU
    

    Remplacez :

    • SERVICE par le nom de votre service ;
    • CPU par l'allocation de processeurs souhaitée. Spécifiez une valeur exprimée en unités de processeur Kubernetes. Par exemple, spécifiez 1 pour 1 processeur, 400m pour 0,4 processeur, etc.
  • Pour les nouveaux services, définissez le nombre de processeurs à allouer en exécutant la commande gcloud run deploy avec le paramètre --cpu :

    gcloud run deploy SERVICE --image=IMAGE_URL --cpu CPU
    

    Remplacez :

    • SERVICE par le nom de votre service ;
    • IMAGE_URL par une référence à l'image de conteneur, par exemple gcr.io/cloudrun/hello ;
    • CPU par l'allocation de processeurs souhaitée. Spécifiez une valeur exprimée en unités de processeur Kubernetes. Par exemple, spécifiez 1 pour 1 processeur, 400m pour 0,4 processeur, etc.

YAML

Vous pouvez télécharger la configuration d'un service existant dans un fichier YAML avec la commande gcloud run services describe à l'aide de l'option --format=export. Vous pouvez ensuite modifier ce fichier YAML et déployer ces modifications à l'aide de la commande gcloud run services replace. Veillez à ne modifier que les attributs spécifiés.

  1. Téléchargez la configuration de votre service dans un fichier nommé service.yaml sur l'espace de travail local :

    gcloud run services describe SERVICE --format export > service.yaml

    Remplacez SERVICE par le nom de votre service Knative serving.

  2. Dans votre fichier local, mettez à jour l'attribut cpu :

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        spec:
          containers:
          - image: IMAGE
            resources:
              limits:
                cpu: CPU

    Remplacer

    • SERVICE par le nom de votre service Knative serving
    • IMAGE par l'URL de votre image de conteneur ;
    • CPU par la valeur de processeur souhaitée. Spécifiez une valeur exprimée en unités de processeur Kubernetes. Par exemple, spécifiez 1 pour 1 processeur, 400m pour 0,4 processeur, etc.
  3. Remplacez la configuration du service en utilisant la commande suivante :

    gcloud run services replace service.yaml