datanode节点磁盘数据均衡

     apache hadoop3.x后新增了节点磁盘数据均衡功能,cdh在5.8后已加入该功能。在没有该功能时,我们一般都会通过写盘策略来保证均衡,目前Hadoop支持两种volume选择策略:round-robin 和 available space,我们可以通过 dfs.datanode.fsdataset.volume.choosing.policy 参数来设置。

  在cdh中启用磁盘均衡功能:

      在cm管理台,hdfs配置中加入如下配置:

dfs.disk.balancer.enabled=true

dfs.disk.balancer.max.disk.throughputInMBperSec=100

dfs.disk.balancer.plan.threshold.percent=2

dfs.disk.balancer.block.tolerance.percent=5

保存,重启datanode节点。

执行平衡操作:

生成平衡计划(hadoop1为主机名)

hdfs diskbalancer -plan hadoop1

执行平衡计划

hdfs diskbalancer -execute /system/diskbalancer/hadoop1.plan.json

查看执行状态

hdfs diskbalancer -query hadoop1

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
HDFS的DataNode节点之间的数据均衡指的是在HDFS集群中,不同的DataNode节点存储的数据量不一致。这可能导致某些节点负载过重,而其他节点负载较轻。 导致数据均衡的主要原因有以下几点: 1. 初始复制:当数据进入HDFS时,会将其初始复制到不同的DataNode节点。由于网络延迟或节点性能差异等原因,可能导致某些节点复制的数据过多,而其他节点复制的数据较少。 2. 数据块移动:当节点故障或离线时,HDFS会将其上存储的数据块移动到其他健康的节点上。这个过程可能导致一些节点存储的数据块数量过多,而其他节点数据块较少。 为了解决数据均衡的问题,HDFS采取了一些策略: 1. 副本平衡:HDFS会定期检查集群中各个节点上的数据块数量,并采取副本平衡的措施。这意味着将数据块从负载过重的节点移动到负载较轻的节点上,以实现数据均衡。 2. 块调度:HDFS的块调度器会根据各个节点上的剩余存储空间以及网络带宽等因素,决定将新的数据块复制到哪些节点上,以实现负载均衡。 3. HDFS管理员操作:HDFS管理员可以手动干预,将一些数据块从负载过重的节点移动到其他节点上,以实现数据均衡。 综上所述,数据均衡是HDFS集群中的一个常见问题。通过副本平衡、块调度和管理员操作等策略,HDFS可以实现数据均衡分布,提高数据的可靠性和性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值