JKube Maven プラグインを使用して Openshift にデプロイするように構成された Java アプリケーションに JVM 設定を渡そうとしています。deployment.yaml ファイルに次の設定を追加しました。
spec:
template:
spec:
containers:
- env:
- name: JAVA_OPTS
value: '-Xms128m -Xmx1024m -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=256m'
Pod で Java プロセスが開始されると、Java_OPTS がデフォルト値で上書きされることがわかります ( -XX:MaxMetaspaceSizeの 2 番目の設定を参照)。
DEBUG [org.jboss.as.config] (MSC service thread 1-1) VM Arguments: -Xms128m -Xmx1024m -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=256m -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m -XX:+ExitOnOutOfMemoryError
最終的には次のようになります。
Terminating due to java.lang.OutOfMemoryError: Metaspace
JKube Maven プラグインを使用するときに JVM 設定を正しく設定する方法をお勧めできますか? ありがとう