运行示例应用程序时无法正确解析yarn usercache dir

时间:2019-02-14 15:51:06

标签: yarn hadoop3

我正在使用Hadoop 3.2.0,并试图在docker容器中运行一个简单的应用程序,并且我在 yarn-site.xml 中进行了所需的配置更改和 container-executor.cfg 选择LinuxContainerExecutor和docker runtime。

我在hortonworks博客之一中使用了分布式外壳的示例。 https://hortonworks.com/blog/trying-containerized-applications-apache-hadoop-yarn-3-1/

我在这里面临的问题是,当应用程序提交到YARN时,它失败了,原因与目录创建问题有关,并显示以下错误

  

2019-02-14 20:51:16,450 INFO分布式shell。客户端:已获得应用程序   来自ASM的报告,其中appId = 2,clientToAMToken = null,   appDiagnostics =应用程序application_1550156488785_0002失败2   APP容器的AM容器应支付的时间atattatt_1550156488785_0002_000002   使用exitCode:-1000退出尝试失败。   [2019-02-14 20:51:16.282]应用程序申请_1550156488785_0002   初始化失败(exitCode = 20),输出为:main:命令   提供了0个main:用户是myuser main:请求的纱线用户是   myuser无法创建目录   /data/yarn/local/nmPrivate/container_1550156488785_0002_02_000001.tokens/usercache/myuser   -不是目录

我已经在yarn-site.xml中配置了 yarn.nodemanager.local-dirs ,我可以在YARN Web ui localhost:8088 / conf <中看到相同的内容/ p>

<property>
    <name>yarn.nodemanager.local-dirs</name>
    <value>/data/yarn/local</value>
    <final>false</final>
    <source>yarn-site.xml</source>
</property>

我不明白为什么要在nmPrivate目录中创建usercache目录。

注意:我已经验证了myuser对目录的权限,并且还尝试按照相关文章中的建议手动清除目录。但是没有结果。在其他任何日志中都没有看到有关容器启动失败的任何其他信息。

我该如何调试为什么usercache dir无法正确解析?

真的很感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

意识到这全是因为启动服务的用户以及服务所在目录的权限。

确保完成所需的更改后,我可以无缝运行示例和其他应用程序。

感谢Hadoop用户社区的指导。在此处添加链接以获取更多详细信息。

http://mail-archives.apache.org/mod_mbox/hadoop-user/201902.mbox/browser