ReplicationFactor与kafka中的副本

时间:2018-01-29 09:19:21

标签: apache-kafka

我们可以将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,则Replicas可以是< = n。 有人可以帮我理解以下场景吗?因为ReplicationFactor设置为1,而Kafka显示为no。复制品为3。

1 个答案:

答案 0 :(得分:4)

ReplicationFactor告诉我们有多少副本。

Replicas列出所有副本的代理ID。

在您的示例中,ReplicationFactor为1,此单个副本托管在代理3上。它对LeaderIsr的工作方式相同。因此,broker 3是分区的领导者,也是同步副本(Isr)。

如果你有2个作为ReplicationFactor,你可以看到类似的东西:

[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)