タグ

2018年6月19日のブックマーク (1件)

  • OpenShiftやKubernetes上でJavaを動かす際の注意 - nekop's blog

    OpenShift 全部俺 Advent Calendar 2017 OpenShiftやKubernetes上でリソース制限を設定したコンテナでJavaを動かすとき、デフォルト設定のままだとパフォーマンスが悪くなったり、oom-killerに殺されたりします。これはコンテナのcgroupsの制限をJavaが考慮しないためです。 Javaはデフォルトでホストのメモリの1/4を最大Javaヒープメモリに設定し、Java VM体、スタック、Metaspaceなどの非Javaヒープ領域を含めると最終的にその倍程度のメモリを利用します。たとえば16GBのマシンだと8GBくらいです。これを4GBなどの制限で動作させるとメモリが確保できずエラー終了もしくはoom-killerに殺されます。また、GCThreadsなども効率を最大化するためにCPUコア数とスレッド数を同一に設定します(厳密には8コア超

    OpenShiftやKubernetes上でJavaを動かす際の注意 - nekop's blog
    nobeans
    nobeans 2018/06/19