2015-04-01 3 views
2

Я настроил 3 журнала, скажем, JN1, JN2, JN3. Каждый из них сохраняет журнал редактирования в/tmp/hadoop/journalnode/mycluster ...Как восстановить узел журнала HDFS?

Основываясь на этом, я начал свой namenode, вторичный namenode и связку datanode. Система работает хорошо до одного дня JN2 и JN3 мертвы. Кроме того, диски повреждены.

Затем я купил новые диски и перезапустил JN2 и JN3. Плохо, что это больше не работает.

Он держит жалуясь

org.apache.hadoop.hdfs.qjournal.protocol.JournalNotFormattedException: Journal Storage Directory /tmp/hadoop/dfs/journalnode/mycluster not formatted 
     at org.apache.hadoop.hdfs.qjournal.server.Journal.checkFormatted(Journal.java:457) 
     at org.apache.hadoop.hdfs.qjournal.server.Journal.getEditLogManifest(Journal.java:640) 
     at org.apache.hadoop.hdfs.qjournal.server.JournalNodeRpcServer.getEditLogManifest(JournalNodeRpcServer.java:185) 
     at org.apache.hadoop.hdfs.qjournal.protocolPB.QJournalProtocolServerSideTranslatorPB.getEditLogManifest(QJournalProtocolServerSideTranslatorPB.java:224) 
     at org.apache.hadoop.hdfs.qjournal.protocol.QJournalProtocolProtos$QJournalProtocolService$2.callBlockingMethod(QJournalProtocolProtos.java:25431) 
     at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:585) 
     at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:928) 
     at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2013) 
     at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2009) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at javax.security.auth.Subject.doAs(Subject.java:422) 
     at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1614) 
     at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2007) 

Есть в любом случае, чтобы восстановить JN2 и JN3 от единственного живого JN1?

Действительно оцените все возможные решения!

Спасибо, Miles

ответ

0

Вопрос пошло после того, как я дублировал единственный сохранившийся/TMP/Hadoop/journalnode/mycluster к JN2 и JN3.

2

Я смог исправить проблемы, создав отсутствующий каталог на хосте журнала, где namenode будет писать свои «файлы редактирования».

Убедитесь, что версия файла создается, в противном случае вы получите org.apache.hadoop.hdfs.qjournal.protocol.JournalNotFormattedException.

или скопировать файл версии в каталоге

Смежные вопросы