繁体   English   中英

如何在同一个 L2 网络上创建多个 Kafka 集群?

[英]How to create multiple Kafka clusters on same L2 network?

我在同一个 L2 网络上有 12 个 Kafka 节点。

我想在同一个 L2 网络上创建 4 个 Kafka 集群(每个集群有 3 个节点)。

是否有可能做到这一点以及如何做到这一点? 如果不是,那么解决方法是什么?

Kafka 集群基本上由其成员使用的 Zookeeper 数据模型定义。 因此,如果您希望某些代理属于给定集群,则必须使它们指向相同的 Zookeeper 命名空间。 实际上,如果您想拥有 4 个集群,那么您的 Zookeeper 集合中将需要 4 个不同的 chroot,并使每个集群使用不同的一个。 例如,集群 A 的成员将使用zookeeper.connect=127.0.0.1:2181/cluster/a ,集群 B 的成员将使用zookeeper.connect=127.0.0.1:2181/cluster/b等等。 当然,另一种选择是为每个集群使用一个完全分离的 Zookeeper 集成。

来自ZooKeeper 程序员指南

可选的“chroot”后缀也可以附加到连接字符串。 这将在解释与此根相关的所有路径的同时运行客户端命令(类似于 unix chroot 命令)。 如果使用该示例将类似于:“127.0.0.1:4545/app/a”或“127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002/app/a”,其中客户端将植根于“/app/a”和所有路径都将相对于这个根 - 即获取/设置/等...“/foo/bar”将导致在“/app/a/foo/bar”上运行操作(来自服务器视角)。 此功能在多租户环境中特别有用,在这种环境中,特定 ZooKeeper 服务的每个用户都可能具有不同的 root 权限。 这使得重用变得更加简单,因为每个用户都可以编码他/她的应用程序,就好像它以“/”为根,而实际位置(比如 /app/a)可以在部署时确定。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM