elasticsearch6.5集群环境搭建的一些坑

都说el配置很简单,确实比solr简单多了,不用手动配置一大堆,不过第一次配置也不轻松,因为马虎老是漏掉了许多地方

配置一个半小时才启动成功:

这里主要记录一下一些遇到的坑:

一 不能用root启动,可以将el相关的目录权限全部授权给普通用户:

chown -R username /usr/local/el 

还有一点是,这下面创建目录必须用普通用户,否则还是root的权限

二 bootstrap checks failed [1]: max file descriptors [65535] for elasticsearch

虚拟内存和可打开文件不够启动会报错:

所以必须要配置:

编辑 /etc/security/limits.conf,追加以下内容;
* soft nofile 65536
* hard nofile 65536
此文件修改后需要重新登录用户,才会生效


: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

编辑 /etc/sysctl.conf,追加以下内容:
vm.max_map_count=655360
保存后,执行:
sysctl -p

重新启动,成功

三 9200 9300 别忘了打开

四 这个算是个大坑了,节点无法自动加入集群

刚开始部署完成时,启动了三台节点,都成功了,但是查看状态,显示只有一个节点,这里还需要添加一个配置:

我这里主要是刚开始没有配置这个,所以脑裂了,每个节点都说自己是master,这里查了好多资料,百度上说的都不一样,

有个比较靠谱的解释是  : 可能成为master的最小的节点个数,我这里配置至少要有两个节点才能有master,所以单个节点就不会脑裂了!!!

总之,这里一定要配置,否则就有可能形成脑裂了

五 memory locking requested for elasticsearch process but memory is not locked

这个主要是配置了内存锁定额外需要配置的一个,不锁定就不用配置:

解决办法如下:

需要修改
/etc/security/limits.conf 
baoshan soft memlock unlimited
baoshan hard memlock unlimited

原文地址:https://www.cnblogs.com/houzheng/p/10055817.html