Issue on latest image: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
fahadysf opened this issue ยท 10 comments
Launching the latest docker image fails with the error message:
Output from image console is: pastebin-link with complete output
Relevant error message:
elk_1 | [2016-11-27T21:58:16,368][INFO ][o.e.b.BootstrapCheck ] [jpehzFE] bound or publishing to a non-loopback or non-link-local address, enforcing bootstrap checks
elk_1 | [2016-11-27T21:58:16,369][ERROR][o.e.b.Bootstrap ] [jpehzFE] node validation exception
elk_1 | bootstrap checks failed
elk_1 | max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
I googled up this issue on the elasticsearch docker image issue list and the suggestion to use:
sysctl -w vm.max_map_count=262144
on the host running the image resolves the problem. Is there any other/better way to do this?
That's one way to do it, you can make the change permanent by editing the /etc/sysctl.conf
file (see #79, #89, and http://elk-docker.readthedocs.io/#troubleshooting).
Even if this value is correct, ES5 won't start anymore in docker with same error here bla bla readonly error.
@x-itec This issue has been pretty much solved for everyone by now, so shouldn't remain a problem: see http://elk-docker.readthedocs.io/#prerequisites for ways around this. If this doesn't solve it:
-
Could you post a full output of how you set
vm.max_map_count
and started the container + output from the container? ("bla bla readonly error" isn't the usual error one gets when the parameter is set incorrectly) -
What are you running Docker on?
-
Can you confirm that you have set
vm.max_map_count
on the host? -
If you
bash
into the container, has this value been taken into account? -
Depending on your setup, have you tried setting the
MAX_MAP_COUNT
environment variable?
Hello Guys,
I am getting similar behavior:
root@cfELK:~# sysctl -w vm.max_map_count=262144
sysctl: setting key "vm.max_map_count": Read-only file system
I tried this and it did take but it still doesn't start with the new value
vim /etc/sysctl/sysctl.conf
and added this to the bottom of the file and rebooted the server
vm.max_map_count = 262144
So at this point not sure where to go with this, any help would be appreciated,
Thanks,
Michael
root@cfELK:~# sysctl -w vm.max_map_count=262144
sysctl: setting key "vm.max_map_count": Read-only file system
It seems that you're attempting to change the parameter in the container: you need to do it on the host running the container (and check that the value has actually been updated using sysctl vm.max_map_count
).
root@cfELK:~# sysctl -w vm.max_map_count=262144 Helped me, Many thanks
What if the host is windows? How do you change the parameter.
root@cfELK:~# sysctl -w vm.max_map_count=262144
sysctl: setting key "vm.max_map_count": Read-only file system
It seems that you're attempting to change the parameter in the container: you need to do it on the host running the container (and check that the value has actually been updated using sysctl vm.max_map_count).
@mikebrusilov haven't tested it but I assume that boot2docker/boot2docker#1216 should do the trick. Let me know if it works out for you.