Elasticsearch集群出现脑裂(Split-Brain)如何排查原因和处理?
1. 脑裂(Split-Brain)背景
- 定义:脑裂是指 Elasticsearch 集群由于网络分区(network partition)或其他原因分裂成多个独立的子集群,每个子集群认为自己是主集群,导致不同的子集群可能独立处理请求,造成数据不一致。
- 集群配置:
- 3 个主节点(
master-node-1: 192.168.1.1,master-node-2: 192.168.1.2,master-node-3: 192.168.1.3)。 - 3 个数据节点(
data-node-1: 192.168.1.4,data-node-2: 192.168.1.5,data-node-3: 192.168.1.6)。 discovery.zen.minimum_master_nodes设置为 2(基于公式N/2 + 1,N=3)。
- 3 个主节点(
- 脑裂发生场景:
- 网络分区导致部分主节点无法通信(例如,
master-n
- 网络分区导致部分主节点无法通信(例如,