1.概述
转载:https://blog.csdn.net/u013933879/article/details/90055546
参考:Kafka无法消费!?究竟是bug的“沦陷”还是配置的“扭曲”?
2. 问题现象
在只有一个副本时,出现了broker节点丢失,因此导致了leader -1的情况

3.解决方案
直接修改zookeeper中该分区对应的state
set /brokers/topics/test_add_replication/partitions/1/state {"controller_epoch":140,"leader":1002,"version":1,"leader_epoch":12,"isr":[1002]}
稍等片刻,重新查看topic状态,即可发现leader已变更为1002
4.题外话
查看toipic状态命令
./kafka-topics.sh --describe --zookeeper localhost:2181 --topic test_add_rep
lication
查看kafka集群brokers命令
zookeeper/bin/zkCli.sh
ls /brokers/ids
修改topic的副本数量
PS:非常不建议只有1个副本
创建一个json文件,内容如下:
{
"version": 1,
"partitions": [
{
"topic": "test_add_replication",
"partition": 0,
"replicas": [
1002,
1004,
1001
]
},
{
"topic": "test_add_replication",
"partition": 1,
"replicas": [
1002,
1004,
1001
]
},
{
"topic": "test_add_replication",
"partition": 2,
"replicas": [
1002,
1004,
1001
]
},
{
"topic": "test_add_replication",
"partition": 3,
"replicas": [
1002,
1004,
1001
]
},
{
"topic": "test_add_replication",
"partition": 4,
"replicas": [
1002,
1004,
1001
]
}
]
}
执行修改命令
./kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-jso
n-file /tmp/rep.json --execute
修改完成后稍等片刻即可生效
5.威胁案例
【kafka】flink kafka NullPointerException Timeout position partition could be determined
本文探讨了当Kafka broker丢失导致leader显示为-1的问题,解析了问题现象及解决方案,包括修改Zookeeper中分区状态,并提醒保持副本数量大于1以避免风险。还分享了相关威胁案例和正确做法。

2304

被折叠的 条评论
为什么被折叠?



