1、环境可以在同一台集群上搭建elastic,也可以在三台机器上搭建,这次演示的是在同一台机器搭建机器。
2、下载elastic :https://www.elastic.co/cn/downloads/past-releases#elasticsearch
tar -zxvf elasticsearch-xxx-版本
cd elasticsearch-8.10.3
# 创建data目录(data目录后来用来设置保存数据路径,如果要保存在其他路径,
# 需要创建该目录保证该目录存在,不然会启动报错)
mkdir data
# 创建目录好后进入config
cd config
# 编辑jvm.options设置合理参数,参数如下图
vim jvm.options
#安装服务器内存来设置即可
-Xms4g
-Xmx4g
[root@xxx data]# cat elasticsearch-node1/config/elasticsearch.yml
cluster.name: es-cluster
node.name: node-1
path.data: /data/elasticsearch-node1/data
path.logs: /data/elasticsearch-node1/logs
network.host: 0.0.0.0
http.port: 9201
discovery.seed_hosts: ["10.1.34.8:9301", "10.1.34.8:9302","10.1.34.8:9302"]
cluster.initial_master_nodes: ["node-1", "node-2","node-3"]
xpack.security.enabled: false
xpack.security.enrollment.enabled: false
xpack.security.http.ssl:
enabled: true
keystore.path: /data/elasticsearch-node1/config/certs/http.p12
truststore.path: /data/elasticsearch-node1/config/certs/http.p12
xpack.security.transport.ssl:
enabled: true
verification_mode: certificate
keystore.path: /data/elasticsearch-node1/config/certs/elastic-certificates.p12
truststore.path: /data/elasticsearch-node1/config/certs/elastic-certificates.p12
http.host: [_local_, _site_]
ingest.geoip.downloader.enabled: false
xpack.security.http.ssl.client_authentication: none
# 编辑
vim /etc/security/limits.conf
# 添加以下内容
* soft nofile 65536
* hard nofile 131072
* soft nproc 65536
* hard nproc 65536
# 编辑
vim /etc/sysctl.conf
# 添加以下内容
vm.max_map_count = 6553600
4、新增用户
useradd es
groupadd es
chown -R es:es elasticsearch-node1 elasticsearch-node2 elasticsearch-node3
#----------------------
#切换用户
su es
# 签发ca证书 直接敲回车 不需要输入密码
bin/elasticsearch-certutil ca
# 用ca证书签发节点证书 敲三次回车
bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
# 将生成的证书文件移动到config/certs目录中
mv elastic-certificates.p12 config/certs
#----------------------
# 签发Https证书
bin/elasticsearch-certutil http
#----------------------
关键环节如下:
Generate a CRS? [y/n]n (是否发送认证证书请求)
Use an existing CA? [y/n]y (是否使用已存在的CA证书)
CA Path: certs/elastic-stack-ca.p12 (CA证书路径)
Password for elastic-stack-ca.p12: (输入CA证书密码、上面生成CA证书未设置密码、直接回车)
For how long should your certificate be valid: [5y] 20y (输入证书使用年限)
Generate a certificate per node: [y/n] n(是否每个节点都 生成证书)
Enter all the hostnames that you need,one per line. (输入主机名称、回车)
when you are done,press once more to move on to the next step
es01(可以不填写,安装具体集群主机名填写,不填写的话直接回车)
es02
es03
Is this correct [y/n] n(输入的主机名称是否正确)
Enter all the ip address that you need,one per line. (输入节点ip地址、回车)
when you are done,press once more to move on to the next step
192.168.206.101(可以不填写,安装具体集群ip填写,不填写的话直接回车)
192.168.206.102
192.168.206.103
Is this correct [y/n] n(输入的ip地址是否正确)
DO you wish to change any of these options [y/n] n (是否修改证书配置)
Provide a password for the "http.p12" file:[ for none] (输入密码、没配置密码、直接回车)
What filename should be used for the output zip files?[/opt/module/elasticsearch-8.1.0/elasticsearch-ssl-http.zip] (是否自定义名称、直接回车)
unzip elasticsearch-ssl-http.zip
# 证书文件移动到指定目录下
mv elasticsearch/http.p12 kibana/elasticsearch-ca.pem config/certs
##参考以下
vim conf/elasticsearch.yml
# ES集群配置
cluster.name: cluster-es
node.name: es-node-1
#设置数据
path.data: /data/elasticsearch-8.10.3/data/
path.logs:/data/elasticsearch-8.10.3/logs/
# 网络访问节点名称(需要在/etc/hosts里设置解析)
network.host: es01
# Rest访问端口9200 ES集群内部端口为9300
http.port: 9200
# 初始节点
discovery.seed_hosts: ["es01"]
# 安全认证
xpack.security.enabled: true
xpack.security.enrollment.enabled: true
xpack.security.http.ssl:
enabled: true
keystore.path: /data/elasticsearch-8.10.3/config/certs/http.p12
truststore.path:/data/elasticsearch-8.10.3/config/certs/http.p12
xpack.security.transport.ssl:
enabled: true
verification_mode: certificate
keystore.path: /data/elasticsearch-8.10.3/config/certs/elastic-certificates.p12
truststore.path:/data/elasticsearch-8.10.3/config/certs/elastic-certificates.p12
# 集群初始化的主节点
cluster.initial_master_nodes: ["es-node-1"]
http.host: [_local_, _site_]
ingest.geoip.downloader.enabled: false
xpack.security.http.ssl.client_authentication: none
7.配置其他服务器节点
其余节点的配置文件只需要修改node.name和network.host即可。
注意:
如果es是从第一台服务器节点上使用rsync/scp拷贝过去的。先删除data和logs文件、重新创建再启动es、否则会出现找不到其他服务器节点问题、如果同第一个节点一样是解压安装的忽略。
8.启动ES服务器
#bin/elasticsearch
第一次启动会显示密码、最好保存后、免得后面忘记、
忘记密码:bin/elasticsearch-reset-password -u elastic 重置登录es的密码
#bin/elasticsearch -d (依次启动三台服务器、-d是后台启动)
这里如果不进行密码重置或者修改的话,三台机器登录的账号是共享密码的
#tail -f logs/cluster-es.log (查看es日志)
网页访问查看es集群信息:(带*的是主节点)
二、kiabana