热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

HadoopDataNode多目录磁盘扩展配置

工作中不免会有碰到服务器磁盘空间不足,需要另外挂载磁盘上去的时候,这时候问题就来了,怎么能让datanode将数据写入新挂载的磁盘呢?<propert

工作中不免会有碰到服务器磁盘空间不足,需要另外挂载磁盘上去的时候,这时候问题就来了,怎么能让datanode将数据写入新挂载的磁盘呢?

<property>
    <name>dfs.datanode.data.dirname>
<value>file:///${hadoop.tmp.dir}/dfs/data1,file:///sdb1/dfs/data2value>
property>
2、数据存放策略

参考大佬博客   https://blog.csdn.net/bigdatahappy/article/details/39992075

默认为轮询,现在的情况显然应该用“选择空间多的磁盘存”模式

配置hdfs-site.xml

<property>
    <name>dfs.datanode.fsdataset.volume.choosing.policyname>
    <value>org.apache.hadoop.hdfs.server.datanode.fsdataset.AvailableSpaceVolumeChoosingPolicyvalue>
  property>
3、开启 数据均衡
bin/start-balancer.sh –threshold 10
##停止命令

bin/stop-balancer.sh

对于参数10,代表的是集群中各个节点的磁盘空间利用率相差不超过10%,可根据实际情况进行调整。

注意点

在实际运行时发现datanode节点起不来,报错

org.apache.hadoop.util.DiskChecker$DiskErrorException: Too many failed volumes - current valid volumes: 1, volumes configured: 2, volumes failed: 1, volume failures tolerated: 0

Hadoop  DataNode 多目录磁盘扩展配置

 

 经过检查,是因为在102(新增硬盘的主机)配置了hdfs-site.xml 后,分发给了其他没有新增硬盘的主机,启动时因为没有检测到新的硬盘,所以会报错,这里建议千万不要分发hdfs-site.xml


推荐阅读
author-avatar
不雅cf居
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有