oozie不允许冒充oozie

时间:2013-05-30 08:43:28

标签: hadoop oozie

我对oozie有点新意。我在我的服务器上安装了(使用cdh repo)oozie(我按照CDH4文档[我的hadoop在cdh4中运行])。

我使用以下信息更新了我的core-site.xml:

<!-- OOZIE -->
<property>
  <name>hadoop.proxyuser.oozie.hosts</name>
  <value>*</value>
</property>
<property>
  <name>hadoop.proxyuser.oozie.groups</name>
  <value>*</value>
</property>
<!-- -->

但是当我开始工作时:

sudo -u oozie oozie job -oozie http://localhost:11000/oozie -config examples/apps/sqoopList/job.properties -run

我明白了:

job: 0000004-130530171203897-oozie-oozi-W

但是当我查看oozie webconsole时,我可以看到我的工作,但我的工作状态为“START_RETRY” 出现以下错误

JA009: User: oozie is not allowed to impersonate oozie

我没有任何记录......我真的不知道出了什么问题......

我无法理解为什么我不能找到工作? 你能帮我解决这个问题吗?

3 个答案:

答案 0 :(得分:0)

使用 Apache Oozie时,我遇到了同样的问题。

在oozie-site.xml中添加以下内容

<property>
 <name>oozie.services.ext</name>
 <value>org.apache.oozie.service.HadoopAccessorService</value >
 <description>
  To add/replace services defined in 'oozie.services' with custom implementations.Class names must be separated   by commas.
 </description>
</property>

然后重启oozie。 这也应该与Cloudera发行一起使用。只需试一试并告诉我。

答案 1 :(得分:0)

您可以尝试以下操作:

  1. 如果Oozie服务器和Hadoop守护程序位于不同的计算机上,并且您使用 oozie 用户运行命令:您必须创建 oozie 用户和 oozie hadoop机器上的组。如果您的Hadoop集群在单独的计算机上运行NameNode,请在NameNode计算机中创建它们。如果使用*通配符,添加oozie组可能是多余的(我没有对此进行测试);但您应该为 oozie 用户分配一个组。这样,HDFS可以收集用户的组信息。
  2. 这是我的配置:

    <property>
    <name>hadoop.proxyuser.oozie.groups</name>
    <value>oozie</value>
    </property>
    

    2。添加oozie用户和组后,重新启动hadoop守护进程。当hadoop再次返回时,它将具有 oozie 用户的组映射。

    这些操作背后的逻辑在HDFS权限指南中说明:

      

    如上所述确定用户名后,列表为   组由组映射服务确定,由   hadoop.security.group.mapping属性。默认实现,   org.apache.hadoop.security.ShellBasedUnixGroupsMapping,将shell出来   到Unix bash -c groups命令来解析一个组的列表   用户。

         

    对于HDFS,用户到组的映射是在NameNode上执行的。   因此,NameNode的主机系统配置决定了   用户的组映射。

    以下2个链接可以提供有关HDFS权限的摘要。 https://hadoop.apache.org/docs/r2.2.0/hadoop-project-dist/hadoop-hdfs/HdfsPermissionsGuide.html http://blog.cloudera.com/blog/2012/03/authorization-and-authentication-in-hadoop/

答案 2 :(得分:-1)

使用ambari或CLI在HDFS配置中设置以下属性  重点= hadoop.proxyuser.hostname.hosts
 value = *

键= hadoop.proxyuser.hostname.groups
 value = *

如果您在Hue中收到“用户色调未定义为proxyuser”,请按照以下步骤操作:

步骤1:在Ambari UI中单击oozie
第2步:点击“配置”输入配置参数
第3步:转到自定义oozie-site并添加以下2个属性

键= oozie.service.ProxyUserService.proxyuser.hue.groups value = *

键= oozie.service.ProxyUserService.proxyuser.hue.hosts value = *