[ https://issues.apache.org/jira/browse/KAFKA-1605?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14103548#comment-14103548 ]
Joe Stein commented on KAFKA-1605: ---------------------------------- You need the meta data request/response not just on startup but on any error and on intervals to know what is happening in the cluster. A connection to the broker(s) which your are doing already when you produce is used to handle the meta data request/response which is "better" than also requiring the producer to have yet another connection open to zookeeper (and zookeeper having to have yet another connection from somewhere else) to get this information. You can manage the broker list however you want. It doesn't have to be IP you can use Hostnames or DNS. You can also use Serf, Chef, Puppet, Zookeeper, whatever to store DNS or IP of your brokers. Pass the broker list into the property file when dramatic changes within your infrastructure occur and everything should work for you.... or use DNS/Hostfile and you don't have to change anything in the file and just the entry for where DNS/Hostfile points too. > Producer should not require metadata.broker.list > ------------------------------------------------ > > Key: KAFKA-1605 > URL: https://issues.apache.org/jira/browse/KAFKA-1605 > Project: Kafka > Issue Type: Improvement > Affects Versions: 0.8.1.1 > Reporter: Prashant Deva > > Producer should just query the zookeeper and get the list of brokers from it > directly. > With the current requirement the producer explicitly needs to know the ips of > all the brokers. So if you decide to replace them, you have to change the > Producer's code. > Isnt the whole point of using a zookeeper to avoid these kind of dependencies? -- This message was sent by Atlassian JIRA (v6.2#6252)