JJ_Mind:
作るためのJava 8仮想マシンに渡すことができる引数について学習した後、そのコンテナを意識し、私は春ブートサービスのための私のKubernetesの展開にこれらの引数を追加しようとしています(つまり、-XX:+ UseCGroupMemoryLimitForHeap:+ UnlockExperimentalVMOptions -XX) 。
私展開YAMLファイルのコンテナセクションでは、私は以下のものを持っています:
リソース: リクエスト: メモリ: "256Mi" CPU: "50メートル" の制限:
メモリ: "512Mi" CPU: "200メートル" ENV: -名前:JVM_OPTS 値:「-Xms256M -XX:+ UnlockExperimentalVMOptions -XX:+ UseCGroupMemoryLimitForHeap -XX: MaxRAMFraction = 1"
私のDockerfileでは、私が持っています:
ENV JVM_OPTS = " - Xmx256M" ENV JVM_ARGS = " - Dspring.profiles.active = kubernetes" 8080 EXPOSE ENTRYPOINTを[ "SH"、 "-c"、 "JAVA $ JVM_ARGS $ JVM_OPTS -jar testservice.jar"]
私は、最大ヒープが適切なサイズを取得しない大きさの理由を見つけ出すように見えることはできません。
$ kubectl幹部テストサービス展開79c9d4bd54-trxgj -cテストサービス- javaの-XshowSettings:VM -version」 VMの設定: マックス。ヒープサイズ(概算):875.00M 人間工学機械クラス:サーバー VMを使用する:OpenJDKの64ビットサーバーVM OpenJDKのバージョン"1.8.0_171" OpenJDKのランタイム環境(IcedTeaの3.8.0)(アルパイン8.171.11-R0) OpenJDKの64ビットサーバーのVM(ビルド25.171-B11、混合モード)
何が私がここに間違っているのでしょうか?
ドッカーローカルインストールでは、私はJVMの最大ヒープセットを正しく見ることができます:
$ドッキングウィンドウの実行のOpenJDK:8-JRE-高山javaの-Xms256M -Xmx512M -XX:+ UnlockExperimentalVMOptions -XX:+ UseCGroupMemoryLimitForHeap -XX:MaxRAMFraction = 1 -XshowSettings:VM -version VMの設定: ミン。ヒープサイズ:256.00M マックス。ヒープサイズ:512.00M 人間工学機械クラス:サーバー VMを使用する:OpenJDKの64ビットサーバーVM OpenJDKのバージョン"1.8.0_171" OpenJDKのランタイム環境(IcedTeaの3.8.0)(アルパイン8.171.11-R0) OpenJDKの64ビットサーバーVM(ビルド25.171-B11、混合モード)
シルバーフォックス :
実行している場合はjava -XshowSettings:vm -version
、コンテナに、JVM_OPTS
あなたのコマンドに含まれていません。
この1を試してみてください
kubectl exec test-service-deployment-79c9d4bd54-trxgj -c test-service \
-- sh -c 'java $JVM_OPTS -XshowSettings:vm -version'