Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Kafka, mail # user - How to create the initial zookeeper chroot path for zk.connect?


Copy link to this message
-
Re: How to create the initial zookeeper chroot path for zk.connect?
Ryan Chan 2013-04-20, 09:24
Hello,

Tried, still the same...
bin/zkCli.sh -server zookeeper1:2181,zookeeper2:2181,zookeeper3:2181
[zk: zookeeper1,zookeeper2,zookeeper3(CONNECTED) 0]  ls /
[testkafka, consumers, brokers, zookeeper]
[zk: zookeeper1,zookeeper2,zookeeper3(CONNECTED) 1] rmr /testkafka
[zk: zookeeper1,zookeeper2,zookeeper3(CONNECTED) 2] create /testkafka ''
[zk: zookeeper1,zookeeper2,zookeeper3(CONNECTED) 3] ls /
[testkafka, consumers, brokers, zookeeper]

And restart Kafka

[2013-04-20 09:20:58,336] FATAL Fatal error during KafkaServerStable
startup. Prepare to shutdown (kafka.server.KafkaServerStartable)
java.lang.IllegalArgumentException: Path length must be > 0
at org.apache.zookeeper.common.PathUtils.validatePath(PathUtils.java:48)
at org.apache.zookeeper.common.PathUtils.validatePath(PathUtils.java:35)
at org.apache.zookeeper.ZooKeeper.create(ZooKeeper.java:626)
at org.I0Itec.zkclient.ZkConnection.create(ZkConnection.java:87)
at org.I0Itec.zkclient.ZkClient$1.call(ZkClient.java:308)
at org.I0Itec.zkclient.ZkClient$1.call(ZkClient.java:304)
at org.I0Itec.zkclient.ZkClient.retryUntilConnected(ZkClient.java:675)
at org.I0Itec.zkclient.ZkClient.create(ZkClient.java:304)
at org.I0Itec.zkclient.ZkClient.createPersistent(ZkClient.java:213)
at org.I0Itec.zkclient.ZkClient.createPersistent(ZkClient.java:223)
at org.I0Itec.zkclient.ZkClient.createPersistent(ZkClient.java:223)
at kafka.utils.ZkUtils$.createParentPath(ZkUtils.scala:47)
at kafka.utils.ZkUtils$.createEphemeralPath(ZkUtils.scala:59)
at kafka.utils.ZkUtils$.createEphemeralPathExpectConflict(ZkUtils.scala:71)
at kafka.server.KafkaZooKeeper.registerBrokerInZk(KafkaZooKeeper.scala:54)
at kafka.log.LogManager.startup(LogManager.scala:130)
at kafka.server.KafkaServer.startup(KafkaServer.scala:81)
at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:34)
at kafka.Kafka$.main(Kafka.scala:47)
at kafka.Kafka.main(Kafka.scala)

Maybe I should report a bug?
(I posted here first just to know if I have done sth stupid)
On Sat, Apr 20, 2013 at 1:02 PM, Neha Narkhede <[EMAIL PROTECTED]>wrote:

> Hmm, so if you use all 3 zookeeper servers will creating and reading
> the node, do you still see the problem ?
>
> zkCli.sh -server zookeeper1:2181,zookeeper2:2181,zookeeper3:2181
> create /testkafka
> ls /
>
> Thanks
> Neha
>
> On Fri, Apr 19, 2013 at 8:55 PM, Ryan Chan <[EMAIL PROTECTED]> wrote:
> > Hi,
> >
> > Actually I followed the above link to setup my zookeeper1 to zookeeper3.
> >
> > They are in the same quorum, as you can see in my above example that
> when I
> > created the /testkafka path in zookeeper1, I can see list it in
> zookeeper2
> >
> > Thanks
> >
> >
> > On Sat, Apr 20, 2013 at 12:08 AM, Neha Narkhede <[EMAIL PROTECTED]
> >wrote:
> >
> >> I'm pretty sure the issue is that those 3 zookeepers are not part of
> >> the same quorum. Try following the quickstart for starting up a local
> >> zookeeper instance or follow
> >>
> >>
> http://zookeeper.apache.org/doc/r3.3.3/zookeeperAdmin.html#sc_zkMulitServerSetup
> >> for a zookeeper cluster setup.
> >>
> >> Thanks,
> >> Neha
> >>
> >> On Thu, Apr 18, 2013 at 10:50 PM, Jonathan Creasy <[EMAIL PROTECTED]> wrote:
> >> > I made the patch to create the chroot and it doesn't handle multiple
> zk
> >> > addresses.
> >> >
> >> > We fixed it but I guess that patch didn't get submitted. I will make a
> >> > ticket here to get that done.
> >> > On Apr 18, 2013 10:47 PM, "Ryan Chan" <[EMAIL PROTECTED]> wrote:
> >> >
> >> >> Yes, using the latest Kafka 0.7.2, just tried to reproduce again
> >> >>
> >> >> 1. Install a single node Kafka, three nodes zookeeper instances
> >> >>
> >> >>     kafka1
> >> >>     zookeeper1
> >> >>     zookeeper2
> >> >>     zookeeper3
> >> >>
> >> >> 2. Using a simple Kafka config, able to start without error in the
> log
> >> >>
> >> >>     brokerid=1
> >> >>     log.dir=/data/kafka
> >> >>     zk.connect=zookeeper1:2181,zookeeper2:2181,zookeeper3:2181
> >> >>
> >> >> 3. Now, create a path in zookeeper1