启动报错①
Java HotSpot(TM) -Bit Server VM warning: INFO: os::commit_memory(, , ) failed; error='Cannot allocate memory' (errno=)
由于elasticsearch5.0默认分配jvm空间大小为2g,修改jvm空间分配
vi config/jvm.options
将文件中
-Xms2g
-Xmx2g
修改为
-Xms512m
-Xmx512m
启动报错②
unable to install syscall filter:
java.lang.UnsupportedOperationException: seccomp unavailable: CONFIG_SECCOMP not compiled into kernel, CONFIG_SECCOMP and CONFIG_SECCOMP_FILTER are needed
因为Centos6不支持SecComp,而ES默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。详见 :https://github.com/elastic/elasticsearch/issues/22899
解决方法:在elasticsearch.yml中配置bootstrap.system_call_filter为false,注意要在Memory下面:
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
启动报错③
max file descriptors [] for elasticsearch process likely too low, increase to at least []
原因:无法创建本地文件问题,用户最大可创建文件数太小
解决方法:切换到root用户,编辑limits.conf配置文件, 添加类似如下内容:
su root #切换到root用户 需要输入密码
vi /etc/security/limits.conf
添加如下内容:
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
启动报错④
max number of threads [] for user [lish] likely too low, increase to at least []
原因:无法创建本地线程问题,用户最大可创建线程数太小
解决方法:
切换到root用户,编辑limits.conf配置文件, 添加类似如下内容
su root #切换到root用户 需要输入密码
vi /etc/security/limits.d/-nproc.conf
修改如下内容:
* soft nproc 1024
修改为
* soft nproc 2048
启动时提示
main ERROR RollingFileManager (/usr/local/software/elasticsearch-/logs/elasticsearch.log)
java.io.FileNotFoundException: /usr/local/software/elasticsearch-/logs/elasticsearch.log
(Permission denied) java.io.FileNotFoundException: /usr/local/software/elasticsearch-/logs/elasticsearch.log (Permission denied)
原因:这是权限不足的问题。
解决方法:切换到root 用户 切换到elasticsearch安装目录 给elasticsearch用户授权即可
[root@iZ2zeaj3xjio5q3atn7pgbZ elasticsearch-.]# chgrp -R elasticsearch . #变更elasticsearch 用户组用操作当前文件夹的权限(有点)
[root@iZ2zeaj3xjio5q3atn7pgbZ elasticsearch-.]# chown -R elasticsearch . #变更elastisearch 用户有操作当前文件夹的权限(有点)