相关链接
- #主机名,通过 hostname 命令查询到
- cluster.initial_master_nodes: ["主机名"]
- network.host: 0.0.0.0
- http.port: 9200
- http.cors.enabled: true
- http.cors.allow-origin: "*"
vi elasticsearch-7.5.1/config/elasticsearch.yml
5.修改⽂件描述符: vi /etc/sysctl.conf,在最后面添加
vm.max_map_count=64000
6.执行命令sysctl -p,让配置生效
7.启动
- #es不允许root⽤户启动,需要添加新⽤户身份
- #创建elsearch⽤户组及elsearch⽤户
- groupadd elsearch
- useradd elsearch -g elsearch -p elasticsearch-7.5.1
- #更改elasticsearch⽂件夹及内部⽂件的所属⽤户及组为elsearch:elsearch
- chown -R elsearch:elsearch elasticsearch-7.5.1
- #切换到elsearch⽤户再启动
- su elsearch
- #启动
- ./elasticsearch-7.5.1/bin/elasticsearch
我这里启动报错了
主要报错信息有3个
- [1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
- [2]: max number of threads [3795] for user [elsearch] is too low, increase to at least [4096]
- [3]: max virtual memory areas vm.max_map_count [64000] is too low, increase to at least [262144]
8.解决报错
问题1:
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
解决:
- #切换到root用户修改
- su root
- vi /etc/security/limits.conf
-
- #在最后面追加下面内容,elsearch为刚刚创建的es用户
- elsearch hard nofile 65536
- elsearch soft nofile 65536
问题2:该报错是因为 elasticsearch 启动的时候要求当前用户最大线程数至少为 4096 个线程,而操作系统限制该用户最大线程数为 3795,只需要修改当前用户的最大线程数即可。可以使用ulimit -a
查看当前用户允许的最大线程数
[2]: max number of threads [3795] for user [elsearch] is too low, increase to at least [4096]
解决:
- #使用root用户修改
- vi /etc/security/limits.conf
-
- #在最后面追加下面内容,elsearch为刚刚创建的es用户
- elsearch - nproc 4096
问题3:刚刚修改的vm.max_map_count的值为64000还是太小了,根据提示,修改为262144即可
[3]: max virtual memory areas vm.max_map_count [64000] is too low, increase to at least [262144]
解决:执行第5、6步
9.切换elsearch用户,并启动
执行 curl http://localhost:9200,出现下面信息说明启动成功
10.上面的启动,如果关闭控制台,服务则会停止,下面创建一个守护进程的启动脚本
- #切换到root用户
- su root
-
- #进入到目录: /opt/app/elk/elasticsearch-7.5.1/bin/
- cd /opt/app/elk/elasticsearch-7.5.1/bin/
-
- #创建es.sh
- vi es.sh
-
- #往es.sh中添加以下内容
- nohup sh /opt/app/elk/elasticsearch-7.5.1/bin/elasticsearch > /opt/app/elk/elasticsearch-7.5.1/logs/log.out &
- tail -f /opt/app/elk/elasticsearch-7.5.1/logs/log.out
- #给es.sh文件赋权给elsearch用户
- chown elsearch.elsearch es.sh
-
- #加上执行权限
- chmod +x es.sh
11.切换elsearch用户,并执行es.sh
12.别的服务器访问不了,可能是是开启了防火墙,需要开放9200端口
- #查看防火墙是否开启
- systemctl status firewalld
输出以下信息为开启
- #可通过如下命令查看是否生效,输出yes表示开启,no表示未开启
- firewall-cmd --zone=public --query-port=9200/tcp
-
- #开启9200端口
- firewall-cmd --zone=public --add-port=9200/tcp --permanent
-
- #重新载入一下防火墙设置,使设置生效
- firewall-cmd --reload
1.创建文件夹/opt/app/elk/elasticsearch-7.5.1/plugins/ik
2.将解压到ik目录中
unzip /opt/app/elk/elasticsearch-analysis-ik-7.5.1.zip -d /opt/app/elk/elasticsearch-7.5.1/plugins/ik/
3.给elsearch用户授权: chown elsearch.elsearch -R /opt/app/elk/elasticsearch-7.5.1/plugins/ik/
4.重启es
- #查询进程
- ps -ef | grep elastic
-
- #杀进程
- kill -9 3372
-
- #切换elsearch用户
- su elsearch
-
- #执行es.sh启动es
- ./bin/es.sh
5.验证分词器
命令验证
curl http://localhost:9200/_analyze -X POST -H 'Content-Type:application/json' -d '{"text":"test elasticsearch 测试分词效果","analyzer": "ik_smart"}'
postman验证
日志平台搭建第一章:Linux 安装elasticsearch-7.5.1_bill447的博客-CSDN博客
日志平台搭建第二章:Linux使用docker安装elasticsearch-head_bill447的博客-CSDN博客
日志平台搭建第三章:Linux安装logstash_bill447的博客-CSDN博客
日志平台搭建第四章:Linux安装kibana_bill447的博客-CSDN博客
日志平台搭建第五章:Linux安装Kafka_bill447的博客-CSDN博客
日志平台搭建第六章:logstash通过kafka通道采集日志信息_bill447的博客-CSDN博客
日志平台搭建第七章:Linux安装kafka-manager_bill447的博客-CSDN博客
日志平台搭建第八章:Linux安装filebeat_bill447的博客-CSDN博客