问题1:max_map_count不够大
max virtual memory areas vm.max_map_count [65536] likely too low, increase to at least [262144]
解决:内核参数(max_map_count)
cat /proc/sys/vm/max_map_count 查看一下
echo 1000000 >> /proc/sys/vm/max_map_count 然后重定向修改文件的值
问题2:警告提示
[2016-11-06T16:27:21,712][WARN ][o.e.b.JNANatives ] unable to install syscall filter:
java.lang.UnsupportedOperationException: seccomp unavailable: requires kernel 3.5+ with CONFIG_SECCOMP and CONFIG_SECCOMP_FILTER compiled in
at org.elasticsearch.bootstrap.Seccomp.linuxImpl(Seccomp.java:349) ~[elasticsearch-5.0.0.jar:5.0.0]
at org.elasticsearch.bootstrap.Seccomp.init(Seccomp.java:630) ~[elasticsearch-5.0.0.jar:5.0.0]
报了一大串错误,其实只是一个警告。
解决:使用心新linux版本,就不会出现此类问题了。
问题3:ERROR: bootstrap checks failed
max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
max number of threads [1024] for user [lishang] likely too low, increase to at least [2048]
解决:切换到root用户,编辑limits.conf 添加类似如下内容
vi /etc/security/limits.conf
添加如下内容:
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
问题4:进程数不够
max number of threads [2047] for user [elk] likely too low, increase to at least [2048]
解决: cat /proc/sys/kernel/threads-max 查看进程的总数
ulimit -a 查看所有用户的进程数
ulimit -u 2048 修改进程数为2048