Apache Kafka Cluster启动失败并出现NoNodeException

时间:2018-03-26 10:02:45

标签: java apache-spark apache-kafka spark-streaming apache-zookeeper

我试图启动一个消耗来自Kafka队列的火花流会话,并且我使用Zookeeper来配置mgt。但是,当我尝试启动此时,会抛出异常。

18/03/26 09:25:49 INFO ZookeeperConnection: Checking Kafka topic core-data-tickets does exists ...

18/03/26 09:25:49 INFO Broker: Kafka topic core-data-tickets exists
18/03/26 09:25:49 INFO Broker: Processing topic : core-data-tickets
18/03/26 09:25:49 WARN ZookeeperConnection: Resetting Topic Offset
org.I0Itec.zkclient.exception.ZkNoNodeException: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /consumers/clt/offsets/core-data-tickets/4
    at org.I0Itec.zkclient.exception.ZkException.create(ZkException.java:47)
    at org.I0Itec.zkclient.ZkClient.retryUntilConnected(ZkClient.java:685)
    at org.I0Itec.zkclient.ZkClient.readData(ZkClient.java:766)
    at org.I0Itec.zkclient.ZkClient.readData(ZkClient.java:761)
    at kafka.utils.ZkUtils$.readData(ZkUtils.scala:443)
    at kafka.utils.ZkUtils.readData(ZkUtils.scala)
    at net.core.data.connection.ZookeeperConnection.readTopicPartitionOffset(ZookeeperConnection.java:145)

我已经创建了相关的Kafka主题。

对此的任何见解都将受到高度赞赏。

我使用以下代码运行spark job

spark-submit --class net.core.data.compute.Broker     --executor-memory 512M     --total-executor-cores 2     --driver-java-options "-Dproperties.path=/ebs/tmp/continuous-loading-tool/continuous-loading-tool/src/main/resources/dev.properties"  --conf spark.ui.port=4045   /ebs/tmp/dev/data/continuous-loading-tool/target/continuous-loading-tool-1.0-SNAPSHOT.jar

1 个答案:

答案 0 :(得分:2)

我猜这个错误与抵消保留有关。默认情况下,偏移仅存储1440分钟(即24小时)。因此,如果该组在一天内没有提供抵消,Kafka就不会获得有关它的信息。

可能的解决方法是相应地设置offsets.retention.minutes的值。

offsets.retention.minutes

  

将丢弃超过此保留期的偏移量