hdfs共5个节点 配置了多个dfs.data.dir(/opt/appdata1-/opt/appdata10) 但发现每个节点都是只写第一个目录,请问可能原因及处理方法

[hdfs@Hadoop-DataNode1 dn]$ df -h
Filesystem                   Size  Used Avail Use% Mounted on
/dev/mapper/vg_root-lv_root  9.9G  384M  9.0G   5% /
tmpfs                         63G   68K   63G   1% /dev/shm
/dev/sda1                    485M   40M  420M   9% /boot
/dev/mapper/vg_root-lv_home  5.0G  139M  4.6G   3% /home
/dev/mapper/vg_root-lv_opt   394G  4.0G  370G   2% /opt
/dev/mapper/vg_root-lv_tmp   9.9G  157M  9.2G   2% /tmp
/dev/mapper/vg_root-lv_usr    20G  3.2G   16G  18% /usr
/dev/mapper/vg_root-lv_var    50G  4.0G   43G   9% /var
172.28.41.80:/opt/nfsshare    20G  8.3G   11G  44% /opt/nfsshare
cm_processes                  63G   43M   63G   1% /var/run/cloudera-scm-agent/process
/dev/sdb                     3.6T  3.4T   17M 100% /opt/appdata1
/dev/sdc                     3.6T  119G  3.3T   4% /opt/appdata2
/dev/sdd                     3.6T  116G  3.3T   4% /opt/appdata3
/dev/sde                     3.6T   90G  3.4T   3% /opt/appdata4
/dev/sdf                     3.6T  115G  3.3T   4% /opt/appdata5
/dev/sdg                     3.6T  113G  3.3T   4% /opt/appdata6
/dev/sdh                     3.6T  117G  3.3T   4% /opt/appdata7
/dev/sdi                     3.6T  112G  3.3T   4% /opt/appdata8
/dev/sdj                     3.6T  113G  3.3T   4% /opt/appdata9
/dev/sdk                     3.6T  114G  3.3T   4% /opt/appdata10

目录权限都检查过是对的 都有空间使用 但最近好像不往其它目录写数据了
版本是CDH5.3 对应hadoop版本是2.5
现在所有datanode第一个目录使用率都已经100%
请各位大神帮看下

fish - Hadooper

赞同来自:

这是HDFS的一个老问题:https://issues.apache.org/jira/browse/HDFS-1312 ,这工具在2.x中还没好。可以按照链接中的说明手动上线下线datanode试试。   记得过去在生产环境中遇到过类似问题,你的datanode是否压力比较大。当时导致问题的原因是每次心跳datanode进行block的invalid(真实删除)操作的时候,都是按照固定的顺序进行(比如每次都按照d1、d2、d3的顺序做删除),而由于系统数据增删压力大,在每次心跳时无法将所有废弃block都删掉,于是导致了每个心跳都删掉d1或d2这些排在前面的disk,排在后的disk中的废数据怎么也删不掉。   如果排查到是我所描述的这个问题,解决办法只有修改代码,HDFS在这里没有可配参数,可以每次disk删除顺序做下随机,或者,删除废旧数据的操作不设定时,一直删到当前轮次无剩余的废block为止。

要回复问题请先登录注册