只要是主从关系就必然有可能发生脑裂,ES的脑裂没有自动防范机制,必须手动预防。
1.业务分离:通过设置node.master和node.data来决定节点是否竞选主节点或存储节点。
默认节点:设置既参与竞选,又存储数据
主节点:设置竞选主节点,不存储数据
数据节点:设置不竞选主节点,存储数据
客户端节点:设置既不竞选主节点,又不存储数据。该节点可作为客户端连接使用。
2.配置至少竞选节点:discovery.zen.minimum_master_nodes=N/2+1
3.配置ping的等待时间、重试次数:
#一个节点多久ping一次,默认1s discovery.zen.fd.ping_interval: 1s ##等待ping返回时间,默认30s discovery.zen.fd.ping_timeout: 10s ##ping超时重试次数,默认3次 discovery.zen.fd.ping_retries: 3
本文详细介绍了如何通过业务分离、配置竞选节点数量和调整ping参数来预防Elasticsearch的脑裂问题,提供了一套全面的预防和管理策略。
736

被折叠的 条评论
为什么被折叠?



