[日志处理工作之七]Elasticsearch集群脑裂现象与保证可靠性的配置

    先说Elasticsearch配置的一个重要组成部分:操作系统。在索引过程中,尤其是有很多分片和副本时,Elasticsearch会创建若干文件。因此,OS对打开文件数量的限制不能少于32000。Linux服务器通常可以在/etc/security/limits.conf中进行修改,并且可以利用ulimit命令来查看当前值。接下来的设置与每个节点的内存空间大小有关。默认的内存空间(1024MB)可能不够。如果在日志文件中发现带有OutOfMemory错误的记录,则应将环境变量ES_HEAP_SIZE设为大于1024的值。注意不应超过总可用物理内存的50%,剩余内存可用作磁盘高速缓存,这样可以大大提高搜索性能。

    昨天在导入数据的时候,数据量不是很大,八十几万个event,导入的过程中Kafka lag不断上升,elasticsearch开始无响应,master与slave断掉连接,重启后无法自动发现。查资料后得知这是elasticsearch的脑裂现象,这篇博客 http://m.blog.csdn.net/blog/huwei2003/47004745 提供了处理方案,按照他的说法,处理方式如下:

    9.115.42.77 的elasticsearch的config下的elasticsearch.yml:

################################## Discovery ##################################
discovery.zen.minimum_master_nodes: 1 
discovery.zen.ping.timeout: 120s
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["9.115.42.89", "9.115.42.95"]

    9.115.42.89 的elasticsearch的config下的elasticsearch.yml:
################################## Discovery ##################################
discovery.zen.minimum_master_nodes: 1 
discovery.zen.ping.timeout: 120s
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["9.115.42.77", "9.115.42.95"]


   9.115.42.95 的elasticsearch的config下的elasticsearch.yml:
################################## Discovery ##################################
discovery.zen.minimum_master_nodes: 1 
discovery.zen.ping.timeout: 120s
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["9.115.42.77", "9.115.42.89"]

 均启动elasticsearch后需要等比较长的一段时间构建集群,但是经过http://9.115.42.77:9200/_cluster/health?pretty=true发现昨天导入数据生成的shard大部分都unassigned了,导致集群status为red,删除了index,重新导入。作为indexer的logstash又报出flush exception。

因为elasticsearch有三种protocol,上面关闭了multicast,这时就要在logstash里为node transport mode做配置,配置如下:

output {
  elasticsearch{
    cluster => "elasticsearch_production"
    protocol => "node"
    host => ["9.115.42.77","9.115.42.89","9.115.42.95"]
  }
}

完毕,可以正常工作。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老张去哪儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值