为wurstmeister / kafka docker镜像定义Zookeeper znode

时间:2017-11-21 10:21:22

标签: docker apache-kafka apache-zookeeper

我想将kafka znodes设置为另一个znode而不是root。 例如 kafka的默认znodes是:

/admin
/brokers
/cluster
/config

但我想重组它们并将它们移到kafka znode

/kafka/admin
/kafka/brokers
/kafka/cluster
/kafka/config

docker-compose的任何属性都有默认的zookeeper znode?

谢谢

1 个答案:

答案 0 :(得分:1)

我正在查看ZooKeeper客户端中的一些逻辑,并注意到这实际上是可行的。它没有记录!

您可以在zookeeper.connect设置中指定chroot。例如:

zookeeper.connect=ZK_HOST:2181/somepath

和Kafka只会在ZooKeeper

中的/ somepath下写

我在文档中提到了PR:https://github.com/apache/kafka/pull/5358

原始答案:

我认为不可能。 Zookeeper路径在Kafka中是硬编码的,我不知道使用配置为它们添加前缀的方法。

那就是说,这听起来像是一个明智的要求,所以你可以尝试让Kafka支持这个。由于它将引入新配置,您需要创建一个KIP:https://cwiki.apache.org/confluence/display/KAFKA/Kafka+Improvement+Proposals