-
Notifications
You must be signed in to change notification settings - Fork 31
Use cgroup for jvm memory limit #337
Use cgroup for jvm memory limit #337
Conversation
Note: not currently tested with elasticsearch |
Ran this https://gist.github.com/munnerz/bb19540ab547fc5d2ec1e1af0f7a2963
EDIT: updated with more versions |
cool, so 5.2.1 is the only one that won't support the cgroup flags |
I've updated my comment with some more versions |
@cehoffman do you have a requirement for any specific elasticsearch versions? It looks like this fix would not work for:
|
Nope, currently on 6.2.3
…On Apr 18, 2018, 12:07 -0500, James Munnelly ***@***.***>, wrote:
@cehoffman do you have a requirement for any specific elasticsearch versions? It looks like this fix would not work for:
docker.elastic.co/elasticsearch/elasticsearch:5.3.2 = openjdk version "1.8.0_121"
docker.elastic.co/elasticsearch/elasticsearch:5.3.1 = openjdk version "1.8.0_121"
docker.elastic.co/elasticsearch/elasticsearch:5.3.0 = openjdk version "1.8.0_92-internal"
docker.elastic.co/elasticsearch/elasticsearch:5.2.1 = openjdk version "1.8.0_92-internal"
docker.elastic.co/elasticsearch/elasticsearch:5.2.0 = openjdk version "1.8.0_92-internal"
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
|
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: munnerz The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/retest |
Haven't been able to update navigator to a version which includes this change, but I updated a docker image for elasticsearch to include these flags. I found a couple problems. For elasticsearch, these flags are ignored because the default options for the JVM have min/max heap set. From the official blog introducing these flags I created a new image then removed the default heap flags. This resulted in constant OOM because of the memory required by pilot is my guess. InitialRAMFraction did not work how I expected, in a 6Gi limit container the JVM allocated a max heap of only 1.5Gi and never increased it. I reverted back to using Xms and Xmx flags until the OOM due to pilot memory can be addressed. Edit: |
This should cap memory limits to the amount allocated in the containers cgroup.