安装前准备
1.创建用户elsearch和对应的用户组
创建用户组 groupadd elsearch
创建用户并指定对应的用户组 useradd elsearch -g elsearch
2.检查Java环境
创建好用户后,使用 su - elsearch 切换到 elsearch 用户,并执行 java -version 检查该用户能否使用java环境。
细节1.在安装java环境的时候,尽量不要使用root用户的相关目录!
3.切换到 elsearch 用户后,在其 "家" 目录 (cd ~) 创建 data 文件夹,然后为 elasticsearch 创建数据目录和日志目录,这俩目录将在配置文件中用到。
数据目录 /home/elsearch/data/elsearch/data
日志目录 /home/elsearch/data/elsearch/logs
安装
1.进入官网获取安装资源 https://www.elastic.co/downloads/elasticsearch
下载好安装包后,将其上传到服务器中。或者可以直接使用 wget 进行下载。此教程以 /soft 目录为例子。
2.解压安装包 tar -zxvf /soft/elasticsearch-6.6.1.tar.gz
3.更改解压后所得文件夹下所属的用户组的权限 chown -R elsearch:elsearch /soft/elasticsearch-6.6.1
4.进入elasticsearch-6.6.1目录,修改配置文件
cd /soft/elasticsearch-6.6.1
vim config/elasticsearch.yml
文本如下:
cluster.name: JSJ-ES
node.name: JSJ-ES01
path.data: /home/elsearch/data/elsearch/data
path.logs: /home/elsearch/data/elsearch/logs
network.host: 192.168.0.100
运行
1.进入 elasticsearch-6.6.1 的 bin 目录,执行 ./elasticsearch 命令就可以了,执行 ./elasticesrarch -d 是后台运行。
成功启动后,使用 curl http://192.168.0.100:9200 进行访问,将出现如下结果
启动失败常见问题1. max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536] 每个进程最大同时打开文件数太小。修改 /etc/security/limits.conf 文件,增加配置,用户退出后重新登录生效。在末尾追加 (自己手工缩进一下)
* soft nofile 65536
* hard nofile 65536
启动失败常见问题2. max number of threads [3818] for user [es] is too low, increase to at least [4096] 问题同上,最大线程个数太低。修改配置文件/etc/security/limits.conf,增加配置,用户退出后重新登录生效。在末尾追加 (自己手工缩进一下)
* soft nproc 4096
* hard 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 ,然后使用 sysctl -p 使其生效
细节2.这些东西最好就在启动前检查好,然后一气呵成
2.停止。如果使用 ./elasticsearch 启动的话,先按 ctrl+z 跳出,然后使用 ps -aux | grep 'elasticsearch' 查询进程号,再使用 kill -9 进程号 进行停止。如果是 ./elasticesrarch -d 启动,则直接查询进程号后kill。
设置执行脚本并添加开机启动
在/etc/init.d目录下新建文件 elasticsearch
#!/bin/sh
#chkconfig: 2345 80 05
#description: elasticsearch
export JAVA_HOME=/soft/jdk1.8.0_201
export JAVA_BIN=$JAVA_HOME/bin
export PATH=$PATH:$JAVA_BIN
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH
case "$1" in
start)
su elsearch<
cd /soft/elasticsearch-6.6.1/
./bin/elasticsearch -d
!
echo "elasticsearch startup"
;;
stop)
es_pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'`
kill -9 $es_pid
echo "elasticsearch stopped"
;;
restart)
es_pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'`
kill -9 $es_pid
echo "elasticsearch stopped"
su elsearch<
cd /soft/elasticsearch-6.6.1/
./bin/elasticsearch -d
!
echo "elasticsearch startup"
;;
*)
echo "start|stop|restart"
;;
esac
exit $?
细节3.注意所切换的用户名 elsearch 和 elasticsearch 的安装目录 cd /soft/elasticsearch-6.6.1/
保存退出后,使用 chmod +x elasticsearch 赋予执行权限
添加到开机任务 chkconfig --add elasticsearch
ik 分词器安装
1.下载 ik 分词器插件 https://github.com/medcl/elasticsearch-analysis-ik/releases ,注意要与 elasticsearch 的版本相匹配
2.进入 elasticsearch 的插件目录,并创建 ik 文件夹。cd /soft/elasticsearch-6.6.1/plugins/ & mkdir ik & cd ik/
3.把下载到的分词器插件传到 ik 目录,然后进行解压。unzip elasticsearch-analysis-ik-6.6.1.zip
4.重启 elasticsearch 后,在浏览器上访问 http://192.168.0.100:9200/_cat/plugins 结果如下图所示说明安装成功
注意,此例子的 elasticsearch 版本为 6.6.1。为更好体验分词插件的效果,建议安装前查询一次,安装后再查询一次,然后对比两次查询结果
Kibana 安装
1.获取安装资源 https://www.elastic.co/cn/downloads/kibana
2.解压Kibana安装包 tar -zxvf kibana-6.6.1-linux-x86_64.tar.gz
3.进入安装目录,修改配置文件。vim config/kibana.yml
#端口
server.port: 5601
#主机
server.host: "0.0.0.0"
#es的地址
elasticsearch.hosts: ["http://192.168.0.100:9200"]
#kibana在es中的索引
kibana.index: ".kibana"
4.在安装目录里创建日志文件夹 mkdir logs
5.启动 (进入 bin 目录)
不能关闭终端 ./kibana
可关闭终端,在nohup.out中查看日志 nohup ./kibana > /soft/kibana-6.6.1-linux-x86_64/logs/nohub.out &
6.停止
根据端口情况获取进程号 netstat -ntulp | grep 5601
杀进程 kill -9 进程号
7.开机自启动
在/etc/init.d目录下新建文件 kibana
#!/bin/sh
#chkconfig: 2345 80 05
#description: kibana
case "$1" in
start)
cd /soft/kibana-6.6.1-linux-x86_64/
nohup ./bin/kibana > /soft/kibana-6.6.1-linux-x86_64/logs/nohub.out &
!
echo "kibana startup"
;;
stop)
tmp_pid=`netstat -ntulp | grep 5601 | awk '{print $7}'`
k_pid=${tmp_pid%%/*}
kill -9 $k_pid
echo "kibana stopped"
;;
restart)
tmp_pid=`netstat -ntulp | grep 5601 | awk '{print $7}'`
k_pid=${tmp_pid%%/*}
kill -9 $k_pid
echo "kibana stopped"
cd /soft/kibana-6.6.1-linux-x86_64/
nohup ./bin/kibana > /soft/kibana-6.6.1-linux-x86_64/logs/nohub.out &
!
echo "kibana startup"
;;
*)
echo "start|stop|restart"
;;
esac
exit $?
保存退出后,使用 chmod +x kibana赋予执行权限
添加到开机任务 chkconfig --add kibana
参考
linux 安装 Elasticsearch5.6.x 详细步骤以及问题解决方案 https://www.cnblogs.com/lizichao1991/p/7809156.html
elasticsearch启动常见错误 https://www.cnblogs.com/zhi-leaf/p/8484337.html
elasticsearch设置执行脚本并添加开机启动 https://my.oschina.net/liuyuantao/blog/1798724