STORM configuration TOPOLOGY problem
The initial error:
DynamicBrokersReader [ERROR] Node / brokers/ids/0 does not exist
Set up:
BrokerHosts brokerHosts = new ZkHosts (zks, "/ kafka/brokers")
Then there is the following error:
2016-04-13T15:07:10.657+0800 b.s.util [ERROR] Async loop divided java.lang.RuntimeException: java.lang.RuntimeException: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for / kafka/brokers/topics/testtopic/partitions at storm.kafka.DynamicBrokersReader.getBrokerInfo (DynamicBrokersReader.java:81) ~ [storm-kafka-0.9.6.jar:0.9.6] at storm.kafka.trident.ZkBrokerReader. (ZkBrokerReader.java:42) ~ [storm-kafka-0.9 .6.jar: 0.9.6] at storm.kafka.KafkaUtils.makeBrokerReader (KafkaUtils.java:57) ~ [storm-kafka-0.9.6.jar:0.9.6] at storm.kafka.KafkaSpout.open (KafkaSpout.java:87) ~ [storm-kafka-0.9.6.jar:0.9.6] at backtype.storm.daemon.executor$fn__3371 $fn__3386.invoke (executor.clj:529) ~ [storm-core-0.9. 6.jar:0.9.6] at backtype.storm.util$async_loop$fn__460.invoke (util.clj:461) ~ [storm-core-0.9.6.jar:0.9.6] at clojure.lang.AFn.run (AFn.java:24) [clojure-1.5.1.jar:na] at java.lang.Thread.run (Thread.java:662) [na:1.6.0_38] Caused by: java.lang.RuntimeException Org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for / kafka/brokers/topics/testtopic/partitions at storm.kafka.DynamicBrokersReader.getNumPartitions (DynamicBrokersReader.java:94) ~ [storm-kafka-0.9.6.jar:0.9.6] at storm.kafka.DynamicBrokersReader.getBrokerInfo (DynamicBrokersReader.java:65) ~ [storm-kafka-0.9.6.jar:0.9.6]. 7 common frames omitted
The analysis found that in
Although zkPath is read in the DynamicBrokersReader class, the connection address in front of it already has a prefix address, so there is no need to add
Get rid of the original mistake or report it, and then analyze it.
Check after zkCli.sh enters zookeeper, it is true that there is no 0, there is only 1 id, which is defined when kafka is configured.
Configure broker.id = 0 (other machine sequential configuration) in kafka/config/server.properties, restart, problem solved!