集群格式化hdfs后,在主節點運行啟動hdfs后,發現namenode啟動了,而datanode沒有啟動,在其他節點上jps后沒有datanode進程!
原因:
當我們使用hdfs namenode -format格式化namenode時,會在namenode數據文件夾中保存一個current/VERSION文件,記錄clusterID,而datanode中保存的current/VERSION文件中的clustreID的值是第一次格式化保存的clusterID,剛好有進行了一次格式化,在namenode的current/VERSION文件保存新的clusterID這樣datanode和namenode之間的ID不一致。導致上述結果!
解決:
找current/VERSION文件路徑。
namenode節點的路徑是:/解壓路徑/hadoop-2.6.0/tmp/dfs/name/current/
datanode節點的路徑是:/解壓路徑/hadoop-2.6.0/tmp/dfs/data/current/
找到VERSION后打開查看,一對比,datanode的clustreID與其他3台datanode的clustreID真的不同!
將datanode的clustreID的值改成與datanode的clustreID相同后再啟動,成功!