­

hadoop上傳文件失敗解決辦法

hadoop上傳文件到web端hdfs顯示hadoop could only be replicated to 0 nodes instead of 1解決辦法

  • 錯誤狀態:在hadoop-2.7.2目錄下執行bin/hdfs dfs -put 被執行文件 目標文件夾報錯後解決!

image-20201001175257639

  • 分析:這是我啟動DataNode後又格式化NameNode導致二者集群id不一樣即二者無法形成關聯就上傳不了文件

image-20201001175810951

第一步:在hadoop-2.7.2文件夾下輸入:cd data/tmp/dfs

第二步:ls -l 查看該目錄下有兩個目錄一個是data一個是name 先cd data/current

image-20201001180907487

第三步:輸入cat VERSION查看data/current/下的集群ID

image-20201001181233746

第四步:去查看name/current/中的集群id發現二者不一樣或者看不到data下有任何數據(原因:之前執行了sbin/hadoop-daemon.sh stop datanode清除data數據後沒有再次啟動DataNode導致的)

解決辦法:

第一步:在hadoop-2.7.2文件夾下輸入:sbin/hadoop-daemon.sh stop namenode再次輸入:sbin/hadoop-daemon.sh stop datanode

第二步:格式化namenode—-在hadoop-2.7.2文件夾下輸入:bin/hdfs namenode -format

第三步:啟動Namenode—-在hadoop-2.7.2文件夾下輸入:sbin/hadoop-daemon.sh start namenode

第四步:啟動DataNode—-在hadoop-2.7.2文件夾下輸入:sbin/hadoop-daemon.sh start datanode

第五步:在hadoop-2.7.2文件夾下輸入:jps(jak安裝後才會有這個命令)查看下圖表示二者都啟動起來了。

image-20201001182231731

第六步:開啟web下的hdfs後創建文件夾user/hu/input

image-20201001182507407

第六步:再次上傳就成功了

在上傳的目標文件夾下執行:bin/hdfs dfs -put 目標文件 /user/hu/input上傳後去web端查看錶示成功!

Tags: