kafka集群的动物园管理员故障转移
问题描述:
我想知道是否有任何方法可以使kafka集群的动物园管理员故障转移。 例如:我想为我的kafka集群设置2个zookeeper实例。如果一个动物园管理员失败,卡夫卡服务器仍然能够从第二动物园管理员读取主题的元数据。kafka集群的动物园管理员故障转移
任何建议是highle appricicated。
答
Zookeeper作为一个所谓的法定人数 - 一个基于简单多数票形成共识的节点群。
对于生产,您应该在法定人数中使用3个或5个Zookeeper实例。 如果你使用3,你的集群可以在一台服务器上丢失(因为剩下的两个组成了简单的多数)。使用5时,可能会丢失两台服务器,因为3是5的大多数。
2是一个坏主意,因为如果1节点发生故障,您的集群将无法工作。
答
$KAFKA_HOME/config/server.properties
在这里你可以设置多个饲养员
zookeeper.connect=<server1>:2181,<server2>:2181,<server2>:2181
保持2N + 1(定额)在饲养员
的情况下,规则