Configurer votre application avec app.yaml

Une application App Engine est configurée à l'aide d'un fichier app.yaml contenant les ressources (processeur, mémoire, réseau et disque), le scaling, ainsi que d'autres paramètres généraux tels que les variables d'environnement. Vous pouvez sélectionner nouvelle version Java 11 ou ultérieure ou utiliser les anciennes versions Eclipse Jetty 9.3 ou Java 8. Pour Eclipse, Jetty 9.3 et Java 8, vous pouvez utiliser Maven ou Gradle.

À propos des fichiers app.yaml

Vous pouvez spécifier la configuration de l'environnement d'exécution de votre application Java, y compris les versions et les URL, dans le fichier app.yaml. Ce fichier sert de descripteur de déploiement pour une version de service spécifique.

Vous devez d'abord créer le fichier app.yaml pour le service default de votre application avant de pouvoir créer et déployer des fichiers app.yaml pour des services supplémentaires dans l'application.

Le fichier app.yaml suivant montre comment configurer votre application pour Java versions 8, 11, 17 et ultérieures. Notez que vous devez mettre à jour votre fichier app.yaml pour utiliser la nouvelle version. Pour en savoir plus sur l'utilisation des nouvelles versions, consultez la page Environnement d'exécution Java.

versions 17 et ultérieures

runtime: java
env: flex
runtime_config:
operating_system: "ubuntu22"
runtime_version: "21"
handlers:
- url: /.*
script: this field is required, but ignored

manual_scaling:
instances: 1

version 11

runtime: java
env: flex
runtime_config:
operating_system: "ubuntu18"
runtime_version: "11"
handlers:
- url: /.*
script: this field is required, but ignored

manual_scaling:
instances: 1

version 8

runtime: java
env: flex

handlers:
- url: /.*
  script: this field is required, but ignored

Selon la complexité du service de votre application, il vous suffira peut-être de définir quelques éléments dans le fichier app.yaml correspondant. L'exemple suivant montre ce qu'une application Java simple peut nécessiter dans un environnement flexible :

Vous pouvez spécifier un nom unique pour les fichiers app.yaml. Toutefois, dans ce cas, vous devez également spécifier ce nom de fichier dans la commande de déploiement. Par exemple, si vous nommez votre fichier app.yaml "service-name-app.yaml" ou "app.flexible.yaml", vous devez déployer votre application à l'aide de l'une des commandes suivantes :

gcloud app deploy service-name-app.yaml
gcloud app deploy app.flexible.yaml
Pour savoir comment structurer plusieurs services et fichiers app.yaml dans votre application, consultez la page Structurer des services Web.

Liste de tous les éléments de configuration

Pour obtenir la liste complète des éléments acceptés dans ce fichier de configuration, consultez la documentation de référence sur le fichier app.yaml.

Activer la collecte de métriques pour des machines virtuelles Java

Vous pouvez configurer l'environnement flexible App Engine pour Java afin de collecter des métriques courantes pour les processus de machine virtuelle Java (JVM). Les métriques sont collectées à l'aide du même plug-in de surveillance JVM que Cloud Monitoring utilise. Pour afficher la liste complète des métriques App Engine, consultez le guide des métriques Google Cloud.

Si vous souhaitez collecter ces métriques JVM pour votre application, procédez comme suit :

  • appengine.googleapis.com/flex/instance/jvm/gc/count
  • appengine.googleapis.com/flex/instance/jvm/gc/time

Vous devez définir les propriétés système JMX suivantes dans les variables d'environnement de votre fichier app.yaml et déployer votre application.

JAVA_USER_OPTS: "-Djava.rmi.server.hostname=172.17.0.1 -Dcom.sun.management.jmxremote.port=10403 -
Dcom.sun.management.jmxremote.rmi.port=10403 -Dcom.sun.management.jmxremote.local.only=false -
Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"