目录
- 一、检查java环境
- 二、下载安装Elasticsearch
- 2.1.创建安装目录
- 2.2.下载Elastaicsearch
- 2.3.解压压缩文件
- 2.4.创建运行es的用户
- 2.5.修改es配置文件
- 2.6.系统设置(Root用户)
- 2.6.1设置内核参数
- 2.6.2.修改进程与线程数
- 2.7.启动Elasticsearch
- 2.7.1启动异常
- 2.7.1.2.jdk版本问题
- 2.7.2启动正常
- 2.8.配置开机自启
- 三、ik分词器安装
一、检查java环境
Elasticsearch需要Java8或者更高版本的支持
java -version
二、下载安装Elasticsearch
2.1.创建安装目录
mkdir -p /usr/local/software/elasticsearch
cd /usr/local/software/elasticsearch/
2.2.下载Elastaicsearch
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.0-linux-x86_64.tar.gz
2.3.解压压缩文件
tar -xzvf elasticsearch-7.10.0-linux-x86_64.tar.gz
2.4.创建运行es的用户
因为es为了安全原因,不允许使用root用户运行es
# 1、创建新的用户
adduser elasticsearch
# 2、设置用户密码
passwd elasticsearch
# 3、授权给新建用户es文件夹的权限
chown -R elasticsearch /usr/local/software/elasticsearch/elasticsearch-7.10.0
# 4、切换用户
su elasticsearch
2.5.修改es配置文件
vi /usr/local/software/elasticsearch/elasticsearch-7.10.0/config/elasticsearch.yml
#1、集群名称,需确保不同的环境中集群的名称不重复,否则节点可能会连接到错误的集群上
cluster-name: my-application
#2、节点名称
node.name: node-1
#3、网络主机设置
network.host: 0.0.0.0
#4、端口
http.port: 9200
#5、集群主节点信息
cluster.initial_master_nodes: ["node-1"]
2.6.系统设置(Root用户)
2.6.1设置内核参数
Elasticsearch mmapfs默认使用目录来存储其索引。默认的操作系统对mmap计数的限制可能太低,这可能会导致内存不足异常。
vi /etc/sysctl.conf
vm.max_map_count = 655360
保存后输入下面的命令以使上面的配置生效
sysctl -p
2.6.2.修改进程与线程数
sudo vi /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536
* soft nproc 4096
* hard nproc 4096
2.7.启动Elasticsearch
2.7.1启动异常
-d 命令是让es服务在后台运行
/usr/local/software/elasticsearch/elasticsearch-7.10.0/bin/elasticsearch -d
2.7.1.2.jdk版本问题
说明本地服务器java版本太低,可修改es指定自带jdk路径
vim /usr/local/software/elasticsearch/elasticsearch-7.10.0/bin/elasticsearch
#=======添加配置解决jdk版本问题=====
export JAVA_HOME=/usr/local/software/elasticsearch/elasticsearch-7.10.0/jdk # (将原目录修改为es中自带jdk的配置目录)
export PATH=$JAVA_HOME/bin:$PATH
#============
#=======添加配置解决jdk版本问题=====
if [ -x "$JAVA_HOME/bin/java" ]; then
JAVA="/usr/local/software/elasticsearch/elasticsearch-7.10.0/jdk/bin/java"
else
JAVA=`which java`
fi
#============
2.7.2启动正常
/usr/local/software/elasticsearch/elasticsearch-7.10.0/bin/elasticsearch -d
curl http://localhost:9200
2.8.配置开机自启
在/etc/init.d/目录创建elasticsearch文件
vim /etc/init.d/elasticsearch,文件内容如下:
#!/bin/bash
#
#chkconfig: 345 63 37
#description: elasticsearch
#processname: elasticsearch-7.10.0
ES_HOME=/usr/local/software/elasticsearch/elasticsearch-7.10.0
case in
start)
su - es -c "$ES_HOME/bin/elasticsearch -d -p pid"
echo "elasticsearch is started"
;;
stop)
pid=`cat $ES_HOME/pid`
kill -9 $pid
echo "elasticsearch is stopped"
;;
restart)
pid=`cat $ES_HOME/pid`
kill -9 $pid
echo "elasticsearch is stopped"
sleep 1
su - es -c "$ES_HOME/bin/elasticsearch -d -p pid"
echo "elasticsearch is started"
;;
*)
echo "start|stop|restart"
;;
esac
exit 0
修改上面文件的权限,执行命令
chmod 777 /etc/init.d/elasticsearch
添加服务并设置启动方式
chkconfig --add elasticsearch
启动和关闭服务
service elasticsearch start // 启动服务
service elasticsearch stop // 关闭服务
service elasticsearch restart // 重启服务
设置服务的启动方式
chkconfig elasticsearch on // 设置开机启动
chkconfig elasticsearch off // 关闭开机启动
三、ik分词器安装
在 elasticsearch 中安装 ik 中文分词器
# 自己拉取源码进行打包
git clone https://github.com/medcl/elasticsearch-analysis-ik
git checkout tags/v7.10.0
mvn package
1. 将 target/releases/elasticsearch-analysis-ik-7.10.0.zip 拷贝到 es/plugins/ik 目录下
2. 在 es/plugins/ik 下对 elasticsearch-analysis-ik-7.10.0.zip 进行解压缩
比如 `elasticsearch-7.10.0pluginsik` 该文件夹下就是所有的解压缩内容
3. 重启 es