具體配置:網上一堆,我說一下個人問題好了!html
「徹底」 分佈式集羣java
注意地方有三點:node
1.你的"master" dfs目錄中的某個Id不一致,具體位置,有空我再找找。(通過我找了一下,忘了哪篇文章說過apache
跟${HADOOP_TMP}/dfs/name/current的VERSION有關,分佈式
我查看了一下,正常的集羣oop
master的VERSIONspa
cluster1的VERSION.net
cluster2的VERSION3d
對比一下後,發現只有clusterID是同樣的。日誌
我在dfs還在啓動狀態,再執行bin/hdfs namenode -format,發現
clusterID發生變化了,而集羣下面的cluster的clusterID沒有變化。
因此要更改nameNode的clusterID的話,記得要重啓dfs,否則你本身玩泥巴。
)
(爲何不一致,這得問你了,你「bin/hdfs namenode -format」 格式化時,看到是否覆蓋.
Re-format filesystem in Storage Directory /tmp/hadoop-root/dfs/name ? (Y or N)
這樣的字樣,你又傻傻的敲了:Y,那ID就天然變化了。
)
我簡單又粗暴的方法的,直接刪掉hadoop中的數據。(反正我本身玩而已)
若是你的core-site.xml和hdfs-site.xml,沒有配置數據目錄路徑的話,
數據都在/tmp/hadoop-root底下,本身看着辦!
(若是要刪的話,最好把連同的cluster「集羣數據」一塊兒刪除,否則在http://master-node:50070/dfshealth.html#tab-datanode是沒法看到集羣的cluster的datanode)
而後,
再./sbin/start-dfs.sh ,若是能順利啓動的話,就在master,cluster分別 查看hdfs的的目錄
bin/hdfs dfs -ls / (若是都沒有問題的話。再去看http://master-node:50070/dfshealth.html#tab-datanode是沒法看到集羣的cluster的datanode)
2./etc/hosts
假如配置錯了
會出現
#127.0.0.1 master-node
#::1 master-node
相似的。
特別注意你的master的hosts最好與你cluster同樣!
其實看 格式化時的日誌,都能知道集羣子節點是否成功
bin/hdfs namenode -format
看這句SHUTDOWN_MSG: Shutting down NameNode at "你的masterIP"
3.你的虛擬機問題。若是你的cluster是clone 「master的」,也許能集羣起來的。
可是若是你的cluster是clone 「cluster」,不知道你可否啓動,反正我是集羣不了的。(由於我有一個是clone 「master」 ,另外一個是clone "cluster",也不知道是否clone操做出問題,反正個人clone "cluster"死活集羣不到,一氣之下,刪了clone "cluster",從新clone 「master」, 而後,「就能夠」)
至於網上的不少篇拼命讓你「格式化namenode」的文章,只能說一句:我操。
(其實我是由於在看哪裏都沒有log相關信息,才搜索"hadoop2x Call From",然而
纔看http://blog.csdn.net/wqetfg/article/details/50715541,才能解決
)