apache-kafka - 如何自动缩放apache Zookeeper

标签 apache-kafka apache-zookeeper

有人使用 Auto Scale 来扩展 Zookeeper 集群吗?如果动物园管理员规模扩大,客户如何知道它已经扩大或缩小?特别是像 Kafka,zookeeper 列表被添加到配置文件中,zookeeper 会发生什么情况,kafka 现在是如何缩放的等等?

最佳答案

简短回答:ZooKeeper 客户端本质上不需要知道/跟踪是否有新节点添加到 ZooKeeper 集群。他们只需要至少一个可用(健康)的 ZK 节点。

更长的答案(以 Kafka 作为 ZK 的示例客户端):

  1. 如果您只是向 ZooKeeper 集群添加新节点,那么 Kafka 代理无需了解这一点,因为 zookeeper.connect 配置仍然包含健康的 ZK 节点。
  2. 但是,如果您要替换/删除一些 ZooKeeper 节点,并且这些节点是 zookeeper.connect 配置中存在的唯一节点,则需要滚动重新启动 Kafka 节点,更新 zookeeper.connect 配置后。

对于上面的#1,最好在 Kafka 集群下次重启时将新的 ZK 节点添加到 Kafka 配置中。

这同样适用于也依赖于 ZK 的其他技术(例如 Apache Storm)。

关于apache-kafka - 如何自动缩放apache Zookeeper,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46325702/

相关文章:

java - Kafka Consumer(Java 应用程序)- 在远程运行时连接被拒绝。在本地主机中工作正常

java - Kafka命令行consumer读取,但无法通过Java读取

java - 无法启动 Zookeeper 服务器。没有jdk目录

apache-zookeeper - 两台服务器上的zookeeper集群配置

windows - 无法在Windows中停止ZooKeeper

java - 如何在模式级别监听 kafka 事件

apache-kafka - 如何强制从kafka删除主题

apache-kafka - 如何设置状态存储更改日志主题的 max.message.bytes?

docker - 为什么我不能访问基于docker的Zookeeper端口

java - Kafka zookeeper 继续显示信息 Message 'Accepted socket connection from/10.xxx.xxx.xxx'