前言
官网:https://www.wlastic.co/cn/downloads/elasticsearch
仅作为记录使用!
安装
# 注意:Elasticsearch不支持root用户运行
# 解压安装包
tar -xvf elasticsearch-7.14.0-linux-x86_64.tar.gz -C /usr/local
# 进入到elasticsearch的解压目录下
cd /usr/local/elasticsearch-7.14.0
# 进入config目录修改elasticsearch.yml配置文件
vi elasticsearch.yml
# 默认此文件所有内容都已经注释,只是一个模板,我们只需要修改以下内容即可 0.0.0.0 为任意IP均可访问
network.host: 0.0.0.0
http.port: 9200
cluster.initial_master_nodes: ["node-1"] #单节点保留一个
# 进入config目录修改jvm.options配置文件的启动参数
vi config/jvm.options
# 一个进程在VMAs(虚拟内存区域)创建内存映射最大数量
vi /etc/sysctl.conf
vm.max_map_count=655360
# 配置生效
sysctl -p
# 进入bin目录启动服务
cd bin
# 启动服务
./elasticsearch 或 ./elasticsearch -d #后台系统
查看elasticsearch进程是否开启,如下图所示:
ps aux | grep elasticsearch
此时,在浏览器输入192.168.1.220:9200进行验证,还是不能访问,因为,9200端口没有开放
执行如下命令开放端口:
# 查看端口
firewall-cmd --list-ports
# 开放9200端口
firewall-cmd --zone public --add-port=9200/tcp --permanent
# 重启防火墙
systemctl restart firewalld.service
# 查看防火墙开放端口
firewall-cmd --list-all
查询结果:
此时,再次输入192.168.1.220:9200进行验证
常见错误
错误1:
# 错误提示:
can not run elasticsearch as root
错误提示如下图:
原因分析:不能在root用户下启动elasticsearch
解决方法:切换为普通用户即可
错误2:
# 错误提示:
max file descriptors [4096] for elasticsearch process is too low,increase to at least [65535]
max number of threads [3791] for user [jack] is too low,increase to at least [4096]
错误提示如下:
原因分析:每个进程同时打开的文件数是有限制的
# 查看硬件资源设置
ulimit -a
结果如下:
命令如下:
# 进入/etc/security目录下的limits.conf配置文件
vi /etc/security/limits.conf
# 添加如下内容
jack soft nproc 65535
jack hard nproc 65535
jack soft nofile 65535
jack hard nofile 65535
注意:jack 为启动elasticsearch软件的用户名,根据自己启动的用户修改即可
详细如下:
利用ulimit -a再次查询修改结果:
注意:重新开启一个会话,才能生效
错误3:
原因:无法解析elasticsearch.yml
# 将原始文件中的如下内容:
cluster.initial_master_nodes: ["node-1", "node-2"]
# 修改为单节点
cluster.initial_master_nodes: ["node-1"]