2017-08-28 75 views
0

在我的3臺機器羣集上,Hadoop版本2.7.3,數據節點利用率變得相當不平衡,所以我試圖使用hdfs balancer來解決問題。但平衡器什麼都不做。每一個迭代是這樣的(請注意,我已經隱藏節點的實際IP地址):HDFS平衡器迭代全部空閒

2017年8月28日下午十二時12分50秒8 0 B 289.99 GB 10 GB

17/08/28 12時12分59秒INFO net.NetworkTopology:添加新節點:/默認機架/ [Datanode1Addr]:50010

17/08/28 12時12分59秒INFO net.NetworkTopology:添加新節點:/ default-rack/[Datanode2Addr]:50010

17/08/28 12:12:59 INFO net.NetworkTopology:添加一個新節點:/ default-rack/[Datanode3Addr]:5001 0

17/08/28 12時12分59秒INFO balancer.Balancer:2過度使用:[[Datanode1Addr]:50010:DISK,[Datanode3Addr]:50010:DISK]

17/08/28 12:12:59 INFO balancer.Balancer:1未充分利用:[[Datanode2Addr]:50010:DISK]

17/08/28 12:12:59 INFO balancer.Balancer:需要移動289.99 GB才能使集羣平衡。

17/08/28 12點12分59秒INFO balancer.Balancer:決定從[Datanode1Addr]移動10個GB字節:50010:DISK爲[Datanode2Addr]:50010:DISK

17/08/28 12:12:59 INFO balancer.Balancer:將在此迭代中移動10 GB

...沒有數據移動。

任何想法?

+0

您的複製因子設置爲? – tk421

+0

它設置爲3: dfs.replication AntsySysHack

回答

0

如果羣集中的複製因子爲3,且只有3個節點,則HDFS平衡器無法遷移數據,因爲您必須維護3個數據副本,並且HDFS不會在同一節點上覆制數據。

+0

謝謝!具有完美意義,我已將複製因子更改爲2,並帶來積極結果 – AntsySysHack