Linux 下 安装 Elasticsearch 7.10.1
目录
目录
Linux 下 安装 Elasticsearch 7.10.1
四、启用安全认证x-pack,避免elasticsearch裸奔
一、资源准备
1. 下载ElasticSearch 安装包:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.1-linux-x86_64.tar.gz 链接:https://pan.baidu.com/s/1ovuLXJYTNdinJy8O0lD0CA 提取码:r4ak
2. 安装jdk,es希望我们使用11以上版本,在这里我使用为jdk8,安装过程省略,链接:https://pan.baidu.com/s/1fpQio-Hm-UW8awNyJDtXJg 提取码:7ey3
3. IK分词器资源:https://github.com/medcl/elasticsearch-analysis-ik/releases 链接:https://pan.baidu.com/s/18mG2qOIeGQhj59qNwm2xcA 提取码:8cl2
二、安装es
1. 解压Es
#解压命令
tar -zxvf elasticsearch-7.10.1-linux-x86_64.tar.gz
#切换目录并查看
cd /es/elasticsearch-7.10.1/ && ll
2. 新建data,上图是我已经创建好的目录
mkdir data
3. 修改 config/elasticsearch.yml
vim /config/elasticsearch.yml
取消或者修改下列项注释并修改
cluster.name: my-application #集群名称
node.name: node-1 #节点名称
#数据和日志的存储目录
path.data: /www/server/es/data
path.logs: /www/server/es/logs
#设置绑定的ip,设置为0.0.0.0以后就可以让任何计算机节点访问到了
network.host: 0.0.0.0
http.port: 9200 #端口
#设置在集群中的所有节点名称,这个节点名称就是之前所修改的,当然你也可以采用默认的也行,目前是单机,放入一个节点即可
cluster.initial_master_nodes: ["node-1"]
修改完毕后 :wq 退出保存即可
4. 修改java的jvm内存
elasticsearch使用java的jvm默认是使用1G的内存的,这里我们修改一下内存,但如果你的配置足够的话,就无需修改。我的修改如下 :
cd /es/elasticsearch-7.10.1
vim /config/jvm.options
-Xms512m
-Xmx512m
5. 编辑elastaticsearch启动脚本设置JDK地址
#切换目录
cd /es/elasticsearch-7.10.1/bin/ && ll
#编辑命令
vim elasticsearch
#加入内容--》ES 7.X最低需要JDK 11及以上版本--》此步骤酌情忽略
export JAVA_HOME=/java/jdk
export PATH=$PATH:$JAVA_HOME/bin
6. 修改Linux系统进程内存限制
#编辑命令
vim /etc/security/limits.conf
#添加内容,这里注意一下,博主设置*未生效,因此改为esAdmin,各位看官自行配置
esAdmin soft nofile 65536
esAdmin hard nofile 131072
esAdmin soft nproc 2048
esAdmin hard nproc 4096
#编辑命令
vim /etc/sysctl.conf
#添加内容
vm.max_map_count=262145
#保存退出并刷新
sysctl -p
7. 为elasticsearch创建用户
elasticsearch是不能使用root用户操作,这里我们就需要创建一个其他用户,我创建的为 esAdmin
# 增加用户--》示例: useradd esAdmin
useradd 用户名
# 设置密码--》示例: passwd esAdmin
passwd 用户名
#设置授权--》示例: chown esAdmin:esAdmin /es/elasticsearch-7.10.1/ -R
chown 用户名:用户名 ES安装目录 -R
# 切换用户
su 用户名
8. vim 编辑 /etc/security/limits.d/20-nproc.conf,将* 改为用户名(es)
esAdmin soft nproc 4096
root soft nproc unlimited
9. 启停
#切换用户
su es-sys
#切换目录
cd /es/elasticsearch-7.10.1/bin/ && ll
#启动--》控制台启动
./elasticsearch
#启动--》后台启动
./elasticsearch -d
#查看进程
ps -ef|grep elasticsearch
10. 测试访问
#访问地址--》示例: http://11.125.10.151:9200/
http://您的IP:您设置的端口/
11. 设置服务器开机自启es
在 /etc/init.d 目录下,创建脚本文件 elasticsearch
cd /etc/init.d/
vim elasticsearch
将以下内容写入文件中(其中JDK安装路径、elasticsearch安装路径及用于启动的elasticsearch的用户根据实际情况进行修改)
#!/bin/sh
#chkconfig: 2345 80 05
#description: elasticsearch
export JAVA_HOME=/usr/local/java/jdk1.8.0_171
export JAVA_BIN=/usr/local/java/jdk1.8.0_171/bin
export PATH=$PATH:$JAVA_HOME/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 - es<<!
cd /usr/local/elasticsearch-6.8.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 - es<<!
cd /usr/local/elasticsearch-6.8.1
./bin/elasticsearch -d
!
echo "elasticsearch startup"
;;
*)
echo "start|stop|restart"
;;
esac
exit $?
在 /etc/init.d 目录下赋予新创建的elasticsearch文件执行权限
chmod +x elasticsearch
添加到开机启动任务
chkconfig --add elasticsearch
重启机器,检测elasticsearch是否自启
ps -ef|grep elasticsearch
检测elasticsearch服务是否正常
正常启动,至此Linux下设置Elasticsearch开机自启完成!
三、 安装IK分词器
1. 新建ik插件目录
#切换目录
cd /es/elasticsearch-7.10.1/plugins
#创建文件目录并查看
mkdir analysis-ik && ll
2. 解压IK资源包到该目录下
#解压命令
unzip -d /es/elasticsearch-7.10.1/plugins/analysis-ik/ elasticsearch-analysis-ik-7.10.1.zip
#切换目录
cd /es/elasticsearch-7.10.1/plugins/analysis-ik/ && ll
3. 重新启动查看IK插件是否加载
4. 再次通过网页查看是否启动成功
四、启用安全认证x-pack,避免elasticsearch裸奔
1. 进入es的配置文件夹
cd /es/elasticsearch-7.10.1/config
vim elasticsearch.yml
2. 加入x-pack配置项
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
3. 重启elasticsearch
4. 进入bin目录,执行以下命令,依次设置elastic,apm_system,kibana_system,logstash_system,beats_system的密码
./elasticsearch-setup-passwords interactive
5. 再次访问ip:9200访问es,出现以下内容表示成功