对于初次安装es的同学总是避免不了各种各样令人崩溃的坑,不巧的是,网上能搜到的坑,基本上都踩过了,综合百家文献,特推出Elasticsearch独家避坑指南,欢迎各位同学参考。
因为Elasticsearch不能以root账户进行启动,所以需要新建账户
adduser elkchown -R elk /elk/elasticsearch-7.0.0
使es可以在局域网内访问修改配置文件(配置文件不能出现中文)
路径:elasticsearch-7.0.0/config/elasticsearch.yml修改内容:network.host: 0.0.0.0
修改ES的数据存储路径和日志存储路径
1、路径:elasticsearch-7.0.0/config/elasticsearch.yml path.logs: /var/log/elasticsearch path.data: /var/data/elasticsearch2、在对应位置创建相关目录3、赋予ELK账户操作权限chown -R elk /var/log/elasticsearchchown -R elk /var/data/elasticsearch
启动ES时会报如下各种无厘头的错误
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
每个进程最大同时打开文件数太小,可通过下面2个命令查看当前数量
ulimit -Hnulimit -Sn
解决办法:修改/etc/security/limits.conf文件
* soft nofile 65536* hard nofile 65536
[2]: max number of threads [1024] for user [elk] is too low, increase to at least [4096]
问题同上,最大线程个数太低。修改配置文件/etc/security/limits.d/20-nproc.conf,修改配置
* soft nproc 4096
[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
修改/etc/sysctl.conf文件,增加配置vm.max_map_count=262144切换到root账户执行sysctl -p生效
[4]: 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.0默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。解决:在elasticsearch.yml中配置bootstrap.system_call_filter为false,注意要在Memory下面:bootstrap.memory_lock: falsebootstrap.system_call_filter: false
[5]: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured
编辑elasticsearch.yml文件,将 #cluster.initial_master_nodes: ["node-1", "node-2"] 修改为 cluster.initial_master_nodes: ["node-1"]
可参考https://blog.csdn.net/toocruel/article/details/82864416
[6]: 启动运行找不到host :elk,需要添加host映射
vi /etc/hosts127.0.0.1 elk localhost localhost.localdomain localhost4 localhost4.localdomain4
启动方式:nohup bin/elasticsearch&
使用注意事项:
elasticsearch7.0有着明显的新特征,开源版elasticsearch7.0集群索引节点有上限1000个,超过1000节点索引不会再创建,建议索引定期合并,数据冷热分离。
elasticsearch集群部署可参考安:
https://www.tuicool.com/articles/VBVFzyi(仅供参考)
如果要更好的查看或者调试ES可以搭建elasticsearch-heard
精选原创推荐
Prometheus + Granafa 构建高大上的MySQL监控平台