Anwendung mit app.yaml konfigurieren

Eine App Engine-Anwendung wird über eine app.yaml-Datei konfiguriert. Diese enthält Einstellungen für CPU-, Arbeitsspeicher-, Netzwerk- und Datenträgerressourcen, Skalierungen und andere allgemeine Einstellungen, einschließlich Umgebungsvariablen.

app.yaml-Dateien

Sie können die Laufzeitkonfiguration für Ihre Java-Anwendung, einschließlich Versionen und URLs, in der Datei app.yaml angeben. Diese Datei dient als Deployment-Deskriptor für eine bestimmte Dienstversion.

Erstellen Sie zuerst die Datei app.yaml für den Dienst default Ihrer Anwendung. Erst dann können Sie app.yaml-Dateien für zusätzliche Dienste erstellen und bereitstellen.

Das folgende app.yaml-Beispiel veranschaulicht, wie Sie Ihre Anwendung für die aktuelle Java-Version konfigurieren. Weitere Informationen zur Verwendung unterstützter Java-Laufzeiten finden Sie unter Java-Laufzeit.

  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

Je nach Komplexität des Dienstes Ihrer Anwendung müssen Sie möglicherweise nur wenige Elemente in der entsprechenden app.yaml-Datei definieren. In diesem Beispiel wird gezeigt, was eine einfache Java-Anwendung in der flexiblen Umgebung erfordern kann:

Sie können Dateien des Typs app.yaml jeweils eindeutige Namen geben, müssen diese Dateinamen dann aber auch im Bereitstellungsbefehl angeben. Wenn Sie beispielsweise Ihre app.yaml-Datei service-name-app.yaml oder app.flexible.yaml benennen, müssen Sie Ihre Anwendung so bereitstellen:

gcloud app deploy service-name-app.yaml
gcloud app deploy app.flexible.yaml
Weitere Informationen zum Strukturieren mehrerer Dienste und app.yaml-Dateien in Ihrer Anwendung finden Sie unter Webdienste strukturieren.

Alle Konfigurationselemente

Eine vollständige Liste aller in dieser Konfigurationsdatei unterstützten Elemente finden Sie in der Referenz zu app.yaml.

Erfassung von Java-VM-Messwerten aktivieren

Sie können die flexible App Engine-Umgebung für Java konfigurieren, um allgemeine Messwerte für JVM-Prozesse (Java Virtual Machines) zu erfassen. Die Messwerte werden mit demselben JVM-Monitoring-Plug-in erfasst, das auch von Cloud Monitoring verwendet wird. Eine vollständige Liste der Messwerte für App Engine finden Sie in der Anleitung für Google Cloud-Messwerte.

So können Sie diese JVM-Messwerte für Ihre Anwendung erfassen:

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

Sie müssen die folgenden JMX-Systemattribute in den Umgebungsvariablen in Ihrer app.yaml festlegen und Ihre Anwendung bereitstellen.

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"