庞大的 kafka 集群需要多少个 zookeeper 服务器

how many zookeeper servers we need for huge kafka cluster

我们在集群中搭建了18台kafka机器,kafka版本是1.0,在linux台机器上

目前我们有 3 个 zookeeper 服务器,但我们不知道 3 个 zookeeper 服务器是否足够 18 个 Kafka 机器

请问我们需要多少台 zookeeper 服务器来服务 18 台 Kafka 机器?

Zookeeper 节点的数量与集群中代理的数量没有直接关系。

3 个 Zookeeper 节点应该足够了,不过,了解这里的权衡是什么很好:

ZooKeeper uses majority quorums, which means that every voting that happens in one of these protocols requires a majority to vote on.

Source - Zookeeper Quorums

In a production environment, the ZooKeeper servers will be deployed on multiple nodes. This is called an ensemble. An ensemble is a set of 2n + 1 ZooKeeper servers where n is any number greater than 0. The odd number of servers allows ZooKeeper to perform majority elections for leadership.

Source - Confluent ZooKeeper Multi-node Setup

因此,您可以在独立模式下使用单节点 ZK,但您根本不会容错 .
使用 3 节点 集成,将允许您丢失 单个 节点,并且仍然运行良好。
使用 5 个节点 集成,将允许您失去 2 个节点,并且仍然运行良好。
使用 7 个节点 集成,将允许您失去 3 个节点,并且仍然运行良好。
等等