前提,hadoop正常啓動,jps查看,所有都正常。
1.live node 爲0
Answer:
stop-all後。刪除dfs.namenode.name.dir和dfs.namenode.data.dir設置的兩個文件夾下的內容。重新formate,start。
2.livenode 的個數和實際啓動的datanode的個數不一致問題。
Answer:
所有slave中,配置core-site.xml文件中的fs.default.name中不應改寫localhost。要寫namenode的實際ip。
3.eclipse中一直提示 Call From xxx to xxx failed on connect
Answer:
run configration,檢查run configuration的arguments的值。要與core-site.xml中的fs.default.name的值設置的ip一致。(一個是實際ip、一個是localhost也不行。)
4.DFS location中顯示文件夾個數爲0
(1)本來就沒有文件.50070網頁上查看dfs filesystem,如果報錯,還是live node 問題。
(2)有文件,還是因爲live node問題。livenode問題解決後,刷新,就可以看到文件夾了。
顯示爲0時,可以嘗試upload 文件,假如發現上傳的文件的大小都是0.0b。應該就是有問題的。
5.網頁查看各類信息
master's ip:50070 dfs
master's ip:9001 secondaryNameNode status
master's ip:8088 cluster
6.當jps查看到datanode無法啓動:
Answer:
1. /etc/host 文件是否配置正確。我在試驗過程中發現,127.0.0.1 後面只能加上locahost,假如寫成12.0.0.1 localhost.localdomain,datanode都無法查看到。還有就是,下面寫各個slave的ip時,不能光寫ip,ip後面要加上name(我的是ip localhost.localdomain)
7.50070 無法查看到任務進度(程序能正常運行,job顯示local)
Answer:
檢查各個slave節點是否正常啓動nodemanager。沒啓動的話,檢查host 中ip問題;在yarn-site.xml嘗試加入
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>
“master”換成master的ip。
運行測試程序提示connection refused --> 去掉所有hosts文件中127.0.0.1那一行試試。
(我目前的情況是,eclipse中只能local job,打包jar命令行運行纔會集羣。而且上面的connection refused第一次沒出現後,後面又出現了。)
(個人遇到的問題總結,僅供參考)
在出現問題時,先查看一下相關的log文件。這樣排錯會稍微有目標點。