Elasticsearch(ES)集群的搭建

1. 概述

 Elasticsearch(ES)集群支持分片和副本,能够很容易的实现负载均衡、扩容、容灾、高可用。

 今天我们就来聊一下,Elasticsearch(ES)集群是如何搭建的。

 

2. 场景介绍

服务器A IP:192.168.1.8

服务器B IP:192.168.1.144

服务器C IP:192.168.1.22

三台服务器都已安装单点的 Elasticsearch(ES),单点 Elasticsearch(ES)的安装请参见我的另一篇文章《分布式搜索引擎Elasticsearch(ES)在CentOS7中的安装》。

 

3.Elasticsearch(ES)集群的搭建

 3.1 清除旧数据

 三台服务器都执行

 # cd /usr/local/elasticsearch-7.14.1/data

 # rm -rf nodes/

 

 3.2 修改Elasticsearch配置文件

 # cd  /usr/local/elasticsearch-7.14.1/config

 # vi elasticsearch.yml

 服务器A配置:

 

 

 

 服务器B配置:

 

 

 

服务器C配置:

 

 

  

3.3 启动三台服务器的Elasticsearch(ES)

# su esuser

# cd  /usr/local/elasticsearch-7.14.1/bin

# ./elasticsearch

 

可以使用Head插件查看Elasticsearch集群的信息,连接哪台服务器,显示的信息一样。

一主二从架构。

 

 3.4 集群分片测试

 新建一个索引 index_user,分片数为3,副本数为1。

 再新建一个索引 index_product,分片数为3, 副本数为2。

 通过Head插件能够看出,主分片和副本被分配到了不同的服务器,任意一台机器宕机,对数据都没有影响,很好的实现了容灾和高可用机制。

 因为每个分片被分配的机器不同,当读取时,Elasticsearch会采用轮询读取主副分片的策略,从而实现了负载均衡的机制。

 通过设置主分片的数量实现扩容。

 

 

  3.5 宕机测试

 

 

  1)停用从节点

  停用一个从节点后,集群健康值变为黄色,对外服务不受影响。

  

   2)停用主节点

   停用主节点后,其中一个从节点会被选举为主节点,集群健康值变为黄色,对外服务不受影响。

 

 

4. 综述

今天简单聊了一下 Elasticsearch(ES)集群的搭建,希望可以对大家的工作有所帮助。

欢迎帮忙点赞、评论、加关注 :)

关注追风人聊Java,每天更新Java干货。

posted @   追风人聊Java  阅读(1349)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示