Sélectionner un environnement d'exécution (services)

Cette page explique comment spécifier l'environnement d'exécution des instances Cloud Run. Par défaut, aucun environnement d'exécution n'est spécifié pour les services Cloud Run, ce qui signifie que Cloud Run sélectionne l'environnement d'exécution en fonction des fonctionnalités utilisées. Si vous ne spécifiez pas d'environnement d'exécution pour votre service, Cloud Run peut sélectionner l'environnement de première ou de deuxième génération.

Notez que les jobs Cloud Run n'utilisent que l'environnement d'exécution de deuxième génération, et que celui-ci ne peut pas être modifié pour les différents jobs.

Consultez la documentation sur les concepts liés aux environnements d'exécution pour obtenir de l'aide concernant le choix de l'environnement le mieux adapté à votre service.

Rôles requis

Pour obtenir les autorisations nécessaires pour configurer et déployer des services Cloud Run, demandez à votre administrateur de vous accorder les rôles IAM suivants :

Pour obtenir la liste des rôles et des autorisations IAM associés à Cloud Run, consultez les sections Rôles IAM Cloud Run et Autorisations IAM Cloud Run. Si votre service Cloud Run communique avec les API Google Cloud, telles que les bibliothèques clientes Cloud, consultez le guide de configuration de l'identité du service. Pour en savoir plus sur l'attribution de rôles, consultez les pages Autorisations de déploiement et Gérer les accès.

Définir et mettre à jour l'environnement d'exécution

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.

Par défaut, l'environnement d'exécution des services Cloud Run est non spécifié, ce qui signifie que c'est Cloud Run qui va sélectionner un environnement d'exécution approprié. Vous pouvez également spécifier un environnement d'exécution. Pour utiliser l'environnement de deuxième génération, vous devez spécifier au moins 512 Mio de mémoire.

Vous pouvez définir l'environnement d'exécution à l'aide de la console Google Cloud, de la ligne de commande gcloud ou d'un fichier YAML lorsque vous créez un service ou que vous déployez une nouvelle révision :

Console

  1. Dans la console Google Cloud, accédez à Cloud Run :

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

  4. Cliquez sur l'onglet Conteneur.

    image

    • Sélectionnez l'environnement d'exécution souhaité à l'aide des boutons d'option. Conservez "Par défaut" pour laisser Cloud Run sélectionner un environnement d'exécution approprié.
  5. Cliquez sur Créer ou Déployer.

Command line

Vous pouvez mettre à jour l'environnement d'exécution d'un service donné à l'aide de la commande suivante :

gcloud run services update SERVICE --execution-environment ENVIRONMENT

Remplacez SERVICE par le nom de votre service et ENVIRONMENT par l'environnement d'exécution souhaité. Spécifiez la valeur gen1 pour la première génération ou gen2 pour la deuxième génération.

Vous pouvez également définir l'environnement d'exécution lors du déploiement à l'aide de la commande suivante :

gcloud run deploy --image IMAGE_URL --execution-environment ENVIRONMENT

Remplacer

  • IMAGE_URL par une référence à l'image de conteneur, par exemple us-docker.pkg.dev/cloudrun/container/hello:latest. Si vous utilisez Artifact Registry, le dépôt REPO_NAME doit déjà être créé. L'URL se présente sous la forme suivante : LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.
  • ENVIRONMENT par l'environnement d'exécution souhaité. Spécifiez la valeur gen1 pour la première génération ou gen2 pour la deuxième génération.

YAML

  1. Si vous créez un service, ignorez cette étape. Si vous mettez à jour un service existant, téléchargez sa configuration YAML :

    gcloud run services describe SERVICE --format export > service.yaml
  2. Défininir l'annotation run.googleapis.com/execution-environment :

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        metadata:
          annotations:
            run.googleapis.com/execution-environment: ENVIRONMENT

    Remplacer

    • SERVICE par le nom de votre service Cloud Run
    • ENVIRONMENT par l'environnement d'exécution sélectionné. Spécifiez la valeur gen1 pour un environnement de première génération ou gen2 pour un environnement de deuxième génération.

    Supprimez l'annotation run.googleapis.com/execution-environment pour le comportement par défaut.

  3. Créez ou mettez à jour le service à l'aide de la commande suivante :

    gcloud run services replace service.yaml

Afficher les paramètres de l'environnement d'exécution

Pour afficher les paramètres actuels de l'environnement d'exécution de votre service Cloud Run, procédez comme suit :

Console

  1. Dans la console Google Cloud, accédez à Cloud Run :

    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 situé à droite, le paramètre "Environnement d'exécution" 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'environnement d'exécution dans la configuration renvoyée.