Elasticsearch集群搭建

机器准备

1、配置host解析

末尾添加如下配置

复制代码
10.10.10.100 xiaobai-vm-100
10.10.10.101 xiaobai-vm-101
10.10.10.102 xiaobai-vm-102

2、禁用swap

复制代码
vim /etc/fstab

分别注释这一行

修改后重启

查看是否生效

为0B则生效

3、下载安装包

版本选择:8.18.2

注意:elk全家桶版本选择要一致

下载地址:https://www.elastic.co/downloads/past-releases/elasticsearch-8-18-2

根据不同平台下载elasticsearch、kibana、ik分词器

将下载好的elasticsearch、ik分词器压缩包上传至3台机器,将kibana压缩包上传至任意一台机器,小白传到10.10.10.100机器上

4、解压elasticsearch,将三台机器的elasticsearch压缩包分别解压到/opt目录下

5、将ik分词器解压到cd /opt/elasticsearch-8.18.2/plugins目录下

复制代码
cd /opt/elasticsearch-8.18.2/plugins/
mkdir analysis-ik
mv /root/elasticsearch-analysis-ik-8.18.2.zip ./analysis-ik/
cd analysis-ik/
unzip elasticsearch-analysis-ik-8.18.2.zip
rm -rf elasticsearch-analysis-ik-8.18.2.zip

6、创建用户、授权

由于elasticsearch不允许root用户启动,则创建用户并授权

三台机器同时执行

复制代码
cd /opt
useradd es
mkdir /home/es
chown -R es:es /opt/elasticsearch-8.18.2/

7、启动主节点

将10.10.10.100规定为主节点,执行

复制代码
cd /opt/elasticsearch-8.18.2/
vim config/elasticsearch.yml

修改为以下配置

复制代码
# ---------------------------------- Cluster -----------------------------------
#
# Use a descriptive name for your cluster:
#
cluster.name:xiaobai-elasticsearch-cluster
#
# ------------------------------------ Node ------------------------------------
#
# Use a descriptive name for the node:
#
node.name:xiaobai-vm-100
# ---------------------------------- Network -----------------------------------
network.host:0.0.0.0
cluster.initial_master_nodes:["xiaobai-vm-100"]
http.cors.enabled:true
http.cors.allow-origin:"*"

执行如下命令启动es

复制代码
su es
./bin/elasticsearch -d

等待启动成功自动退出日志,回到终端

修改es的密码,修改为123456

复制代码
./bin/elasticsearch-reset-password -u elastic -i

查看集群信息

访问:https://10.10.10.100:9200/_cat/nodes

弹出用户名密码为:elastic/123456

8、启动其他节点

主节点生成token

在主节点(10.10.10.100)执行

复制代码
./bin/elasticsearch-create-enrollment-token -s node

修改其他节点配置文件,非主节点执行

复制代码
cd /opt/elasticsearch-8.18.2/
vim config/elasticsearch.yml

修改为以下配置

10.10.10.101

复制代码
# ---------------------------------- Cluster -----------------------------------
#
# Use a descriptive name for your cluster:
#
cluster.name:xiaobai-elasticsearch-cluster
#
# ------------------------------------ Node ------------------------------------
#
# Use a descriptive name for the node:
#
node.name:xiaobai-vm-101
# ---------------------------------- Network -----------------------------------
network.host:0.0.0.0
http.cors.enabled:true
http.cors.allow-origin:"*"

10.10.10.102

复制代码
# ---------------------------------- Cluster -----------------------------------
#
# Use a descriptive name for your cluster:
#
cluster.name:xiaobai-elasticsearch-cluster
#
# ------------------------------------ Node ------------------------------------
#
# Use a descriptive name for the node:
#
node.name:xiaobai-vm-102
# ---------------------------------- Network -----------------------------------
network.host:0.0.0.0
http.cors.enabled:true
http.cors.allow-origin:"*"

保存退出

两台机器执行

复制代码
su es
./bin/elasticsearch --enrollment-token eyJ2ZXIiOiI4LjE0LjAiLCJhZHIiOlsiMTAuMTAuMTAuMTAwOjkyMDAiXSwiZmdyIjoiYzY3MzQ4NGVmZWJlM2M4NzdhMmFhMDY0MzllMTM4YjJiYzc2NDRkZWUwOWE5Nzc1MzczNDdiODYxMTdhODZkNCIsImtleSI6IlpUU3o0SmtCdVEyVHpVanNzTkZrOi1TSmd3eXRVQUYwbXBOYi0tQ1Z1RlEifQ== -d

同样等待启动成功自动回到终端

访问:https://10.10.10.100:9200/_cat/nodes

可以看到3台节点启动完毕

9、主节点启动kibana

10.10.10.100终端执行,切换root用户时输入root用户密码

将kibana压缩包解压到/opt

复制代码
su root
cd /root
tar -zxvf kibana-8.18.2-linux-x86_64.tar.gz -C /opt

同样kibana也不允许root用户启动,授权

复制代码
cd /opt
chown -R es:es /opt/kibana-8.18.2/

修改kibana的配置文件

复制代码
cd kibana-8.18.2/
vim config/kibana.yml

修改为如下内容

复制代码
server.port: 5601
server.host: "10.10.10.100"
elasticsearch.hosts: ["http://xiaobai-vm-100:9200", "http://xiaobai-vm-101:9200", "http://xiaobai-vm-102:9200"]
i18n.locale: "zh-CN"

保存退出

使用es脚本生成kibana的token

复制代码
cd /opt/elasticsearch-8.18.2/
./bin/elasticsearch-create-enrollment-token -s kibana

进入kibana目录

复制代码
cd /opt/kibana-8.18.2/
su es

设置kibana

复制代码
./bin/kibana-setup --enrollment-token eyJ2ZXIiOiI4LjE0LjAiLCJhZHIiOlsiMTAuMTAuMTAuMTAwOjkyMDAiXSwiZmdyIjoiYz

启动

复制代码
nohup ./bin/kibana > logs/kibana.log 2>&1 &

查看启动日志

复制代码
cd logs
tail -f kibana.log

访问测试:http://10.10.10.100:5601/

账号密码:elastic/123456

这样一个三节点带有安全认证的elasticsearch集群就搭建好了,elasticsearch8默认开启了安全认证,不需要额外配置,自动生效。

配套资料,有需要的小伙伴可以联系博主获取

相关推荐
AI极客菌6 小时前
AI绘画工具中,为什么专业玩家爱用Stable Diffusion,普通玩家却喜欢Midjourney?
大数据·人工智能·ai·ai作画·stable diffusion·aigc·midjourney
腾视科技AI6 小时前
腾视科技大模型一体机解决方案:低成本私有化落地,重塑行业智能应用新格局
大数据·人工智能·科技·ai·边缘计算·算力·ai算力
金融支付架构实战指南7 小时前
支付系统 ES 实战案例:从索引创建到真实业务查询
大数据·elasticsearch·搜索引擎·支付
百胜软件@百胜软件8 小时前
从“数据孤岛”到“智利标杆”:百胜E3全渠道中台助力“名创优品”Newtree实现一体化智变
大数据·人工智能·零售数字化·数智中台·珠宝行业
lizhihai_998 小时前
股市学习心得-A股服务器/算力服务器龙头
大数据·运维·服务器·人工智能·科技·学习
AllData公司负责人9 小时前
大模型赋能AllData数据中台,系列升级|通过联合智谱大模型与BiSheng开源项目,建设企业大模型应用开发平台,支持知识库向量检索!
大数据·数据结构·数据库·算法·大模型·向量数据库·智谱ai
Antom全球收单9 小时前
面对多市场、多币种、多支付方式,Antom如何帮助企业搭建全球支付平台
大数据
数智化管理手记10 小时前
标准作业越推越虚?重塑认知、规避误区,破解精益落地形式主义
大数据·网络·精益工程
一只鹿鹿鹿10 小时前
网络安全评估方案
java·大数据·运维·物联网·web安全
人工智能培训11 小时前
打造行业知识图谱三步走
大数据·人工智能·机器学习·3d·知识图谱·agent