Rebalancing-Problem beim Lesen der Nachrichten in Kafka
Ich versuche, das Lesen von Nachrichten auf Kafka Thema, aber ich bin nicht in der Lage, es zu Lesen. Der Prozess getötet wird, nach einiger Zeit, ohne zu Lesen alle Nachrichten.
Hier ist die Neugewichtung Fehler die ich bekomme:
[2014-03-21 10:10:53,215] ERROR Error processing message, stopping consumer: (kafka.consumer.ConsoleConsumer$)
kafka.common.ConsumerRebalanceFailedException: topic-1395414642817-47bb4df2 can't rebalance after 4 retries
at kafka.consumer.ZookeeperConsumerConnector$ZKRebalancerListener.syncedRebalance(ZookeeperConsumerConnector.scala:428)
at kafka.consumer.ZookeeperConsumerConnector.kafka$consumer$ZookeeperConsumerConnector$$reinitializeConsumer(ZookeeperConsumerConnector.scala:718)
at kafka.consumer.ZookeeperConsumerConnector$WildcardStreamsHandler.<init>(ZookeeperConsumerConnector.scala:752)
at kafka.consumer.ZookeeperConsumerConnector.createMessageStreamsByFilter(ZookeeperConsumerConnector.scala:142)
at kafka.consumer.ConsoleConsumer$.main(ConsoleConsumer.scala:196)
at kafka.consumer.ConsoleConsumer.main(ConsoleConsumer.scala)
Consumed 0 messages
Ich habe versucht zu laufen ConsumerOffsetChecker
und das ist die Fehlermeldung die ich bekomme. Ich habe keine Ahnung, wie diese zu lösen. Irgendjemand, irgendeine Idee?
./kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zkconnect localhost:9092 --topic mytopic --group topic_group
Group Topic Pid Offset logSize Lag Owner
Exception in thread "main" org.I0Itec.zkclient.exception.ZkNoNodeException: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /consumers/
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:459)
at kafka.tools.ConsumerOffsetChecker$.kafka$tools$ConsumerOffsetChecker$$processPartition(ConsumerOffsetChecker.scala:59)
at kafka.tools.ConsumerOffsetChecker$$anonfun$kafka$tools$ConsumerOffsetChecker$$processTopic$1.apply$mcVI$sp(ConsumerOffsetChecker.scala:89)
at kafka.tools.ConsumerOffsetChecker$$anonfun$kafka$tools$ConsumerOffsetChecker$$processTopic$1.apply(ConsumerOffsetChecker.scala:89)
at kafka.tools.ConsumerOffsetChecker$$anonfun$kafka$tools$ConsumerOffsetChecker$$processTopic$1.apply(ConsumerOffsetChecker.scala:89)
at scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:61)
at scala.collection.immutable.List.foreach(List.scala:45)
at kafka.tools.ConsumerOffsetChecker$.kafka$tools$ConsumerOffsetChecker$$processTopic(ConsumerOffsetChecker.scala:88)
at kafka.tools.ConsumerOffsetChecker$$anonfun$main$3.apply(ConsumerOffsetChecker.scala:153)
at kafka.tools.ConsumerOffsetChecker$$anonfun$main$3.apply(ConsumerOffsetChecker.scala:153)
at scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:61)
at scala.collection.immutable.List.foreach(List.scala:45)
at kafka.tools.ConsumerOffsetChecker$.main(ConsumerOffsetChecker.scala:152)
at kafka.tools.ConsumerOffsetChecker.main(ConsumerOffsetChecker.scala)
Caused by: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /consumers/
at org.apache.zookeeper.KeeperException.create(KeeperException.java:102)
at org.apache.zookeeper.KeeperException.create(KeeperException.java:42)
at org.apache.zookeeper.ZooKeeper.getData(ZooKeeper.java:927)
at org.apache.zookeeper.ZooKeeper.getData(ZooKeeper.java:956)
at org.I0Itec.zkclient.ZkConnection.readData(ZkConnection.java:103)
at org.I0Itec.zkclient.ZkClient$9.call(ZkClient.java:770)
at org.I0Itec.zkclient.ZkClient$9.call(ZkClient.java:766)
at org.I0Itec.zkclient.ZkClient.retryUntilConnected(ZkClient.java:675)
... 16 more
InformationsquelleAutor der Frage divinedragon | 2014-03-21
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich habe ähnliche Probleme vor kurzem. Sie können versuchen, die Erhöhung der Verbraucher-Konfigurationen auszugleichen.backoff.ms und Tierpfleger.Sitzung.timeout.ms etwa 5-10 Sekunden.
Den ersten parameter sagen, kafka zu warten, bevor Sie den Vorgang wiederholen, wieder auszugleichen.
Die zweiten sagen, kafka geduldiger zu sein, während Sie versuchen, eine Verbindung zu Tierpfleger.
Anderen Konfigurations-Optionen finden Sie auf die offizielle Dokumentation.
InformationsquelleAutor der Antwort Minh-Triet LÊ
Bedeutet dies wohl, dass der Broker nicht schaffen, diesen Knoten korrekt, wenn es mit Tierpflegerin. Des /der Verbraucher Pfad sollte existieren, wenn Sie versuchen, zu konsumieren.
Hier sind ein paar Wege zum Debuggen:
Hast du irgendwelche Themen?
Wenn ja:
Wenn nicht:
$KAFKA_DIR/bin/kafka-create-topic.sh
. Blick in das Skript für die Nutzung details.InformationsquelleAutor der Antwort laughing_man
Es ist ein Fehler in kafka.tools.ConsumerOffsetChecker. Wenn die einen bestimmten Zookeeper-Knoten holding verbraucht offset-Informationen, die nicht verlassen, wird das tool beendet und warf die execption.
Angenommen, Sie haben eine Verbraucher-Gruppe "mygroup" und ein Thema "topictest". Dann wird der offset für die partition 2 wird beibehalten, in der Znode:
/Verbraucher/mygroup/offsets/topictest/2.
Gibt es keinen Eintrag für die partition 2 von Thema topictest in Znode, dann Verbraucher offsetchecker tool wird beendet, während der Prüfung der offset für die partition 2.
Grundsätzlich wird es scheitern, während Sie die erste partition mit "n", für die der Znode /Verbraucher/mygroup/offsets/topictest/n fehlt auf Tierpfleger.
InformationsquelleAutor der Antwort Nipun Talukdar
wohl Ihrem Broker offline sind, und Sie sind nicht in der Lage, eine Verbindung zum Tierpfleger, haben Sie versucht mit der Konsole-Verbraucher-Skript, erhältlich in der
$KAFKA_ROOT_DIR/bin
Pfad für die überprüfung, ob Sie in der Lage sind, zu konsumieren, von einem bestimmten Thema.InformationsquelleAutor der Antwort user2720864
Weiteres Problem könnte sein, weil der jar-Konflikte. Wenn man das gleiche Glas mit verschiedenen Versionen gespeichert, die im Ordner "library". Dieses Problem kann auftreten.
Gläser wie das scala-Bibliothek ,zkclient, Tierpfleger, kafka-client sollte nicht dupliziert werden, mit verschiedenen Versionen.
InformationsquelleAutor der Antwort charan teja