gpt4 book ai didi

integration - 在 zookeeper 子上下文或 chroot 上运行的 Kafka

转载 作者:行者123 更新时间:2023-12-04 11:03:17 30 4
gpt4 key购买 nike

状态:我们正在与 kafka 和几个不同的服务共享 zookeeper,这些服务使用 zookeeper 进行协调。他们很好地在 zookeeper 子上下文中运行。看起来像这样:

/
/service1/...
/service2/...
/brokers/...
/consumers/...

我的问题是..是否可以设置 kafka 以使用子上下文?因此,其他服务最终无法修改其他服务子上下文。这将是:
/
/service1/...
/service2/...
/kafka/brokers/...
/kafka/consumers/...

我在其他项目中看到了这种语法:

zk://10.0.0.1,10.0.0.2/kafka



可以说。所以,kafka 只会看到 brokersconsumers路径,并且没有办法弄乱其他子上下文。

恐怕当时 kafka 不支持这种格式。另一个问题是,有解决方法吗?喜欢以某种方式结束zookeeper?有任何想法吗?或者kafka应该专门使用zookeeper。这是最佳实践吗,我们应该为每个项目生成zookeeper,这是矫枉过正的,因此zookeeper需要集成至少由3个节点组成。

感谢您的回答!

最佳答案

您可以在 Kafka 中使用 zk chroot 语法,详见 Kafka 配置 documentation .

Zookeeper also allows you to add a "chroot" path which will make all kafka data for this cluster appear under a particular path. This is a way to setup multiple Kafka clusters or other applications on the same zookeeper cluster. To do this give a connection string in the form hostname1:port1,hostname2:port2,hostname3:port3/chroot/path which would put all this cluster's data under the path /chroot/path. Note that you must create this path yourself prior to starting the broker and consumers must use the same connection string.



最佳实践是维护一个单独的 ZooKeeper 集群(至少这是我所看到的)。否则,您会为维护良好的 ZK 集成而创建更多的操作工作量。

卡夫卡 documentation在操作 ZK 时,建议使用多个 ZK:

Application segregation: Unless you really understand the application patterns of other apps that you want to install on the same box, it can be a good idea to run ZooKeeper in isolation (though this can be a balancing act with the capabilities of the hardware).

关于integration - 在 zookeeper 子上下文或 chroot 上运行的 Kafka,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35603128/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com