hadoop在多次執行下列指令:
hadoop namenode -format
sbin/start-dfs.sh
經常會出現沒有啟動datanode的情況。
執行命令:
jps發現沒有datanode執行緒。
現給出原因和解決方案
原因當我們使用hadoop namenode -format格式化namenode時,會在namenode資料資料夾(這個資料夾為自己配置檔案中dfs.name.dir的路徑)中儲存乙個current/version檔案,記錄clusterid,datanode中儲存的current/version檔案中的clustreid的值是上一次格式化儲存的clusterid,這樣,datanode和namenode之間的id不一致。
解決方法
第一種:如果dfs資料夾中沒有重要的資料,那麼刪除dfs資料夾,再重新執行下列指令: (刪除所有節點下的dfs資料夾,dfs目錄在$/tmp/)
hadoop namenode -format
sbin/start-dfs.sh
第二種:如果dfs檔案中有重要的資料,那麼在dfs/name目錄下找到乙個current/version檔案,記錄clusterid並複製。然後dfs/data目錄下找到乙個current/version檔案,將其中clustreid的值替換成剛剛複製的clusterid的值即可;
總結其實,每次執行結束hadoop後,都應該關閉hadoop.
sbin/stop-dfs.sh
下次想重新執行hadoop,不用再格式化namenode,直接啟動hadoop即可
sbin/start-dfs.sh
#hadoop
解決Hadoop啟動時,沒有啟動datanode
hadoop在多次執行下列指令 hadoop namenode format sbin start dfs.sh經常會出現沒有啟動datanode的情況。執行命令 jps shell 命令 發現沒有datanode執行緒。現給出原因和解決方案 當我們使用hadoop namenode format格...
Hadoop集群開啟後無法啟動datanode
檢視了網上的方法,大家的解決方法都是比較一致的,但是描述的不是很清楚,對我這種初學者有些不友好呀 解決方法 1.刪除集群中所有節點的hadoop解壓目錄下的data目錄以及logs目錄 刪除所有節點,我有三個節點,在scp 安全複製 之前,沒有把最初的節點的hadoop解壓目錄下的data目錄和lo...
hadoop啟動沒有nodemanager
在正常啟動hadoop的時候系統沒有報錯,但是jps檢視程序的時候發現缺少了nodemanager,檢視後台的日誌程序 問題 發現如下錯誤 fatal org.apache.hadoop.yarn.server.nodemanager.nodemana ger error starting node...