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干货。

最新文章

  1. 不用插件 让Firefox 支持网页翻译
  2. string find
  3. JavaScript的几种继承方式
  4. [置顶] TortoiseGit和msysGit安装及使用笔记(windows下使用上传数据到GitHub)
  5. 原生js 实现购物车价格和总价 统计
  6. [原创] zabbix学习之旅五:如何快速搭建一个报警系统
  7. 小甲鱼汇编语言006第二章 寄存器(CPU工作原理)01
  8. 用KnockoutJS实现ToDoMVC代码分析
  9. javascript显式类型的转换
  10. 【转】wget
  11. PhotoshopCC 2017安装破解 + cuterman
  12. 5、Angular的一些其他核心特性,学习的主要模块
  13. Element分页组件prev-text和next-text属性无效?
  14. 睡前小dp-hdu3853-概率dp
  15. 谈一谈JUnit神奇的报错 java.lang.Exception:No tests found matching
  16. JavaScript 片段
  17. Hadoop生态圈-Hbase的API常见操作
  18. centos7搭建python3并和python2共存
  19. 查询相应id下的数据
  20. 用示例详解php连接数据库操作

热门文章

  1. 【监控】Zabbix安装
  2. Java调用阿里云短信接口发送手机验证码
  3. Git(12)-- Git 分支 - 分支简介
  4. 一个命令搞定 Web 国际化
  5. NOIP 模拟 $14\; \text{抛硬币}$
  6. Android 11(R) Power HAL AIDL简析 -- 基本接口
  7. sentinel使用(结合gateway)
  8. uwp 之后台音频
  9. p命名空间和c命名空间
  10. Hibernate的一级缓存和二级缓存