Kafka Broker在docker重新启动后找不到群集ID并创建新的ID

问题描述 投票:0回答:1

我已经用kafka经纪人和zookeeper创建了docker,以运行脚本启动它。如果我重新启动,它将正常启动并运行正常(Windows-> WSL->两个tmux窗口,一个会话)。如果我关闭kafka或zookeeper并再次启动它,它将正常连接。

当我停止docker容器(docker stop my_kafka_container)时出现问题。然后,我从脚本./run_docker开始。在开始之前的那个脚本中,我删除了旧容器docker rm my_kafka_container,然后进行docker run。

Zookeeper正常启动,并且在文件meta.properties中,它具有先前启动时的旧集群ID,但是由于某些原因,kafka代理无法通过znode cluster / id找到该ID,并创建了一个新的ID,该ID不是存储在meta中的ID。属性。我得到

  ERROR Fatal error during KafkaServer startup. Prepare to shutdown (kafka.server.KafkaServer)
kafka.common.InconsistentClusterIdException: The Cluster ID m1Ze6AjGRwqarkcxJscgyQ doesn't match stored clusterId Some(1TGYcbFuRXa4Lqojs4B9Hw) in meta.properties. The broker is trying to join the wrong cluster. Configured zookeeper.connect may be wrong.
        at kafka.server.KafkaServer.startup(KafkaServer.scala:220)
        at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:44)
        at kafka.Kafka$.main(Kafka.scala:84)
        at kafka.Kafka.main(Kafka.scala)
[2020-01-04 15:58:43,303] INFO shutting down (kafka.server.KafkaServer)

如何避免代理更改群集ID?

docker apache-kafka apache-zookeeper
1个回答
0
投票

要解决此问题:

  1. 只需将所有创建(或生成)的日志/数据文件删除到zookeeper和kafka中。
  2. Run Zookeper
  3. Run Kafka

这对我有用,但是我无法解释为什么...尝试一下并告诉我。

希望这项工作为您提供=)

© www.soinside.com 2019 - 2024. All rights reserved.