Ray*_*Ray 2 streaming hadoop apache-kafka
我正在尝试在我的本地机器上设置 Apache Kafka 以按照此官方指南进行试用:https : //kafka.apache.org/quickstart。
但是,当我尝试启动多个服务器时,我不断收到错误消息:“kafka.common.InconsistentBrokerIdException:Configured broker.id 2 与 meta.properties 中存储的 broker.id 0 不匹配。如果您移动了数据,请确保您配置的 broker.id 匹配。如果您打算创建新的代理,您应该删除数据目录 (log.dirs) 中的所有数据”
我完全按照指南设置参数,例如:
broker.id=1
listeners=PLAINTEXT://:9093
log.dir=/tmp/kafka-logs-1
Run Code Online (Sandbox Code Playgroud)
我不太明白为什么它不正确。我在其他网站上搜索过他们提到我需要修复 meta.properties 或 log.dirs 中的某些内容,但这些文件或目录似乎都不存在于我的计算机上。请帮帮我thx!
我通过更改 server-1.properties 中原始位置的那些变量,自己解决了这个问题。以前我在 broker.id 部分的 server-1.properties 开头设置了三个参数。然而,*.properties 文件实际上很长,并且 log.dir 在文件末尾的自己的部分中默认设置为 kafka-logs,这将覆盖我在开始时的更改并导致错误,因为在目录中/tmp/kafka-logs meta.properties 的 broker.id 为 0,对应于默认的 server.properties 设置。我们必须将日志目录设为 kafka-logs-1,以便 meta.properties 对代理也是唯一的。
顺便说一句,我花了很长时间才找到kafka-logs所在的位置。它位于 root/tmp,而不是在 kafka 库所在的文件夹中。我们应该输入 cd /tmp 来检查它。
希望这可以帮助!