aws崩溃上的kafka群集

0tdrvxhp  于 2021-06-08  发布在  Kafka
关注(0)|答案(1)|浏览(388)

在aws ec2示例上运行kafka集群时,我经常遇到一个问题。
描述
kafka群集版本0.10.1.0
3经纪人集群
主题每个代理有6个分区
示例类型为m4.xlarge
症状
以下事件将在随机的时间间隔内随机发生
从日志中我可以收集到以下信息:
在随机代理上缩减集群内复制(我想这可能是一个临时的网络故障,但无法提供证据)
系统在02:27:20开始显示几乎没有活动(注意,这与负载无关,因为它发生在非常安静的时间)

从这里开始,这个kafka代理不会处理imo期望的消息,因为它退出了集群复制。
现在真正的问题出现了,因为close\u wait中的连接数不断增加,直到达到系统/进程的配置极限,最终导致kafka进程崩溃。
现在,我一直在改变限制,看看Kafka最终是否会再次加入isr之前崩溃,但即使有一个非常高的限制,Kafka似乎只是停留在一个奇怪的状态,永远无法恢复。
请注意,在出现故障的代理独立运行和崩溃之间,kafka正在倾听,而kafka是生产者。
在这一次崩溃中,我可以从制作人那里看到320个这样的错误:

java.util.concurrent.ExecutionException: org.springframework.kafka.core.KafkaProducerException: Failed to send; nested exception is org.apache.kafka.common.errors.NotLeaderForPartitionException: This server is not the leader for that topic-partition.

配置是默认的,使用是非常标准的,我想知道我是否遗漏了什么。
我设置了一个脚本来检查kafka文件描述符的数量,并在服务异常高的时候重新启动服务,虽然现在这样做了,但当服务崩溃时仍然会丢失消息。
任何帮助我们弄清真相的人都将不胜感激。

slmsl1lt

slmsl1lt1#

原来我使用的版本中出现了死锁。
升级修复了问题。
有关问题,请参阅票证:
https://issues.apache.org/jira/browse/kafka-5721

相关问题