Red*_*dra 7 apache-kafka apache-kafka-streams
我有两个代理kafka 0.10.2.0 cluster.Replication factor是2。我正在对此Kafka运行1.0.0 kafka流应用程序。在我的kafka流应用程序中,生产者配置具有retries = 10 and retry.backoff.ms = 100
运行几分钟后,我观察到Kakfa server.log中的以下日志。由于此Kafka流应用程序引发'NOT_LEADER_FOR_PARTITION'异常。
可能是什么原因?请帮我。
[2017-12-12 10:26:02,583] ERROR [ReplicaFetcherThread-0-1], Error for partition [__consumer_offsets,22] to broker 1:org.apache.kafka.common.errors.NotLeaderForPartitionException: This server is not the leader for that topic-partition. (kafka.server.ReplicaFetcherThread)
Run Code Online (Sandbox Code Playgroud)
每个主题由一个或多个经纪人提供服务-一个是领导者,其余的经纪人是跟随者。
生产者需要向领导者经纪人发送新消息,领导者经纪人将数据内部复制到所有关注者。
我假设您的生产者客户端未连接到正确的代理,而是连接到关注者而不是领导者,并且该关注者拒绝了您的发送请求。
尝试跑步 ./kafka-topics.sh --zookeeper localhost:2181 --topic your_topic --describe
Topic:your_topic PartitionCount:3 ReplicationFactor:1 Configs:retention.ms=14400000
Topic: your_topic Partition: 0 Leader: 2 Replicas: 2 Isr: 2
Topic: your_topic Partition: 1 Leader: 0 Replicas: 0 Isr: 0
Topic: your_topic Partition: 2 Leader: 1 Replicas: 1 Isr: 1
Run Code Online (Sandbox Code Playgroud)
在此示例中,您可以看到your_topic
有3个分区,这意味着所有3个经纪人都是该主题的负责人,每个人都位于不同的分区上,st broker 2
是的领导者partition 0
,broker 0
而broker 1
则是的跟随者partition 0
。
归档时间: |
|
查看次数: |
20314 次 |
最近记录: |