【ElasticSearch8.X】学习笔记
一、8.x与7.x的对比
- 减少内存堆使用,完全支持 ARM 架构,引入全新的方式以使用更少的存储空间,从而让每个节点托管更多的数据
- Elasticsearch8.x需要jdk17
- 降低查询开销,在大规模部署中成效尤为明显
- 首次启动 Elasticsearch8.x时,会自动进行安全配置
- 在 Elasticsearch 8.0 中做了一些改变来保护系统索引不被直接访问
- 为
keyword
、match_only_text
和text
字段节省存储空间 - 加快
geo_point
、geo_shape
和范围字段
索引速度 ...
二、安装elk8.x
2.1、下载
官网
本文使用
2.2、集群规划
masterslave1slave2ip192.168.3.34192.168.3.35192.168.3.36
2.3、安装
将下载好的压缩包上传到服务器中
解压
tar-zxvf elasticsearch-8.1.0-linux-x86_64.tar.gz
2.4、配置环境
创建用户 elk默认禁止root用户启动
# 新增 es 用户useradd es
# 修改文件拥有者chown-R es:es /usr/soft/elasticsearch8
# 创建数据文件目录mkdir /usr/soft/elasticsearch8/data
# 创建证书目录mkdir /usr/soft/elasticsearch8/config/certs
在第一台服务器节点 master 设置集群多节点通信密钥
# 切换用户su es
cd /usr/soft/elasticsearch8
# 签发 ca 证书,过程中需按两次回车键
bin/elasticsearch-certutil ca
# 用 ca 证书签发节点证书,过程中需按三次回车键
bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
# 将生成的证书文件移动到 config/certs 目录中mv elastic-stack-ca.p12 elastic-certificates.p12 config/certs
在第一台服务器节点 master 设置集群多节点 HTTP 证书
# 签发 Https 证书
bin/elasticsearch-certutil http
# 以下是每次要求输入时,需要输入的内容
n #是否认证
y #是否已有证书
certs/elastic-stack-ca.p12 #证书目录
回车 #输入证书密码(如果没有设置就回车)
5y #证书有效时间5年
n #每个结点都生成证书吗
master #结点的主机名称
slave1 #结点的主机名称
slave2 #结点的主机名称
回车 #退出输入
y #确定192.168.3.34 #结点的ip192.168.3.35 #结点的ip192.168.3.36 #结点的ip
回车 #退出输入
y #确定
n #是否修改证书配置
回车 #输入密码
回车 #生成位置(回车默认)
解压刚刚生成的 zip 包
unzip elasticsearch-ssl-http.zip
将解压后的证书文件移动到 config/certs 目录中
mv elasticsearch/http.p12 kibana/elasticsearch-ca.pem config/certs
2.5、修改配置文件
config/elasticsearch.yml
# 设置 ES 集群名称cluster.name: es-cluster
# 设置集群中当前节点名称node.name: master
# 设置数据,日志文件路径path.data: /usr/soft/elasticsearch8/data
path.logs: /usr/soft/elasticsearch8/logs
# 设置网络访问节点network.host: master
# 设置网络访问端口http.port:9200# 初始节点discovery.seed_hosts:["master"]# 安全认证xpack.security.enabled:truexpack.security.enrollment.enabled:truexpack.security.http.ssl:enabled:truekeystore.path: /usr/soft/elasticsearch8/config/certs/http.p12
truststore.path: /usr/soft/elasticsearch8/config/certs/http.p12
xpack.security.transport.ssl:enabled:trueverification_mode: certificate
keystore.path: /usr/soft/elasticsearch8/config/certs/elastic-certificates.p12
truststore.path: /usr/soft/elasticsearch8/config/certs/elastic-certificates.p12
# 此处需注意,为上面配置的节点名称cluster.initial_master_nodes:["master"]http.host:[_local_, _site_]ingest.geoip.downloader.enabled:falsexpack.security.http.ssl.client_authentication: none
2.6、启动
# 启动 ES 软件
bin/elasticsearch
第一次成功启动后,会显示密码,请记住,在访问时需要。只有第一次才有哟!
因为配置了安全协议,所以使用 https 协议进行访问,但由于证书是自己生成的,并不可靠,所以会有安全提示。访问:
https://192.168.3.34:9200/
2.5、安装其他结点
操作和上面一样
证书直接拷贝
config/elasticsearch.yml
修改:
node.name
、
network.host
全部启动后:
三、Kibana 安装
3.1、下载
Elasticsearch 下载的版本是 8.1.0,这里我们选择同样的 8.1.0 版
下载地址
将下载的压缩包上传到服务器
解压缩
tar-zxvf kibana-8.1.0-linux-x86_64.tar.gz
3.2、配置环境
给 Kibana 生成证书文件
# 在 ES 服务器中生成证书,输入回车即可cd /usr/soft/elasticsearch8
bin/elasticsearch-certutil csr -name kibana -dns master
# 解压文件unzip csr-bundle.zip
# 将解压后的文件移动到 kibana 的 config 目录中cd kibana/
mv kibana.csr kibana.key /usr/soft/kibana-8.1.0/config/
# 生成 crt 文件cd /usr/soft/kibana-8.1.0/config
openssl x509 -req-in kibana.csr -signkey kibana.key -out kibana.crt
创建“ kibana_system ”用户
cd /usr/soft/elasticsearch8
bin\elasticsearch-reset-password -u kibana_system
y
3.2、修改配置文件
/usr/soft/kibana-8.1.0/config
# 服务端口
server.port: 5601# 服务主机名
server.host: "master"# 国际化 - 中文
i18n.locale: "zh-CN"# ES 服务主机地址
elasticsearch.hosts: ["https://master:9200"]# 访问 ES 服务的账号密码
elasticsearch.username: "kibana_system"
elasticsearch.password: "uwFAc4V9vl9WZVeACrYg"
elasticsearch.ssl.verificationMode: none
elasticsearch.ssl.certificateAuthorities: ["/usr/soft/elasticsearch8/config/certs/elasticsearch-ca.pem"]
server.ssl.enabled: true
server.ssl.certificate: /usr/soft/kibana-8.1.0/config/kibana.crt
server.ssl.key: /usr/soft/kibana-8.1.0/config/kibana.key
修改软件目录拥有者
如果使用elastic用户会报错
# 切换目录cd /usr/soft/kibana-8.1.0
chown-R es:es /usr/soft/kibana-8.1.0/
3.4、启动
# 切换用户su es
# 启动软件
bin/kibana
# 也可以后台启动nohup /usr/soft/kibana-8.1.0/bin/kibana >kibana.log 2>&1&
访问
https://192.168.3.34:5601/
(使用elastic用户登录)
版权归原作者 擅长开发Bug的Mr.NaCl 所有, 如有侵权,请联系我们删除。