0

我想像这张图片一样将主题分区分成多个 kafka 服务器。

示例:我只有一个主题“Test”,我有两个 kafka 服务器(k1,k2),我有 4 个主题“Test”分区。我希望服务器 k1 有分区 0 和 1,服务器 k2 有分区 2、3。

4

1 回答 1

0

Kafka 服务器只不过是多个代理。请按照以下步骤,

  1. 将文件复制config/server.properties到您需要的服务器数量中。在你的情况下,它是两个。将文件复制到两个不同的文件并更改代理 ID 和端口

    一世。server_K1.properties (您可以根据需要提供文件名),如下更改文件属性。
    broker.id=1
    port=9092
    log.dir=/tmp/kafka-logs-1

    ii.server_K2.properties
    broker.id=2
    port=9093
    log.dir=/tmp/kafka-logs-2

使用以上两种配置启动kafka服务器

bin/kafka-server-start.sh config/server_K1.properties
bin/kafka-server-start.sh config/server_K2.properties

通过提供复制因子,主题将在代理之间复制。并且根据您创建的分区以及您收到的数据量,这些分区在代理之间共享。

您可以在创建主题时创建 4 个分区,并且此分区将在代理之间共享。

于 2020-06-29T10:31:47.807 回答