赞
踩
不同于全局不均衡,有些时候仅仅是一个node上的disk数据不均衡。
全局不均衡使用的是balancer方案进行平衡
Diskbalancer默认是开启的
hdfs diskbalancer -plan dn
hdfs diskbalancer -plan 127.0.0.1
如果需要进行diskBalancer,那么会生成两个json文件,nodename.before.json 以及nodename.plan.json
日志显示,namenode需要通过rpc端口和datanode通信,调用方法planner.GreedyPlanner
hdfs diskbalancer -execute /system/diskbalancer/nodename.plan.json
异步执行的过程,可以通过query查询进度
可以指定参数 -skipDateCheck
hdfs diskbalancer -query nodename.mycluster.com
query得到的结果如下
"sourcePath" : "/data/disk2/hdfs/dn",
"destPath" : "/data/disk3/hdfs/dn",
"workItem" :
"startTime" : 1466575335493,
"secondsElapsed" : 16486,
"bytesToCopy" : 181242049353,
"bytesCopied" : 172655116288,
"errorCount" : 0,
"errMsg" : null,
"blocksCopied" : 1287,
"maxDiskErrors" : 5,
"tolerancePercent" : 10,
"bandwidth" : 10
hdfs diskbalancer -cancel /system/diskbalancer/nodename.plan.json
移动一半的数据块怎么处理?启动Datanode时检测状态自恢复吗?
指定node的迁移报告,或者是找到top受益的节点
hdfs diskbalancer -fs http://namenode.uri -report -node <file://> | [<DataNodeID|IP|Hostname>,...]
hdfs diskbalancer -fs http://namenode.uri -report -top topnum
hdfs-site.xml
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。