( NevemTeve | 2020. 05. 20., sze – 11:46 )

Onnan lehet tudni, hogy létezik, hogy ha hibás értéket adok meg neki, akkor panaszol rá (pl. 128M helyett 128MB). Ettől függetlenül úgy tűnik nekem, hogy ez az egész csodabazár valami derűs álomvilágban él, ahol kétszáz megabájt szóra sem érdemes, hiszen a RAM a fán terem, ugyebár...
Most éppen így megy, és (pillanatnyilag!) nem verdesi a fejét a cgroup felső korlátjába az alábbi beállításokkal:

docker.mem_limit=1024M

JVM_OPTS=-Xms128M -Xmx128M -XX:MaxMetaspaceSize=128M
  -XX:ReservedCodeCacheSize=128M

Egyébként nyilván van valami korrekt módja is a cgroup lekérdezésének, én ezt tákoltam:


Tmp=$(cat /proc/$Pid/cgroup  | grep memory); Cgroup=${Tmp#*/}
cd /sys/fs/cgroup/memory/$Cgroup/

while sleep 1; do
    usage=$(cat memory.usage_in_bytes)
    usage_max=$(cat memory.max_usage_in_bytes)
    usage_lim=$(cat memory.limit_in_bytes)
    failcnt=$(cat memory.failcnt)
    swusage=$(cat memory.memsw.usage_in_bytes)
    swusage_max=$(cat memory.memsw.max_usage_in_bytes)
    swusage_lim=$(cat memory.memsw.limit_in_bytes)
    swfailcnt=$(cat memory.memsw.failcnt)
    printf "%s |%12d %12d %12d %12d |%12d %12d %12d %12d\n" "$(date +%Y%m%d.%H%M%S)" \
    "$usage" "$usage_max" "$usage_lim" "$failcnt" \
    "$swusage" "$swusage_max" "$swusage_lim" "$swfailcnt"
done

Most, hogy a mai futás megvolt, így állnak az értékek:

dátum    idő        akt          max         limit              hiba     memsw.akt    memsw.max   memsw.limit   memsw.fail 
20200520.114723 |   335757312    711954432   1073741824            0 |   335757312    711954432   2147483648            0