Java RAM Процентные параметры игнорируются - PullRequest
1 голос
/ 01 мая 2020

Я использую Java8u212 в контейнере Docker на K8s. Контейнер настроен с объемом памяти 1 ГБ.

sh-4.2$ cat /sys/fs/cgroup/memory/memory.limit_in_bytes
1073741824

Конфигурации запуска контейнера для Java предоставляются следующим образом:

- command:
        - /opt/tools/Linux/jdk/openjdk1.8.0_212_x64/bin/java
        - -XX:+HeapDumpOnOutOfMemoryError
        - -XX:HeapDumpPath=/heap-dump
        - -XX:InitialRAMPercentage=10.0
        - -XX:MinRAMPercentage=50.0
        - -XX:MaxRAMPercentage=80.0
        - -jar
        - app.jar
        - --server.port=8080

Однако при входе в контейнер после При запуске я замечаю, что ни одно из значений в процентах ОЗУ не настроено, а значения установлены по умолчанию.

sh-4.2$  java -XX:+PrintFlagsFinal -version | grep -iE 'HeapSize|MetaspaceSize|ThreadStackSize | UseContainerSupport | InitialRAMPercentage | MaxRAMPercentage | MinRAMPercentage'
     intx CompilerThreadStackSize                   = 0                                   {pd product}
    uintx ErgoHeapSizeLimit                         = 0                                   {product}
    uintx HeapSizePerGCThread                       = 87241520                            {product}
    uintx InitialBootClassLoaderMetaspaceSize       = 4194304                             {product}
    uintx InitialHeapSize                          := 16777216                            {product}
   double InitialRAMPercentage                      = 1.562500                            {product}
    uintx LargePageHeapSizeThreshold                = 134217728                           {product}
    uintx MaxHeapSize                              := 268435456                           {product}
    uintx MaxMetaspaceSize                          = 18446744073709547520                    {product}
   double MaxRAMPercentage                          = 25.000000                           {product}
    uintx MetaspaceSize                             = 21807104                            {pd product}
   double MinRAMPercentage                          = 50.000000                           {product}
     intx ThreadStackSize                           = 1024                                {pd product}
     bool UseContainerSupport                       = true                                {product}
     intx VMThreadStackSize                         = 1024                                {pd product}
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (Zulu 8.38.0.10-SA-linux64) (build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (Zulu 8.38.0.10-SA-linux64) (build 25.212-b04, mixed mode)

Что мне здесь не хватает? Спасибо за поиск.

...