elasticsearch集群

本文详细介绍了Elasticsearch集群的工作原理,包括其高可用性和容错机制。在集群中,每个主分片有两个副本,确保数据安全。当节点故障时,系统能自动切换到其他副本进行查询。创建索引库时,可通过设置分片和副本数量调整数据分布和冗余。健康状态分为绿、黄、红三类,分别对应数据完整、部分备份不可用和数据不完整。通过对集群的监控和管理,可以确保系统的稳定运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

集群结构

ES通常以集群方式工作,这样做不仅能够提高 ES的搜索能力还可以处理大数据搜索的能力,同时也增加了系统的容错能力及高可用。
ES集群结构的示意图
在这里插入图片描述
此处的设置为:每个主分片有两个副本, 如果某个节点挂了也不怕,比如节点1挂了,我们可以查询位于节点3和节点3上的副本0
在这里插入图片描述
添加文档过程
(1)假设用户把请求发给了节点1

(2)系统通过余数算法得知这个’文档’应该属于主分片2,于是请求被转发到保存该主分片的节点3

(3)系统把文档保存在节点3的主分片2中,然后将请求转发至其他两个保存副本的节点。
在这里插入图片描述
查询文档过程:

(1) 请求被发给了节点1

(2)节点1计算出该数据属于主分片2,这时候,有三个选择,分别是位于节点1的副本2, 节点2的副本2,节点3

​ 的主分片2, 假设节点1负载均衡,采用轮询的方式,选中了节点2,把请求转发。

(3) 节点2把数据返回给节点1, 节点1 最后返回给客户端。

创建节点

修改第一台节 elasticsearch.yml

在这里插入图片描述
拷贝一台
在这里插入图片描述
启动 Elasticsearch-2 修改网关ip
这里用的 192.168.226.206 - 207
修改elasticsearch.yml内容
在这里插入图片描述
删除节点2的data目录
在这里插入图片描述

查看集群健康状态

这里使用的kibana,Elasticsearch-head
启动服务 浏览器进入kibana:127.0.0.1:5601
创建索引库

PUT /java01
{
  "settings": {
    "number_of_shards": 2, #分片
    "number_of_replicas": 1	#备份
  }
}

查询当前集群的健康信息

GET /_cluster/health

结果
在这里插入图片描述
status:用三种颜色来展示健康状态

 	green:索引库的每个 primary shard 和 replica shard 都是 active 的 【正常状态】
	yellow:索引库的每个 primary shard 都是 active 的,但部分的 replica shard 不是 active 的,如单节点创建,备份分配    【备份分配不可用,数据完整】
 	red:不是所有的 primary shard 都是 active 状态的。【主分片不可用,数据不完整】

浏览器 127.0.0.1:9100 输入地址连接 查看集群状况和分片
在这里插入图片描述
关闭节点2,测试集群状态
在这里插入图片描述
这里有备份 数据完整但是警告了,备份分片不可用

启动节点2
在这里插入图片描述
删除库重新创建

#删除
DELETE /java01
 
# 创建
PUT /java01
{
  "settings": {
    "number_of_shards": 2,
    "number_of_replicas": 0
  }
}

此时没有备份分片
在这里插入图片描述
关闭节点2,此时红色,数据已经不完整了

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值