本次安装的elasticsearch版本是7.15.2的
下载软件
elasticsearch
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.15.2-linux-x86_64.tar.gz
kibana
https://artifacts.elastic.co/downloads/kibana/kibana-7.15.2-linux-x86_64.tar.gz
注意版本需要一致
开始安装
elasticsearch
安装
从elasticsearch 7.x开始不需要安装jdk了,elasticsearch 目录中自带了jdk
- 开通防火墙端口
# 检查端口是否开放
firewall-cmd --query-port=7050/tcp
firewall-cmd --query-port=7060/tcp
# 开放端口
firewall-cmd --add-port=7050/tcp --permanent
firewall-cmd --add-port=7060/tcp --permanent
# 重启防火墙
firewall-cmd --reload
- 创建ES用户和用户组(ElasticSearch 默认不能用root用户启动)
# 添加用户
useradd es
# 设置密码
passwd es
- 在
/usr/local
目录下创建elastic
文件夹,运行chown -R es elastic
将目录所有者转给用户es
- 运行
su es
切换到es
用户,运行cd /use/local/elastic
进入elastic
文件夹 - 运行
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.15.2-linux-x86_64.tar.gz
下载安装包 - 运行
tar -xzvf elasticsearch-7.15.2-linux-x86_64.tar.gz
将elasticsearch-7.15.2-linux-x86_64.tar.gz解压到安装位置 - 运行
cd elasticsearch-7.15.2
进入elasticsearch-7.15.2
目录 - 运行
vi config/elasticsearch.yml
# 集群名称,需要一致
cluster.name: elastic_cluster
# 节点名称,不能重复
node.name: node-1
# ES数据存放路径
path.data: /opt/elastic/data
# ES日志存放路径
path.logs: /opt/elastic/logs
# 绑定地址
network.host: 192.168.0.100
# http端口
http.port: 7050
# 集群通讯端口
transport.port: 7060
# master选举组,在这组服务中选择一个作为master
discovery.seed_hosts: ["192.168.0.100:7060","192.168.0.101:7060","192.168.0.102:7060"]
# 集群初始化时,可以选择的master节点
cluster.initial_master_nodes: ["node-1","node-2","node-3"]
# 是否可以作为master
node.master: true
#是否可以写数据
node.data: true
# xpack安全验证,不开启这个可以不加
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: cert/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: cert/elastic-certificates.p12
- 运行
vi config/jvm.options
# 修改内存占用
-Xms4g
-Xmx4g
- 进入
plugins
目录,新建ik
文件夹,将elasticsearch-analysis-ik-7.15.2.zip
文件解压到ik
文件夹中 - 服务器调优
/etc/sysctl.conf
添加 vm.max_map_count = 655360
/etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536
- Xpack安全验证
# 选一台机器运行以下命令创建证书,然后把证书拷贝到其他机器
bin/elasticsearch-keystore create
bin/elasticsearch-certutil cert -out config/cert/elastic-certificates.p12 -pass ""
#通过如下命令生成ES各个组件密码,需要先启动集群
bin/elasticsearch-setup-passwords auto (自动生成)
bin/elasticsearch-setup-passwords interactive(手动生成)
- 运行
./bin/elasticsearch -d
后台启动es,关闭elasticsearch运行ps -ef|grep elastic
找到进程号再运行kill 进程号
# 查看集群(带用户名密码):
curl -u elastic:password -XGET 'http://172.16.0.101:7050/_cluster/health?pretty'
# 查看集群节点(带用户名密码):
curl -u elastic:password -XGET 'http://172.16.0.101:7050/_cat/nodes?pretty'
自启配置
开机自启配置,添加之后可以在root用户使用以下命令管理es服务
service elasticsearch start|stop|restart
- 使用root用户,运行
vi /etc/init.d/elasticsearch
创建启动脚本,内容如下
#!/bin/sh
#chkconfig: 2345 10 90
#description: elasticsearch
#processname: elasticsearch-7.15.2
export ES_HOME=/usr/local/elastic/elasticsearch-7.15.2
case $1 in
start)
su es<<!
cd $ES_HOME
./bin/elasticsearch -d -p pid
exit
!
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 hmmyES<<!
cd $ES_HOME
./bin/elasticsearch -d -p pid
exit
!
echo "elasticsearch is started"
;;
*)
echo "start|stop|restart"
;;
esac
exit 0
- 运行
chmod +x /etc/init.d/elasticsearch
添加执行权限 - 运行
chkconfig --add elasticsearch
添加自启服务
kibana
安装
- 将
kibana-7.15.2-linux-x86_64.tar.gz
解压到安装目录 - 进入
kibana-7.15.2-linux-x86_64
目录 - 运行
vi config/kibana.yml
elasticsearch.hosts: ["http://192.168.0.100:7050","http://192.168.0.101:7050","http://192.168.0.102:7050"]
# Xpack创建的用户名和密码, 登录kibana使用 elastic 用户
elasticsearch.username: "kibana"
elasticsearch.password: "password"
- 运行
nohup ./kibana &
启动kibana