0

配置了具有 Kerberos 安全性的 Hadoop-2.6.0 HA 集群。当使用 tez-example-0.6.0.jaryarn-tez从不同用户的框架中提交示例作业时,得到以下异常

例外

java.io.IOException: The ownership on the staging directory hdfs://clustername/tmp/staging is not as expected. It is owned by Kumar. The directory must be owned by the submitter TestUser or by TestUser

该目录具有完全权限,但仍然出现上述异常。但是在yarn-tez框架中使用 mapreduce-examples-2.6.0.jar 提交作业时,作业成功完成。

命令

yarn jar C:\Tez\tez-examples-0.6.0.jar orderedwordcount -Dmapreduce.framework.name=yarn-tez  /user/Kumar/names /user/Kumar/names1

帮助将不胜感激。

4

1 回答 1

2

在您的 tez-site.xml 中设置以下内容:

<property>
   <name>tez.staging-dir</name>
   <value>/tmp/${user.name}/tez/staging/</value>
</property>

当前的暂存目录似乎配置为使用 /clustername/tmp/staging/ 最终导致多个用户使用相同的路径导致权限冲突。

如果使用 /clustername/tmp 作为前缀,请务必预先创建 tmp 目录并对其具有 777 权限。

于 2015-07-18T17:27:02.777 回答