У нас есть кластер kafka с 3 узлами, каждый kafka включает сервер zookeeper и реестр схем
Мы получаем следующую ошибку на одном из серверов zookeeper
[2019-11-12 07:44:20,719] ERROR Unable to load database on disk (org.apache.zookeeper.server.quorum.QuorumPeer)
java.io.IOException: Unreasonable length = 198238896
at org.apache.jute.BinaryInputArchive.checkLength(BinaryInputArchive.java:127)
at org.apache.jute.BinaryInputArchive.readBuffer(BinaryInputArchive.java:92)
at org.apache.zookeeper.server.persistence.Util.readTxnBytes(Util.java:233)
at org.apache.zookeeper.server.persistence.FileTxnLog$FileTxnIterator.next(FileTxnLog.java:629)
at org.apache.zookeeper.server.persistence.FileTxnSnapLog.restore(FileTxnSnapLog.java:166)
at org.apache.zookeeper.server.ZKDatabase.loadDataBase(ZKDatabase.java:223)
at org.apache.zookeeper.server.quorum.QuorumPeer.loadDataBase(QuorumPeer.java:601)
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)
кажется, что некоторые файлы снимков в папке /opt/confluent/zookeeper/data/version-2
повреждены
в папке version-2
, у нас есть следующие файлы примеров
many files as log.3000667b5
many files as snapshot.200014247
one file - acceptedEpoch
one file – currentEpoch
так что вопрос - как запустить сервер zookeeper
Насколько я понимаю, у нас есть два варианта, но я не уверен в них
1) один вариант - переехать version-2
папку в другое место как version-2_backup
и создайте новую папку - version-2
под /opt/confluent/zookeeper/data
затем запустите сервер zookeeper и надейтесь, что снимок будет скопирован с другого активного активного сервера zookeeper?
2) второй вариант - возможно переехать version-2
папку в другое место как version-2_backup
, создайте новую папку как - version-2
и скопируйте весь контент из version-2
от хорошей машины к плохому серверу zookeeper и version-2
, но я не уверен, что это правильный вариант?