在我为解决此问题所做的步骤下方:
.\bin\windows\kafka-server-start.bat .\config\server.properties
另请注意,我的操作系统是 Windows
在第二步发生错误:
ERROR KafkaServer 启动期间的致命错误。准备关闭 (kafka.server.KafkaServer) kafka.common.InconsistentClusterIdException:集群 ID Reu8ClK3TTywPiNLIQIm1w 与 meta.properties 中存储的 clusterId Some(BaPSk1bCSsKFxQQ4717R6Q) 不匹配。代理正在尝试加入错误的集群。配置的zookeeper.connect 可能是错误的。 在 kafka.server.KafkaServer.startup(KafkaServer.scala:220) 在 kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:44) 在 kafka.Kafka$.main(Kafka.scala:84) 在 kafka.Kafka.main (Kafka.scala)
当我触发.\bin\windows\kafka-server-start.bat .\config\server.properties
zookeeper控制台返回时:
信息 [SyncThread:0:FileTxnLog@216] - 创建新的日志文件:log.1
如何解决此问题以使 kafka 运行?
编辑按照这些步骤查看此答案解决了我的问题
是否有 cli 或一些命令行,我可以用它来查找 zookeeper 集群状态。基本上我想知道如何加入集群或哪些节点充当领导者。
任何指针都会有所帮助。
在stackoverflow中看到这个问题:https : //stackoverflow.com/questions/16669104/how-to-get-current-zookeeper-clusters-member-server-list,但没有帮助
只是为了澄清一些事情:我说的是包含 stdout 和 stderr 消息的进程日志文件。
这是我的 systemd 单元文件:
[Unit]
Description=Apache Kafka server
Documentation=http://kafka.apache.org
Requires=network.target remote-fs.target
After=network.target remote-fs.target
[Service]
Type=simple
PIDFile=/var/run/kafka.pid
User=kafka
Group=kafka
Environment="JAVA_HOME=/usr/lib/jvm/jre"
Environment="KAFKA_LOG4J_OPTS=-Dlog4j.configuration=file:/var/log/kafka"
ExecStart=/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
ExecStop=/opt/kafka/bin/kafka-server-stop.sh
Restart=on-failure
SyslogIdentifier=kafka
[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)
请注意,我添加了 KAFKA_LOG4J_OPTS 环境变量。
然而,这似乎没有任何作用。这是我尝试启动服务时的输出:
Feb 11 00:55:30 kafka01 kafka[4047]: mkdir: cannot create directory ‘/opt/kafka/bin/../logs’: Permission denied
Feb 11 00:55:30 kafka01 kafka[4047]: OpenJDK 64-Bit Server VM warning: Cannot open file /opt/kafka/bin/../logs/kafkaServer-gc.log due to No such file or directory
Feb 11 00:55:30 kafka01 kafka[4047]: log4j:WARN No appenders could be found for …
Run Code Online (Sandbox Code Playgroud) 我有zookeeper.version=3.4.10,我看到:
https://issues.apache.org/jira/browse/ZOOKEEPER-2307
然而,该问题仍处于悬而未决的状态。问题的出现是因为磁盘空间已满。现在我删除了一些日志并释放了空间,我想启动zookeeper,但由于此错误它不会启动:
[2019-01-22 09:07:32,646] ERROR Unable to load database on disk
(org.apache.zookeeper.server.quorum.QuorumPeer)
java.io.IOException: The accepted epoch, 13 is less than the current epoch,
14
at org.apache.zookeeper.server.quorum.QuorumPeer.loadDataBase(QuorumPeer.java:645)
at org.apache.zookeeper.server.quorum.QuorumPeer.start(QuorumPeer.java:591)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:164)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:111)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78)
[2019-01-22 09:07:32,648] ERROR Unexpected exception, exiting abnormally
(org.apache.zookeeper.server.quorum.QuorumPeerMain)
java.lang.RuntimeException: Unable to run quorum server
at org.apache.zookeeper.server.quorum.QuorumPeer.loadDataBase(QuorumPeer.java:649)
at org.apache.zookeeper.server.quorum.QuorumPeer.start(QuorumPeer.java:591)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:164)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:111)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78)
Caused by: java.io.IOException: The accepted epoch, 13 is less than the current epoch, 14
at org.apache.zookeeper.server.quorum.QuorumPeer.loadDataBase(QuorumPeer.java:645)
... 4 more
Run Code Online (Sandbox Code Playgroud)
我是否必须修补它(我不确定是否已准备好修补程序),或者我可以修复动物园管理员数据(例如,使其以某种方式接受新纪元)并继续使用相同的版本吗?