集群master选举
为了避免网络慢或者拥塞,该参数可以适当调高,默认3s
1 | discovery.zen.ping_timeout: 30 |
在节点完成选举后,如果有新节点加入,会发送join请求到master节点,默认重试20次
1 | # 该配置为超时时长 |
如果master宕机,集群节点会再次进行ping过程,并选举出一个新的master(只有配置了node.master为true的才有资格进行master选举)
1 | # 用于控制选举行为发生的最小集群节点数量, 防止脑裂(一个es集群因网络原因或master节点负载过大,响应速度过慢,导致ping主节点超过超时时间,而引起的部分候选主节点进行重新选举,导致产生大于1个master节点,每一个master节点相当于一个独立的es集群),只有大于该值,才会进行master节点的选举,该参数必须大于等于集群中master候选节点的quorum数量,`quorum=master候选主节点数/2 + 1` |
master会ping集群中的所有node节点,确保它们处于存活状态,而相对的,每个node节点都会ping master节点,来确保master是存活的,否则就会发起选举
但是如果master宕机之后,是不是就无法操作集群了呢?这个行为是由参数决定的
1 | # 当集群中没有活动的master节点后,该设置指定了哪些操作需要被阻塞,可选all和write,默认为write |