Kafka群集部署配置的最佳实践?

时间:2017-05-31 21:09:26

标签: apache-kafka

我在这里要求一般的最佳做法:

如果我想要一个五节点集群,那么所有五个节点都运行包含Zookeeper,Kafka,schema-registry的Confluent Platform Umbrella包吗?

是否曾建议在与Kafka群集不同的服务器上运行zookeper群集?

如果我想运行Kafka Connect分布式工作器,是否要在所有群集节点上运行它?我是否想要在不同的服务器上运行? Docker是为此推荐还是不需要Docker?

使用Kafka Streaming应用程序,是否应该在所有群集节点上运行?他们应该停靠吗?他们应该在不同的节点上运行吗?

推荐使用Mesos吗?

1 个答案:

答案 0 :(得分:3)

最佳做法是在专用服务器(或虚拟服务器)上运行Kafka Brokers。 Zookeeper也是如此。

Confluent Platform的所有其他组件可以在公共服务器或不同的计算机上共同运行。

您通常只运行一个架构注册表(如果您想要容错,则运行两个架构注册表)。它们可以在任何可以连接回Kafka Brokers的机器上运行。

Kafka Connect分布式工作人员只需要在要托管Kafka连接器的计算机上运行。他们只需要能够连接回Kafka Brokers。

Kafka Streams应用程序可以在任何您想要的地方运行,只要它们可以连接回Kafka Brokers。

所有组件都可以在docker容器内运行,也可以不使用docker。

您可以使用您想要的任何微服务或数据中心资源管理工具(或根本不使用) - 这是您的选择。