多个服务器上的Kafka

时间:2016-12-07 02:24:21

标签: apache-kafka apache-zookeeper devops

我按照link来安装Kafka + Zookeeper。一切运作良好,但我在2台服务器上设置Kafka + Zookeeper。

我已将kafka/config/server.properties设置为:

  • 服务器1:broker.id = 0
  • 服务器1:zookeeper.connect = localhost:2181,99.99.99.91:2181
  • 服务器2:broker.id = 1
  • 服务器2:zookeeper.connect = localhost:2181,99.99.99.92:2181

我想知道以下内容:

  • 当我发布主题时,它是同时发送到实例,还是只加载到它上面的服务器?
  • 为了使用这样的多个服务器,我是否需要使用HAProxy等3台服务器?
  • 使用3台服务器有什么重要意义吗?

感谢您的回答。

1 个答案:

答案 0 :(得分:2)

在一开始,我会假设这里提到的实例引用了Kafka服务器实例。

问题#1:新创建的主题的信息将存储在Zookeeper中,一些关键信息将被加载到所有代理的元数据缓存缓冲区中。

问题2:无需为Kafka群集配置任何类型的代理服务器。它可以自我管理来实现故障转移和负载平衡。

问题3:分配一个未使用的id和数据目录,就像你为这两个代理做的那样就足够了。

最后但并非最不重要的是,由于ZAB需要占多数,因此最好使用奇数个机器作为zookeeper仲裁。