elasticsearch常见的问题及解决办法总结
1、unable to install syscall filter:Java.lang.UnsupportedOperationException:seccomp unavailable: requires kernel 3.5+ with CONFIG_SECCOMPandCONFIG_SECCOMP_FILTERcompiledinatorg.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的版本过低
解决方案:
重新安装新版本的linux系统
2、ERROR: bootstrap checks failed:max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
原因:无法创建本地文件问题,用户最大可创建文件数太小
解决方案:
切换到root用户,编辑limits.conf配置文件, 添加类似如下内容:
vi /etc/security/limits.conf
添加如下内容:
*? soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
备注:* 代表Linux所有用户名称(比如hadoop)
保存、退出、重新登录才可生效
3、max number of threads [1024] for user [es] likely too low, increase to at least [2048]
原因:无法创建本地线程问题,用户最大可创建线程数太小
解决方案:
切换到root用户,进入limits.d目录下,修改90-nproc.conf 配置文件。
vi /etc/security/limits.d/90-nproc.conf
修改 * soft nproc 1024 为? * soft nproc 2048
4、max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
原因:最大虚拟内存太小
解决方案:
切换到root用户下,修改配置文件sysctl.conf
vi /etc/sysctl.conf
添加下面配置:vm.max_map_count=655360
并执行命令:sysctl -p
5、ElasticSearch启动找不到主机或路由
原因:ElasticSearch 单播配置有问题
解决方案:检查ElasticSearch中的配置文件
vi? config/elasticsearch.yml
注意此配置格式
discovery.zen.ping.unicast.hosts:["192.168.**.**:9300","192.168.**.**:9300"]
6、org.elasticsearch.transport.RemoteTransportException: Failed to deserialize exception response from stream
原因:ElasticSearch节点之间的jdk版本不一致
7、Unsupported major.minor version 52.0
原因:jdk版本太低
解决方案:elasticsearch5.0.0支持jdk1.8.0
8、bin/elasticsearch-plugin install license? ? ? ? ERROR: Unknown plugin license
原因:ElasticSearch5.0.0以后插件命令已经改变
解决方案:bin/elasticsearch-plugin install x-pack
9、启动异常:ERROR: bootstrap checks failed? ?system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk?
原因:因为Centos6不支持SecComp,而ES5.2.1默认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
10、格式问题:Exception in thread "main" 2017-11-10 06:29:49,106 main ERROR No log4j2 configuration file found. Using default configuration: logging only errors to the console. Set system property 'log4j2.debug' to show Log4j2 internal initialization logging.ElasticsearchParseException[malformed, expected settings to start with 'object', instead was [VALUE_STRING]]
原因:elasticsearch.yml中的配置项的格式有问题
解决方案:请尽量保持冒号前面没空格,后面一个空格,不要用tab键
bootstrap.memory_lock: false
推荐阅读
-
Windows 64 位 mysql 5.7以上版本包解压中没有data目录和my-default.ini及服务无法启动的快速解决办法(问题小结)
-
个人所得税app常见的五大问题及解决方法介绍
-
MAC下MYSQL5.7.17连接不上的问题及解决办法
-
从零到一详聊创建Vue工程及遇到的常见问题
-
HTML5实现简单图片上传所遇到的问题及解决办法
-
关于HTML5 Placeholder新标签低版本浏览器下不兼容的问题分析及解决办法
-
腾讯音乐人是干嘛的?成为腾讯音乐人的方法及常见问题解答
-
Win7版IE10安装过程中的常见问题整理及解决
-
MySQL 一次执行多条语句的实现及常见问题
-
CorelDraw印前输出问题的分析及解决办法