1. 下载Elasticsearch
官网:https://www.elastic.co/cn/
小编这里下载的7.16.1版本
# 解压
tar -zxvf elasticsearch-7.16.1.tar.gz
# 切换目录
cd elasticsearch-7.16.1/
修改配置文件 config/elasticsearch.yml,添加如下配置:
network.host: 192.168.12.128
http.port: 9200
192.168.12.128是本机地址
9200是es的访问端口
启动ES:
# ./bin/elasticsearch -d 加-d后台运行
./bin/elasticsearch
es安装好之后,使用root启动会报错:can not run elasticsearch as root
原因:为了安全不允许使用root用户启动
解决:
es5之后的都不能使用添加启动参数或者修改配置文件等方法启动了,必须要创建用户:
1、创建用户:elk
adduser elk
2、创建用户密码,需要输入两次
passwd elk
3、将对应的文件夹权限赋给该用户
chown -R elk /db/elk/elasticsearch-7.16.1
4、切换至elk用户
su elk
5、进入启动目录启动:cd /db/elk/elasticsearch-7.16.1/bin
./elasticsearch -d
PS:删除用户命令:userdel -r elk
访问http://192.168.12.128:9200/发现还是报错:
啥意思呢?主要是文件权限、内存大小与默认配置问题:
错误:[3] 引导程序检查失败。 在启动 Elasticsearch 之前,您必须解决以下 [3] 行中描述的要点。
报错信息1、引导程序检查失败 [3] 中的 [1]:elasticsearch 进程的最大文件描述符 [4096] 太低,增加到至少 [65535]
处理办法: #切换到root用户修改
vi /etc/security/limits.conf
# 在最后面追加下面内容:
elk hard nofile 65536
elk soft nofile 65536
注:elk是启动es的用户
报错信息2、引导程序检查失败 [3] 的 [2]:最大虚拟内存区域 vm.max_map_count [65530] 太低,增加到至少 [262144]
处理办法: #切换到root用户修改
vim /etc/sysctl.conf
# 在最后面追加下面内容:
vm.max_map_count=655360
执行立即生效命令:
sysctl -p
报错信息3、bootstrap check failure [3] of [3]:默认发现设置不适合生产使用; 必须至少配置 [discovery.seed_hosts、discovery.seed_providers、cluster.initial_master_nodes] 之一
处理办法: #切换到root用户修改
修改./bin/elasticsearch.yml配置文件,在Discovery栏下加上“cluster.initial_master_nodes: [“node-1”]”,重启elasticsearch即可。如下所示:
此时再进入启动目录启动:cd /db/elk/elasticsearch-7.16.1/bin
./elasticsearch -d
即可启动成功!
访问http://192.168.12.128:9200/