TDH 4.3 如何执行 HDFS 数据 balance

内容纲要

概要描述

集群使用一段时间,会遇到不同 datanode 节点之间磁盘使用率相差较大的情况;或者集群扩容数据节点以后,也会面临新老节点磁盘使用率相差较大的情况。
本文介绍一种方法,可以进行数据 rebalance,实现 datanode 节点使用率较为平均的效果。

环境:TDH4.3

详细说明

1、认证

访问任意一台部署了 datanode 服务的服务器,然后执行如下命令:

# 操作需要使用hdfs用户,所以首先kinit安全
kinit hdfs/$(hostname) -kt /etc/hdfs1/hdfs.keytab
2、设置 balance 带宽

执行下面命令,设置 balance 时候的带宽

hdfs dfsadmin -setBalancerBandwidth 52428800
# 这里的 52428800 为 balance 时的带宽 50M (50*1024*1024),可以根据节点实际的带宽进行调整,建议保持默认,如果设置太大会影响日常业务,
# 一般 1000m 的网卡,带宽建议设置为 50m
# 默认参数为 1048576(1M),balance 结束后及时调整回来
3、执行 balance
nohup hdfs balancer -threshold 10 &>/tmp/rb2020.log
# 这里的 threshold 10 为 datanode 节点间磁盘空间使用率相差阈值,区间选择:0~100,意思是节点间磁盘空间使用率相差超过 10% 时才会执行 balance;
# 建议 nohup 放在后台执行,并将执行过程日志重定向到日志中,方便查看

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。