1、JDK的安装
ES的运行依赖于JDK,所以必须先安装它,但是本教程主要是讲解ES的安装,所以JDK的安装在此省掉。但是需要在这里说明的是ES6之后的版本不能低于DK1.8,所以必须确保jdk1.8以上版本,否则后面会报JDK版本错误。
2、解压安装包
tar -zxvf ./elasticsearch-6.7.0.tar.gz
3、启动ES
进入ES安装目录
cd elasticsearch-6.7.0
运行ES
./bin/elasticsearch
4、校验
curl http://localhost:9200
如果看到下面的内容,表示安装成功
到这里安装就结束了,是不是感觉很简单,其实没有这么简单,这里面会遇到很多问题,你能看到上面的内容,其实是这些我已经都偷偷的解决了。那么会遇到哪些问题呢,下面我罗列下:
1、 can not run elasticsearch as root
英文好点的朋友应该能看懂这个报错,没错就是指不能以root用户运行ES,所以你要新增一个普通用户,命令如下
groupadd elsearch
useradd elsearch -g elsearch -p elasticsearch
光新增用户不够,还要给新增用户授权
chown -R elsearch:elsearch elasticsearch-6.7.0
通过su命令切换到elsearch用户,用他启动就不会出现这个问题了。
2、 requires kernel 3.5+ with CONFIG_SECCOMP and CONFIG_SECCOMP_FILTER compiled in
只要在配置文件/config/elasticsearch.yml中加两句好就好了,注意不要使用root用户去编辑,要使用你新增的普通用户。
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
3、 max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
修改/etc/security/limits.conf文件,在后面加上如下类容
elsearch soft nofile 65536
elsearch hard nofile 65536
注意上面elsearch是你新增的用户名称
4、 max number of threads [1024] for user [elsearch] is too low, increase to at least [4096]
修改文件/etc/security/limits.d/90-nproc.conf,在后面加如下类容,elsearch为你新增的用户名称
elsearch soft nproc 4096
5、 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,修改完成后在命令行执行sysctl -p命令,使修改生效。