web-dev-qa-db-fra.com

Erreur de publication du message dans le sujet Kafka

Je suis nouveau à Kafka et j'essaie de configurer l'environnement pour cela. J'essaie de lancer un seul nœud Kafka mais je reçois une erreur à ce sujet. 

Suivre les étapes suivantes sur mac

1. brew install zookeeper
2. brew install kafka
3. zkServer start
4.  kafka-server-start.sh /usr/local/etc/kafka/server.properties
5.bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
6.bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test 
This is a message

Mais je reçois l'erreur suivante. S'il vous plaît faites le moi savoir, si j'ai manqué quelque chose

[2015-10-19 15:48:46,632] WARN Error while fetching metadata [{TopicMetadata for topic test -> 
No partition metadata for topic test due to kafka.common.LeaderNotAvailableException}] for topic [test]: class kafka.common.LeaderNotAvailableException  (kafka.producer.BrokerPartitionInfo)
[2015-10-19 15:48:46,637] WARN Error while fetching metadata [{TopicMetadata for topic test -> 
No partition metadata for topic test due to kafka.common.LeaderNotAvailableException}] for topic [test]: class kafka.common.LeaderNotAvailableException  (kafka.producer.BrokerPartitionInfo)
[2015-10-19 15:48:46,638] ERROR Failed to collate messages by topic, partition due to: Failed to fetch topic metadata for topic: test (kafka.producer.async.DefaultEventHandler)
[2015-10-19 15:48:46,746] WARN Error while fetching metadata [{TopicMetadata for topic test -> 
No partition metadata for topic test due to kafka.common.LeaderNotAvailableException}] for topic [test]: class kafka.common.LeaderNotAvailableException  (kafka.producer.BrokerPartitionInfo)
[2015-10-19 15:48:46,749] WARN Error while fetching metadata [{TopicMetadata for topic test -> 
No partition metadata for topic test due to kafka.common.LeaderNotAvailableException}] for topic [test]: class kafka.common.LeaderNotAvailableException  (kafka.producer.BrokerPartitionInfo)
[2015-10-19 15:48:46,749] ERROR Failed to collate messages by topic, partition due to: Failed to fetch topic metadata for topic: test (kafka.producer.async.DefaultEventHandler)
[2015-10-19 15:48:46,860] WARN Error while fetching metadata [{TopicMetadata for topic test -> 
No partition metadata for topic test due to kafka.common.LeaderNotAvailableException}] for topic [test]: class kafka.common.LeaderNotAvailableException  (kafka.producer.BrokerPartitionInfo)
[2015-10-19 15:48:46,863] WARN Error while fetching metadata [{TopicMetadata for topic test -> 
No partition metadata for topic test due to kafka.common.LeaderNotAvailableException}] for topic [test]: class kafka.common.LeaderNotAvailableException  (kafka.producer.BrokerPartitionInfo)
[2015-10-19 15:48:46,863] ERROR Failed to collate messages by topic, partition due to: Failed to fetch topic metadata for topic: test (kafka.producer.async.DefaultEventHandler)
[2015-10-19 15:48:46,973] WARN Error while fetching metadata [{TopicMetadata for topic test -> 
No partition metadata for topic test due to kafka.common.LeaderNotAvailableException}] for topic [test]: class kafka.common.LeaderNotAvailableException  (kafka.producer.BrokerPartitionInfo)
[2015-10-19 15:48:46,977] WARN Error while fetching metadata [{TopicMetadata for topic test -> 
No partition metadata for topic test due to kafka.common.LeaderNotAvailableException}] for topic [test]: class kafka.common.LeaderNotAvailableException  (kafka.producer.BrokerPartitionInfo)
[2015-10-19 15:48:46,977] ERROR Failed to collate messages by topic, partition due to: Failed to fetch topic metadata for topic: test (kafka.producer.async.DefaultEventHandler)
[2015-10-19 15:48:47,083] WARN Error while fetching metadata [{TopicMetadata for topic test -> 
No partition metadata for topic test due to kafka.common.LeaderNotAvailableException}] for topic [test]: class kafka.common.LeaderNotAvailableException  (kafka.producer.BrokerPartitionInfo)
[2015-10-19 15:48:47,084] ERROR Failed to send requests for topics test with correlation ids in [0,8] (kafka.producer.async.DefaultEventHandler)
[2015-10-19 15:48:47,086] ERROR Error in handling batch of 1 events (kafka.producer.async.ProducerSendThread)
kafka.common.FailedToSendMessageException: Failed to send messages after 3 tries.
    at kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:90)
    at kafka.producer.async.ProducerSendThread.tryToHandle(ProducerSendThread.scala:105)
    at kafka.producer.async.ProducerSendThread$$anonfun$processEvents$3.apply(ProducerSendThread.scala:88)
    at kafka.producer.async.ProducerSendThread$$anonfun$processEvents$3.apply(ProducerSendThread.scala:68)
    at scala.collection.immutable.Stream.foreach(Stream.scala:547)
    at kafka.producer.async.ProducerSendThread.processEvents(ProducerSendThread.scala:67)
    at kafka.producer.async.ProducerSendThread.run(ProducerSendThread.scala:45)

merci

8
Alok

Alok, Ce problème très commun du port et de l'hôte. 
Pourriez-vous s'il vous plaît confirmer l'hôte et le port pour Zookeeper et Kafka Broker. Je suppose que vous avez configuré Kafka dans votre section locale, alors assurez-vous de fournir le nom d'hôte approprié.

Exécutez la commande ci-dessous pour vous assurer que le Zookeeper et le Courtier Kafka s'exécutant sur le port que vous avez mentionné dans votre commande:

netstat -a | port grep

S'il vous plaît laissez-moi savoir si vous rencontrez toujours un problème.

4
Bector

Le problème de mon côté a été résolu en définissant la valeur localhost sur les propriétés suivantes dans le fichier config/server.properties:

Host.name
advertised.Host.name
7
p.matsinopoulos

Lorsque vous utilisez le courtier Kafka, zookeeper est tenu de . Vous devez commencer zookeeper-server avant de commencer kafka-server.

Soyez très prudent avec les ports, quand utiliser zookeeper port, quand utiliser kafka broker port

Si vous obtenez une exception liée aux métadonnées, vérifiez si votre sujet existe dans le courtier.

./kafka-topics.sh --zookeeper <Host>:<port> --describe --topic <topic-name>

Pour les sujets et les consommateurs, utilisez le portage de zookeeper (service) et pour le consommateur, utilisez kafka broker.

0
Ketan Keshri

Je l'ai résolu en modifiant la propriété Host.name dans le fichier server.properties. Par défaut, il est commenté et pointe vers la machine locale. Donc, si vous voulez commencer kafka localement, décommentez ceci et vous êtes prêt. Signification - Host.name = localhost

0
Osman Mohmmed

avait réglé le localhost à 127.0.0.1 pour résoudre ce problème dans server.properties

0
infowise

Essayez de démarrer le gardien de zoo avec la configuration appropriée, comme vous le faites avec le kafka:

bin/zookeeper-server-start.sh config/zookeeper.properties

Vous pouvez supprimer le journal du courtier, puis réessayer:

rm -R /tmp/kafka-logs (default location)

Si vous avez toujours des problèmes, consultez les journaux.

0
magiccrafter