복붙노트

[HADOOP] E0902 받기 : 예외 발생 : [사용자 : oozie는 oozie로 가장 할 수 없습니다]

HADOOP

E0902 받기 : 예외 발생 : [사용자 : oozie는 oozie로 가장 할 수 없습니다]

안녕하세요, 나는 Oozie에 익숙하지 않고이 오류가 발생합니다. E0902 : 예외가 발생했습니다 : [사용자 : pramod가 pramod를 가장 할 수 없습니다.] 다음 명령을 실행할 때

   ./oozie job -oozie htt p://localhost:11000/oozie/ -config ~/Desktop/map-reduce  /job.properties -run.

내 hadoop 버전은 1.0.3이며 oozie 버전은 3.3.2이며 의사 모드로 실행됩니다.

다음은 my core-site.xml의 내용입니다.

<configuration>

<property>
<name>hadoop.tmp.dir</name>
<value>/home/pramod/hadoop-${user.name}</value>
</property>

<property>
<name>fs.default.name</name>
<value>hdfs://localhost:54310</value>
</property>

<property>



<name>hadoop.proxyuser.${user.name}.hosts</name>                                               
        <value>*</value>
</property>

<property>
        <name>hadoop.proxyuser.${user.name}.groups</name>
        <value>*</value>
</property>

</configuration>

누군가가 도울 수 있는가?

해결법

  1. ==============================

    1.Hadoop 1.0.x는 와일드 카드를 지원하지 않습니다. http://mail-archives.apache.org/mod_mbox/oozie-user/201212.mbox/%3CCAOcnVr1TZZ5X0Mrb7fFA8JdW6rO6PgoJ9u0=2UYbfXf_o8r=DA@mail.gmail.com%3E

    Hadoop 1.0.x는 와일드 카드를 지원하지 않습니다. http://mail-archives.apache.org/mod_mbox/oozie-user/201212.mbox/%3CCAOcnVr1TZZ5X0Mrb7fFA8JdW6rO6PgoJ9u0=2UYbfXf_o8r=DA@mail.gmail.com%3E

    그래서 시도해보십시오.

    <property>
        <name>hadoop.proxyuser.oozie.hosts</name>
        <value>localhost</value>
    </property>
    
    <property>
        <name>hadoop.proxyuser.oozie.groups</name>
        <value>oozie,pramod</value>
    </property>
    
  2. ==============================

    2.위의 토론에서 놓친 한 가지 :

    위의 토론에서 놓친 한 가지 :

    core-site.xml에서 "bin / oozied.sh start"명령을 호출 한 사용자와 같이 oozie가 시작된 사용자를 사용해야합니다. 예 : hadoop.proxyuser.bob.groups와 함께 "hadoop.proxyuser.bob.hosts"가있는 경우, 사용자 'bob'은 "bin / oozied.sh start"를 사용하여 oozie를 시작해야합니다.

  3. ==============================

    3.키 이름에 변수를 사용할 수 없다고 생각합니다. $ {user.name}보다는 사용자 이름을 하드 코딩해야합니다.

    키 이름에 변수를 사용할 수 없다고 생각합니다. $ {user.name}보다는 사용자 이름을 하드 코딩해야합니다.

    나는 oozie 사용자 (oozie 서버가 실행 됨)를 가지고 있다고 가정하므로 기본적으로 다음과 같이 구성하여 oozie 사용자가 모든 호스트의 사용자를 가장 할 수 있도록합니다.

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

    HDFS / MAPREDUCE 서비스가 다시 시작되는지 확인하십시오.

  4. from https://stackoverflow.com/questions/16582126/getting-e0902-exception-occured-user-oozie-is-not-allowed-to-impersonate-ooz by cc-by-sa and MIT license