Elasticsearch启动报错 集合
原因:elasticsearch自5版本之后,处于安全考虑,不允许使用root用户运行。
解决:创建一个普通用户,将elasticsearch 安装目录权限修改一下,切换至普通用户运行elasticsearch就可以了
useradd elk
chown -R elk.elk /usr/local/elasticsearch/
su - elk
cd /usr/local/elasticsearch/
[elk@node1 elasticsearch]$ ./bin/elasticsearch
问题2: 虚拟机中的es启动,显示成功。在本地机器上无法连接
解决: 关闭防火墙
systemctl status firewalld #查看防火墙状态
systemctl stop firewalld #关闭防火墙
elasticsearch.yml配置文件中修改成 network.host: 0.0.0.0
问题3
ERROR: [2] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
【1】修改/etc/security/limits.conf在最后添加
* soft nofile 65536
* hard nofile 131072
【2】解决办法:
1、切换到root用户修改配置sysctl.conf
vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
并执行命令:
sysctl -p
然后,重新启动elasticsearch,即可启动成功。
问题四
报错:
main ERROR RollingFileManager (/usr/local/software/elasticsearch-5.5.2/logs/elasticsearch.log)
java.io.FileNotFoundException: /usr/local/software/elasticsearch-5.5.2/logs/elasticsearch.log
(Permission denied) java.io.FileNotFoundException: /usr/local/software/elasticsearch-5.5.2/logs/elasticsearch.log (Permission denied)
原因是 有文件的权限是root,需要改为自己创建的用户
chown -R elk:elk 文件夹名称
kibana 报错
Request Timeout after 3000ms
修改kibana.yml文件,将30000毫秒(也就是30s) 改为50000
问题五
虚拟机启动成功,外网无法打开
经过ES问题的解决,应该也会受到启发,理所当然的想到该问题也是默认配置文件导致的。于是查看Kibana的配置文件Kibana.yml 发现其中有一项如下:
server.host: "localhost"
解决了ES的问题后,我们应该想到这个也是Kibana无法外网访问的原因,将其按照之前的规则进行修改,并取消注释:
server.host: "0.0.0.0"