飙血推荐
  • HTML教程
  • MySQL教程
  • JavaScript基础教程
  • php入门教程
  • JavaScript正则表达式运用
  • Excel函数教程
  • UEditor使用文档
  • AngularJS教程
  • ThinkPHP5.0教程

Hadoop org.apache.hadoop.util.DiskChecker$DiskErrorException问题等价解决linux磁盘不足解决问题排

时间:2021-12-09  作者:DengSchoo  
解决“/dev/mapper/centos-root 100%”满了, 域名域名Checker$DiskErrorException Could not find any valid local directory for.... Hadoop数据量大中间文件太多问题排查

域名域名Checker$DiskErrorException问题等价解决linux磁盘不足解决问题排查

解决“/dev/mapper/centos-root 100%”满了, 域名域名Checker$DiskErrorException Could not find any valid local directory for....

错误信息:如下所示

2021-12-09 00:40:58,559 INFO 域名: Task Id : attempt_1638980473129_0001_m_000000_0, Status : FAILED
Error: 域名域名Checker$DiskErrorException: Could not find any valid local directory for output/attempt_1638980473129_0001_m_000000_0/域名
        at 域名域名lDirAllocator$域名ocalPathForWrite(域名:447)
        at 域名域名域名ocalPathForWrite(域名:152)
        at 域名域名域名ocalPathForWrite(域名:133)
        at 域名域名域名utputFileForWrite(域名:82)
        at 域名域名ask$域名eParts(域名:1881)
        at 域名域名ask$域名h(域名:1527)
        at 域名域名ask$域名e(域名:735)
        at 域名域名域名ewMapper(域名:805)
        at 域名域名域名(域名:347)
        at 域名域名Child$域名(域名:174)
        at 域名域名ivileged(Native Method)
        at 域名.域名(域名:422)
        at 域名域名域名(域名:1729)
        at 域名域名域名(域名:168)

搜了很多教程发现要么说的不是一个具体错误,要么没有用。最后发现确实是因为虚拟机没有空间再去输出中间文件了。网上如果说需要修改各模块tmp文件路径的也是有道理的,因为默认会存到/tmp下,这个再虚拟机分配的时候可能会很小。

排查思路 记住df -h这个命令不断的查下去 查到存缓存的路径为止:

cd /

sudo du -h -x --max-depth=1:查这层文件夹各自总大小

image-20211209011401440

可以看到这里的/opt有37G大小已经不对劲了,而我的hadoop是装在这个opt下的,所以继续安装上述深入:

最终定位到:/opt/module/hadoop-3.1.3/data/nm-local-dir/usercache/hadoop/appcache/application_1638980473129_0001

这个文件夹下占了几十个G的目录:ls查看一下。。。。。结果。。。

image-20211209010916248

rm -rf * 命令清除当前目录下的所有out文件即可。如果有集群的话也要清理一下。

image-20211209011707371

image-20211209011738980

舒服了。。

标签:编程
湘ICP备14001474号-3  投诉建议:234161800@qq.com   部分内容来源于网络,如有侵权,请联系删除。