【kafka】Kafka leader -1

文章目录

  • 1.概述
  • 2. 问题现象
  • 3.解决方案
  • 4.题外话
  • 5.威胁案例
  • 6.正解

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

6.正解

【Kafka】Kafka Leader:none ISR 为空 消费超时

你可能感兴趣的:(kafka,leader,-1,isr,none)