您的位置:首页 > 运维架构

Hadoop之 Balancer平衡速度

2018-02-01 10:37 911 查看
1. dfs.datanode.max.transfer.threads

修改dfs.datanode.max.transfer.threads=4096 (如果运行HBase的话建议为16384),

指定用于在DataNode间传输block数据的最大线程数,老版本的对应参数为dfs.datanode.max.xcievers。

2. dfs.datanode.balance.bandwidthPerSec

修改dfs.datanode.balance.bandwidthPerSec=52428800,指定DataNode用于balancer的带宽为50MB,

这个根据情况而定,如果交换机性能好点的,完全可以设定100MB,单位是Byte,

如果机器的网卡和交换机的带宽有限,可以适当降低该速度,比如10MB,默认是1048576(1MB)。

hdfs dfsadmin-setBalancerBandwidth 52428800

3. dfs.balancer.block-move.timeout

以毫秒为单位移动的最大时间。如果这个设置大于0,平衡器将停止等待一个块移动完成。在典型的集群中,3到5分钟的超时是合理的。

如果超时发生在很大比例的块移动中,则需要增加。它也可能是太多的工作被分派,并且许多节点的带宽总是超过带宽限制。

在这种情况下,可能需要调整其他平衡器参数。默认情况下,它是禁用的。

4. dfs.balancer.max-no-move-interval

如果这个指定的时间量已经过去,并且没有一个块被移出源DataNode,那么将会有更多的努力在当前的平衡迭代中移出这个DataNode的块。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: