App Engine 앱은 CPU, 메모리, 네트워크 및 디스크 리소스, 확장, 환경 변수를 비롯한 기타 일반 설정이 포함된 app.yaml
파일을 사용하여 구성됩니다.
app.yaml
파일 정보
버전과 URL이 포함된 자바 앱의 런타임 구성을 app.yaml
파일에 지정할 수 있습니다. 이 파일은 특정 서비스 버전의 배포 설명자 역할을 합니다.
추가 서비스를 위해 app.yaml
파일을 만들고 배포하려면 먼저 default
서비스의 app.yaml
파일을 만들어야 합니다.
다음 app.yaml
샘플은 최신 Java 버전에 맞게 앱을 구성하는 방법을 보여줍니다.
지원되는 Java 런타임 사용에 관한 자세한 내용은 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
앱 서비스의 복잡성에 따라 해당 app.yaml
파일에 몇 가지 요소만 정의해야 할 수 있습니다. 다음 예에서는 가변형 환경에서 간단한 자바 앱에 필요한 사항을 설명합니다.
app.yaml
파일에 고유한 이름을 지정할 수 있습니다. 하지만 이렇게 하면 배포 명령어에도 파일 이름을 지정해야 합니다. 예를 들어 app.yaml
파일의 이름을 service-name-app.yaml
이나 app.flexible.yaml
로 지정한 후 다음 중 하나를 사용하여 앱을 배포해야 합니다.
gcloud app deploy service-name-app.yaml
gcloud app deploy app.flexible.yaml
app.yaml
파일을 구조화하는 방법에 대한 자세한 내용은 웹 서비스 구조화를 참조하세요.
모든 구성 요소
이 구성 파일에서 지원되는 모든 요소의 전체 목록은 app.yaml
참조를 확인하세요.
자바 가상 머신 측정항목 수집 사용 설정
자바용 App Engine 가변형 환경을 구성하여 자바 가상 머신(JVM) 프로세스의 공통 측정항목을 수집할 수 있습니다. 측정항목은 Cloud Monitoring에서 사용하는 플러그인과 동일한 JVM 모니터링 플러그인을 통해 수집됩니다. App Engine의 전체 측정항목 목록을 보려면 Google Cloud 측정항목 가이드를 참조하세요.
앱에서 이러한 JVM 측정항목을 수집하려면 다음 안내를 따르세요.
appengine.googleapis.com/flex/instance/jvm/gc/count
appengine.googleapis.com/flex/instance/jvm/gc/time
app.yaml
의 환경 변수에 다음과 같은 JMX 시스템 속성을 설정하고 앱을 배포해야 합니다.
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"