Una app de App Engine se configura mediante un archivo app.yaml
que contiene los recursos de CPU, memoria, red y disco, el escalamiento y otros parámetros de configuración generales, incluidas las variables de entorno.
Acerca de los archivos app.yaml
Puedes especificar la configuración del entorno de ejecución para tu app de Java, incluidas las versiones y las URL, en el archivo app.yaml
. Este actúa como un descriptor de implementación de una versión específica del servicio.
Primero, debes crear el archivo app.yaml
para el servicio default
de tu app antes de que puedas crear e implementar los archivos app.yaml
de servicios adicionales.
En el siguiente ejemplo de app.yaml
, se muestra cómo configurar tu app para la versión más reciente de Java.
Para obtener más información sobre el uso de los entornos de ejecución de Java compatibles, consulta el
entorno de ejecución de Java.
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
Según la complejidad del servicio de tu app, es posible que solo necesites definir algunos elementos en el archivo app.yaml
correspondiente. En el siguiente ejemplo se demuestra lo que una aplicación Java simple puede requerir en el entorno flexible:
Puedes especificar un nombre único para tus archivos app.yaml
, pero también debes especificar el nombre del archivo con el comando de implementación. Por ejemplo, si al archivo app.yaml
lo nombras service-name-app.yaml
o app.flexible.yaml
, debes implementar la aplicación mediante una de las siguientes opciones:
gcloud app deploy service-name-app.yaml
gcloud app deploy app.flexible.yaml
app.yaml
en tu app, consulta Estructura servicios web.
Todos los elementos de configuración
Para obtener una lista completa de todos los elementos compatibles con este archivo de configuración, consulta la referencia de app.yaml
.
Habilita la recopilación de métricas de máquinas virtuales de Java
Puedes configurar el entorno flexible de App Engine para que Java recopile métricas comunes de los procesos de la máquina virtual de Java (JVM). Las métricas se recopilan con el mismo complemento de supervisión de JVM que usa Cloud Monitoring. Para ver la lista completa de métricas de App Engine, consulta la guía de métricas de Google Cloud.
Si deseas recopilar estas métricas de las JVM para tu app:
appengine.googleapis.com/flex/instance/jvm/gc/count
appengine.googleapis.com/flex/instance/jvm/gc/time
Deberás configurar las siguientes propiedades del sistema JMX en las variables de entorno del archivo app.yaml
e implementar tu app.
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"