HDFS均衡操作的启动和退出方法

发布时间:2021-08-02 16:35:03 作者:chen
来源:亿速云 阅读:192

这篇文章主要介绍“HDFS均衡操作的启动和退出方法”,在日常操作中,相信很多人在HDFS均衡操作的启动和退出方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”HDFS均衡操作的启动和退出方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

HDFS均衡操作的启动

    使用HDFS的balancer命令,可以配置一个Threshold来平衡每一个DataNode磁盘利用率。命令如下:

start-balancer.sh -threshold 8

运行之后,会有Balancer进程出现:

HDFS均衡操作的启动和退出方法

上述命令设置了Threshold为8%,那么执行balancer命令的时候,首先统计所有DataNode的磁盘利用率的均值,然后判断如果某一个DataNode的磁盘利用率超过这个均值Threshold,那么将会把这个DataNode的block转移到磁盘利用率低的DataNode,这对于新节点的加入来说十分有用。Threshold的值为1到100之间,不显示的进行参数设置的话,默认是10。

范围超出之后,会有异常抛出:

java.lang.IllegalArgumentException: Numberout of range: threshold = 0.07

     atorg.apache.hadoop.hdfs.server.balancer.Balancer$Cli.parse(Balancer.java:1535)

     atorg.apache.hadoop.hdfs.server.balancer.Balancer$Cli.run(Balancer.java:1510)

     atorg.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)

     atorg.apache.hadoop.hdfs.server.balancer.Balancer.main(Balancer.java:1582)

2012-12-19 16:28:33,299 ERRORorg.apache.hadoop.hdfs.server.balancer.Balancer: Exiting balancer due anexception

java.lang.IllegalArgumentException: Numberout of range: threshold = 110.0

     atorg.apache.hadoop.hdfs.server.balancer.Balancer$Cli.parse(Balancer.java:1535)

     atorg.apache.hadoop.hdfs.server.balancer.Balancer$Cli.run(Balancer.java:1510)

     atorg.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)

     atorg.apache.hadoop.hdfs.server.balancer.Balancer.main(Balancer.java:1582)

如果参数值设置的越小,花费的时间就越长。使用此命令时,会反复的从磁盘使用率高的节点上,把块转移到磁盘使用率低的磁盘上,每次移动不超过10G大小,每次移动不超过20分钟。

在做均衡的时候,会对网络带宽有影响,可在配置文件中对均衡操作的带宽做限制:

<property>

   <name>dfs.balance.bandwidthPerSec</name>

    <value>1048576</value>

<description>

Specifies themaximum bandwidth that each datanode can utilize for the balancing purpose interm of the number of bytes per second.

    </description>

</property>

若不设置,则balance操作时,速度默认为1M/S大小。参数重启时生效。不允许在集群中使用多个均衡同时操作。

HDFS均衡操作的退出

    除了在命令行直接使用stop-balancer.sh脚本来执行退出均衡操作之外,当发生以下几种情况时,当前执行的均衡操作也会退出:

(1)集群已经达到均衡状态;

(2)没有块可以再被移动;

(3)连续五次迭代操作时没有块移动;

(4)和NameNode通信时出现IOException;

(5)另外一个均衡操作启动;

到此,关于“HDFS均衡操作的启动和退出方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

推荐阅读:
  1. HDFS的Shell操作(笔记)
  2. hdfs的shell操作

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

hdfs

上一篇:如何使用LeetCode反转字符串

下一篇:Java中怎么利用replace实现字符串替换

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》