4

我想使用Kafka 0.10 API优选的 with创建一个代理集群Java。据我所知,kafka_2.11-0.10.0.0.jar支持使用以下方法创建代理:

import kafka.cluster.Broker;
import kafka.cluster.Cluster; 

但我找不到任何这样做的文档。我最近阅读了 [1],其中介绍了如何使用Kafka APIin创建主题Java。我们可以做类似的事情来 创建代理集群,更新分区,将现有数据/分区迁移到新代理(因为这些新代理不会自动分配任何数据分区,因此除非将分区移动到它们,否则它们将不会做任何工作[2])

[1]我们如何从 IDE 使用 API 在 Kafka 中创建主题

[2] https://kafka.apache.org/0100/ops.html#basic_ops_cluster_expansion

4

1 回答 1

-1

我有一些您可能会觉得有用的示例代码。

要创建代理,请查看KafkaTestServer。确实是为了更简单的测试,所以没有创建集群,只是一个broker,但是扩展起来应该不难。

一旦我在测试服务器中建立了创建/查询/删除主题的能力,我创建了一个独立的管理客户端来对其他服务器执行相同的操作,所以如果你已经在创建代理集群,你应该能够使用代码维护它的主题。看看KafkaAdminClient

管理客户端基本上是围绕 scala kafka.admin.AdminUtils类的纯 java 包装器,因此它处理所有 scala <--> java 转换。

于 2016-08-04T12:54:16.383 回答