ReplicationFactor 与 kafka 中的副本

问题描述 投票:0回答:1

我们可以将 ReplicationFactor 设置为 1 吗?副本数量达到 3 ?

[user@master01 kafka]$ ./bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test
Topic:test      PartitionCount:1        ReplicationFactor:1     Configs:
    Topic: test     Partition: 0    Leader: 3       Replicas: 3     Isr: 3

据我了解,如果 ReplicationFactor 为 n,则副本可以为 <=n.

有人可以帮我理解以下场景吗?由于 ReplicationFactor 设置为 1,Kafka 显示副本数为 3。

apache-kafka
1个回答
10
投票

ReplicationFactor
告诉有多少个副本。

Replicas
列出所有副本的broker id。

在您的示例中,

ReplicationFactor
为 1,并且此单个副本托管在代理 3 上。
Leader
Isr
的工作方式相同。因此,代理 3 是该分区的领导者,也是同步副本 (Isr)。


如果 ReplicationFactor 为 2,您可能会看到类似以下内容:

[user@master01 kafka]$ ./bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test
Topic:test      PartitionCount:1        ReplicationFactor:2    Configs:
Topic: test     Partition: 0    Leader: 3       Replicas: 3,1     Isr: 3,1

现在代理 3 仍然是该分区的领导者,但有两个副本和两个 Isr(代理 3 和 1)

© www.soinside.com 2019 - 2024. All rights reserved.