我有一個hadoop集羣,它有一個master(運行namenode和jobtracker)和兩個slave(每個都運行datanode和tasktracker)。現在每當我執行Datanode,tasktracker在執行hadoop fs -put命令時死亡
hadoop fs -put localfile /user/root/tmp/input
對於4-8 GB的數據,該命令執行完美。
但是當我將數據增加到30GB時,其中一個從機死亡。正如我得到一個java.io.noRouteToHost異常,並且該命令退出失敗。我立即對該從站進行了ping,發現即使以太網連接已關閉。所以,我必須這樣做手工
ifup eth0
對奴隸再次使主機了。 我無法在這裏找出問題。我也改變了以下屬性
dfs.socket.timeout, for read timeout
dfs.datanode.socket.write.timeout, for write timeout
我增加了讀取超時到600000和寫入超時我改變爲0使它無限。請任何建議。我一直堅持這一兩天
但據我所知,「DistCp使用」用於大數據的聚類內轉移。不用於將數據從本地文件系統傳輸到HDFS。從本地FS傳輸到HDFS時,我遇到了上述問題。對不起,如果我不精確。 – Nilesh
你也可以使用它。嘗試使用這樣的東西:cluster @ tariq:〜/ hadoop-1.0.3 $ bin/hadoop distcp file:///home/cluster/pig-0.9.1/ hdfs:// localhost:9000/pig / – Tariq