啟動Hadoop時候datanode沒有啟動的原因及解決方案


  • 有時候我們start-dfs.sh啟動了hadoop但是發現datanode進程不存在

一、原因

當我們使用hadoop namenode -format格式化namenode時,會在namenode數據文件夾(這個文件夾為自己配置文件中dfs.name.dir的路徑)中保存一個current/VERSION文件,記錄clusterID,datanode中保存的current/VERSION文件中的clustreID的值是上一次格式化保存的clusterID,這樣,datanode和namenode之間的ID不一致。

二、解決方法

  • 第一種:如果dfs文件夾中沒有重要的數據,那么刪除dfs文件夾,再重新運行下列指令: (刪除節點下的dfs文件夾,為自己配置文件中dfs.name.dir的路徑)

      

  • 第二種:如果dfs文件中有重要的數據,那么在dfs/name目錄下找到一個current/VERSION文件,記錄clusterID並復制。然后dfs/data目錄下找到一個current/VERSION文件,將其中clustreID的值替換成剛剛復制的clusterID的值即可;

  

三、總結

其實,每次運行結束Hadoop后,都應該關閉Hadoop.   stop-dfs.sh

下次想重新運行Hadoop,不用再格式化namenode,直接啟動Hadoop即可  start-dfs.sh

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM