Elasticsearch脑裂现象

前段时间系统压测,非常好运的遇到了传说中的脑裂现象(心中满是无奈~),在此写个博记录下

现象
同时出现多个master  
访问不同的节点,会发现集群状态不一样,可用节点数不一样
可能的原因
节点负载
    master节点同时扮演master和data角色的话,当工作节点负载太大或者遇到full gc ,导致对es实例响应停止响应,
    这个时候其它节点以为master挂了,然后重新选举master,这个时候出现两个master 。
应对办法
角色划分,用三台es扮演master角色,其余的data角色
避免master节点因为工作负载过大出现响应中断从而引发脑裂问题

node.master: true
node.data: false

为了使新加入的节点快速确定master位置,可以将data节点的默认的master发现方式有multicast修改为unicast:

discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["master1", "master2", "master3"]


提高响应时间
discovery.zen.ping_timeout(默认值是3秒)

这些办法都是缓解,不能根治
[INFO ][logstash.outputs.elasticsearch] retrying failed action with response code: 429 ({"type"=>"es_rejected_execution_exception", "reason"=>"rejected execution of
org.elasticsearch.transport.TransportService$7@1228229a on EsThreadPoolExecutor[bulk, 
queue capacity = 200, org.elasticsearch.common.util.concurrent.EsThreadPoolExecutor@b45c186[Running, pool size = 8, active threads = 8, queued tasks = 200, 
completed tasks = 16346]]"})

es 集群吞吐量不高导致的,水平扩展es集群,降低负载
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值