ディスク容量が一定以上になったノードが unhealthy になって、クラスタからどんどん引退して困っていたんだけど、データノードを追加して hdfs balancer を実行することでなんとかなった。
基本的には Hadoopのバランサー実行中に dfs.datanode.balance.bandwidthPerSec を変える にある通りだけど、2.7 では
- start-balancer.sh は hdfs balancer に
- hadoop dfsadmin は hdfs dfsadmin に
それぞれ変わっているので、結果として
[hadoop@ip-192-0-2-1 ~]$ hdfs dfsadmin -setBalancerBandwidth $(ruby -e 'p 1024 ** 3')
Balancer bandwidth is set to 1073741824
[hadoop@ip-192-0-2-1 ~]$ hdfs balancer
...
こんな感じになる。
Source: posts/2016/hdfs-balancer.md