Spark Yarn /tmp 没有这样的文件或目录

Posted

技术标签:

【中文标题】Spark Yarn /tmp 没有这样的文件或目录【英文标题】:Spark Yarn /tmp No such file or directory 【发布时间】:2017-01-26 19:24:38 【问题描述】:

我的 spark 作业出现错误,它们的错误通常类似于下图所示的错误。集群中的一个节点有大约 256 GB 的内存和大约 8 个内核,我也将执行程序内存指定为 4GB 和额外的 4GB 开销。对于随机播放,我已将内存分数指定为 0.5,这一切我想表明它似乎不是内存问题。但是我无法弄清楚可能是什么问题,这会在一个阶段或另一个阶段出现,我多次重新开始我的工作,这在多个方面出现。你可以假设我们有大约 200 多个节点的基础设施,并且配置不错。

作业因阶段失败而中止:阶段 2.0 中的任务 0 失败 12 次,最近一次失败:阶段 2.0 中丢失任务 0.11(TID 27,lgpbd1107.sgp.ladr.com):java.io.FileNotFoundException:/tmp /hadoop-mapr/nm-local-dir/usercache/names/appcache/application_1485048538020_113554/3577094671485456431296_lock(没有这样的文件或目录)

我无法弄清楚它的问题是否与应用程序或基础架构有关。有人可以帮忙吗。

【问题讨论】:

【参考方案1】:

It is due to the tmpwatch utility, 每天在 CentOS 系统上运行以清理最近未访问的/tmp/filesNodeManager 服务在启动作业时不会重新创建*** hadoop.tmp.dir(默认为 /tmp/hadoop-$user.name)。

现在你有两个选择:

选项 -1: 转至 /etc/cron.daily/tmp-watch 并将此目录排除在日常清理之外。 /tmp/hadoop-mapr/nm-local-dir/filecache

选项-2:转到

core-site.xml 和 hadoop.tmp.dir 属性的添加/更改值 --- 默认为 /tmp/hadoop-$user.name

yarn-site.xml 和 yarn.nodemanager.local-dirs 属性的添加/更改值 --- 默认为 $hadoop.tmp.dir/nm-local-dir

【讨论】:

你能详细说明一下吗,我读了我的工作以不同的时间间隔运行了大约 10 次,并得到了类似的错误。作业在 20 分钟内开始并失败,我假设 20 分钟不够大,tmp watch 将在其中删除文件。

以上是关于Spark Yarn /tmp 没有这样的文件或目录的主要内容,如果未能解决你的问题,请参考以下文章

spark on yarn配置

spark on yarn配置

spark on yarn配置

Spark on yarn遇到的问题

spark.yarn.jar和spark.yarn.archive的使用

Hadoop hadoop.tmp.dir 配置的目录下数据可以删除吗?