2014-11-13 2 views
3

Я развертываю hadoop как кластер нескольких узлов (распределенный режим). Но каждый узел данных имеет разные идентификаторы кластера.Hadoop Multinode cluster. Узел данных не работает должным образом

На SLAVE1,

java.io.IOException: Incompatible clusterIDs in /home/pushuser1/hadoop/tmp/dfs/data: namenode clusterID = CID-c72a7d30-ec64-4e4f-9a80-e6f9b6b1d78c; datanode clusterID = CID-2ecca585-6672-476e-9931-4cfef9946c3b 

На slave2,

java.io.IOException: Incompatible clusterIDs in /home/pushuser1/hadoop/tmp/dfs/data: namenode clusterID = CID-c72a7d30-ec64-4e4f-9a80-e6f9b6b1d78c; datanode clusterID = CID-e24b0548-2d8d-4aa4-9b8c-a336193c006e 

Я следовал этой ссылке, а Datanode not starts correctly но я не знаю, какой кластер идентификатор я должен выбрать. Если я выберу любой, тогда узел данных начнется на этом компьютере, но не на другом. А также когда я форматирую namenode с помощью базовой команды (hasoop namenode - format), запускаются datanodes на каждом подчиненном узле, но затем namenode на главной машине не запускается.

ответ

9

Кластерные идентификаторы datanodes и namenodes должны совпадать, тогда только datanodes могут эффективно взаимодействовать с namenode. Если вы создадите формат namenode, новый кластерный идентификатор будет назначен для namenodes, то ClusterID в datanodes не будут совпадать.

Вы можете найти VERSION файлы в/главная/pushuser1/Hadoop/TMP/ДПП/данных/ток/(каталог DataNode), а также каталог NameNode (/ дом/pushuser1/Hadoop/TMP/ДПП/имя/current/на основе значения, указанного вами для dfs.namenode.name.dir), который содержит ClusterID.

Если вы готовы к формату вашего HDFS NameNode, Прекратить все услуги HDFS, очистить все файлы в следующих каталогах

rm -rf /home/pushuser1/hadoop/tmp/dfs/data/* (Need to execute on all data nodes) 
rm -rf /home/pushuser1/hadoop/tmp/dfs/name/* 

и HDFS формата снова (hadoop namenode -format)

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