Apache kafka 如何将单个Kafka服务器中使用的Kafka主题迁移到复制因子为2的Kafka群集?
我运行的是一台带有多个产品和消费者的Kafka服务器。现在我想通过添加另一个代理来实现Kafka集群。如何通过将同一主题与复制因子一起使用来实现这一点。现在,您将移动到一个具有两个kafka代理的集群,然后应使用以下命令将分区数增加到两个Apache kafka 如何将单个Kafka服务器中使用的Kafka主题迁移到复制因子为2的Kafka群集?,apache-kafka,kafka-cluster,Apache Kafka,Kafka Cluster,我运行的是一台带有多个产品和消费者的Kafka服务器。现在我想通过添加另一个代理来实现Kafka集群。如何通过将同一主题与复制因子一起使用来实现这一点。现在,您将移动到一个具有两个kafka代理的集群,然后应使用以下命令将分区数增加到两个 kafka-topics --topic my-topic --alter --partitions 2 --zookeeper zoo1 #观察分区数为2且RF:1的分区 kafka-topics --topic my-topic --describe
kafka-topics --topic my-topic --alter --partitions 2 --zookeeper zoo1
#观察分区数为2且RF:1的分区
kafka-topics --topic my-topic --describe --zookeeper zoo1
Topic:my-topic PartitionCount:2 ReplicationFactor:1 Configs:
Topic: my-topic Partition: 0 Leader: 0 Replicas: 1 Isr: 0
Topic: my-topic Partition: 1 Leader: 2 Replicas: 1 Isr: 1
增加现有主题的复制因子很容易。需要在自定义重新分配json文件中指定额外的副本,并将其与--execute选项一起使用
创建increase-replication-factor.json
{"version":1,
"partitions":[
{"topic":"my-topic","partition":0,"replicas":[0,1]},
{"topic":"my-topic","partition":1,"replicas":[0,1]}
]}
执行以下命令
kafka-reassign-partitions --zookeeper localhost:2181 --reassignment-json-file increase-replication-factor.json --execute
您可以使用以下命令验证复制副本
kafka-topics --zookeeper localhost:2181 --topic my-topic --describe
Topic: my-topic Partition: 0 Leader: 0 Replicas: 0,1 Isr: 0,1
Topic: my-topic Partition: 1 Leader: 1 Replicas: 0,1 Isr: 0,1
我建议您通过以下链接在两个分区上平均地重新分配数据
希望它能对您有所帮助。现在您要迁移到一个有两个kafka代理的集群,那么您应该使用以下命令将分区数量增加到两个
kafka-topics --topic my-topic --alter --partitions 2 --zookeeper zoo1
#观察分区数为2且RF:1的分区
kafka-topics --topic my-topic --describe --zookeeper zoo1
Topic:my-topic PartitionCount:2 ReplicationFactor:1 Configs:
Topic: my-topic Partition: 0 Leader: 0 Replicas: 1 Isr: 0
Topic: my-topic Partition: 1 Leader: 2 Replicas: 1 Isr: 1
增加现有主题的复制因子很容易。需要在自定义重新分配json文件中指定额外的副本,并将其与--execute选项一起使用
创建increase-replication-factor.json
{"version":1,
"partitions":[
{"topic":"my-topic","partition":0,"replicas":[0,1]},
{"topic":"my-topic","partition":1,"replicas":[0,1]}
]}
执行以下命令
kafka-reassign-partitions --zookeeper localhost:2181 --reassignment-json-file increase-replication-factor.json --execute
您可以使用以下命令验证复制副本
kafka-topics --zookeeper localhost:2181 --topic my-topic --describe
Topic: my-topic Partition: 0 Leader: 0 Replicas: 0,1 Isr: 0,1
Topic: my-topic Partition: 1 Leader: 1 Replicas: 0,1 Isr: 0,1
我建议您通过以下链接在两个分区上平均地重新分配数据
希望对你有帮助