我们使用logstash消费kafka的数据,然后再index到es。kafka的topic有80个partition,因此我们启动了80个logstash实例来消费这个topic。每个logstash kafka input配置了一个thread,所有的logstash实例属于一个group id。
偶尔我们会遇到partition持续rebalancing,一直不能达到一个稳定的状态,非常的头疼。遇到这种情况时只能先减少logstash的数量,然后在增加到80个。
大家有遇到过这个问题吗?
偶尔我们会遇到partition持续rebalancing,一直不能达到一个稳定的状态,非常的头疼。遇到这种情况时只能先减少logstash的数量,然后在增加到80个。
大家有遇到过这个问题吗?
8 个回复
kennywu76 - Wood
赞同来自: medcl 、shjdwxy
也就是说在kafka server本身负担比较重的情况下,有可能处理offset commit太慢超时,阻塞了heartbeat的处理。
kennywu76 - Wood
赞同来自: wkdx
最开始我们遇到这个问题的时候情况比较严重,主要是因为logstash kafka plugin默认的conusmer group都是一样的配置,而kafka的rebalance是在consumer group范围内做的,即使这个group内的logstash实例消费的不同的topic。 即使是正常的logstash重启,都会导致该group内所有consumer被rebalance。 所以后来我们改成每个topic对应一个不同的consumer group,一定程度上缓解了问题。
白衬衣 - 金桥
赞同来自: shjdwxy
laoyang360 - 《一本书讲透Elasticsearch》作者,Elastic认证工程师 [死磕Elasitcsearch]知识星球地址:http://t.cn/RmwM3N9;微信公众号:铭毅天下; 博客:https://elastic.blog.csdn.net
赞同来自:
tianqi
赞同来自:
taogger
赞同来自:
hellboy
赞同来自:
pony_maggie - 公众号:犀牛饲养员的技术笔记
赞同来自:
1. 分区数远远大于了磁盘数,磁盘性能下降。
2. 分区之间数据拷贝时间变长。
3. 集群元数据管理,网络连接管理负担加重
建议减少分区数量,拆分topic