Kafka开启SASL后组件连接导致kafka宕机

林开心 发表于: 2022-01-27   最后更新时间: 2022-01-27 10:49:13   1,104 游览

kafka开启了SASL验证(端口9094),gohangout使用SASL拉取数据;通过日志查看kafka频繁报出以下内容

WARN Attempting to send response via channel for which there is no open connection, connection id 10.10.110.10:9094-10.10.110.25:34408-290441 (kafka.network.Processor)

同时出现oom异常,大量close_wait连接,组件宕机

ERROR Processor got uncaught exception. (kafka.network.Processor)
java.lang.OutOfMemoryError: Java heap space
ERROR [ExpirationReaper-16-Fetch]: Error due to (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
java.lang.OutOfMemoryError: Java heap space
[ReplicaManager broker=16] Error processing fetch operation on partition test-33, offset 0 (kafka.server.ReplicaManager)
java.lang.OutOfMemoryError: Java heap space

使用9092端口时无任何警告和异常,运行正常。Zookeeper的maxClientCnxns配置项从1000为5000后现象缓解。

请问出现这种问题的原因是什么呢?

发表于 2022-01-27
  • 你先去kafka节点日志里,看看第一个警告是否有更详细的错误提示。客户端是长连接,是不是写的有问题,怎么需要那么多?半兽人 2年前 回复
添加评论

既然你没有更多信息,那你就先调大jvm吧。

kafka启动脚本kafka-server-start.sh中指定了kafka启动时需要的内存,默认为1G

export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"

调大。

林开心 -> 半兽人 2年前

我之前评论的好像都消失了,最开始是一直有这个告警,一段时间后就会oom

WARN Attempting to send response via channel for which there is no open connection, connection id 10.10.110.10:9094-10.10.110.25:34408-290441 (kafka.network.Processor)

以及这样的错误

ERROR Uncaught exception in thread 'SensorExpiryThread': (org.apache.kafka.common.utils.KafkaThread)
java.lang.OutOfMemoryError: Java heap space
ERROR Uncaught exception in thread 'kafka-scheduler-2': (org.apache.kafka.common.utils.KafkaThread)
java.lang.OutOfMemoryError: Java heap space
ERROR Uncaught exception in scheduled task 'highwatermark-checkpoint' (kafka.utils.KafkaScheduler)
java.lang.OutOfMemoryError: Java heap space
WARN [ReplicaFetcher replicaId=63, leaderId=64, fetcherId=0] Error in fetch to broker 64, request (type=FetchRequest, replicaId=63, maxWait=500, minBytes=1, maxBytes=10485760, fetchData={__consumer_offsets-29=(offset=0, logStartOffset=0, maxBytes=20485760)}, isolationLevel=READ_UNCOMMITTED) (kafka.server.ReplicaFetcherThread)

内存我设置的是16G了。

半兽人 -> 林开心 2年前

我删的,你评论的和你的问题是一样的错误,你在给我看有啥意义呢。
你在观察一下吧,如果调大没有出问题,就ok了。

你的答案

查看kafka相关的其他问题或提一个您自己的问题