Hadoop 解除 NameNode is in safe mode

運行Hadoop程序時,有時候會報如下錯誤: 
org.apache.hadoop.dfs.SafeModeException: Cannot delete /user/hadoop/input. Name node is in safe mode 
這個錯誤應該還滿常見的吧(至少我運行的時候是這樣的) 

那咱們來分析下這個錯誤,從字面上來理解: 
Name node is in safe mode 

說明Hadoop的NameNode處在安全模式下。 
那什麼是Hadoop的安全模式呢? 
在分佈式文件系統啓動的時候,開始的時候會有安全模式,當分佈式文件系統處於安全模式的狀況下,文件系統中的內容不容許修改也不容許刪除,直到安全模式結束。安全模式主要是爲了系統啓動的時候檢查各個DataNode上數據塊的有效性,同時根據策略必要的複製或者刪除部分數據塊。運行期經過命令也能夠進入安全模式。在實踐過程當中,系統啓動的時候去修改和刪除文件也會有安全模式不容許修改的出錯提示,只須要等待一下子便可。 

如今就清楚了,那如今要解決這個問題,我想讓Hadoop不處在safe mode 模式下,能不能不用等,直接解決呢? 
答案是能夠的,只要在Hadoop的目錄下輸入: 
bin/hadoop dfsadmin -safemode leave 

也就是關閉Hadoop的安全模式,這樣問題就解決了。node

相關文章
相關標籤/搜索