복붙노트

[HADOOP] Apache Oozie가 ShareLib을로드하지 못했습니다.

HADOOP

Apache Oozie가 ShareLib을로드하지 못했습니다.

나는 다음 oozie.log를 얻었다 :

org.apache.oozie.service.ServiceException: E0104: Could not fully initialize service [org.apache.oozie.service.ShareLibService], Not able to cache sharelib. An Admin needs to install the sharelib with oozie-setup.sh and issue the 'oozie admin' CLI command to update the sharelib

나는 다음 명령을 실행한다.

oozie-setup.sh sharelib create -fs hdfs://localhost:54310
oozied.sh start

hdfs dfs -ls /user/hduser/share/lib
15/02/24 18:05:03 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 3 items
drwxr-xr-x   - hduser supergroup          0 2015-02-24 17:19 /user/hduser/share/lib/lib_20150224171855
drwxr-xr-x   - hduser supergroup          0 2015-02-24 17:19 /user/hduser/share/lib/lib_20150224171908
drwxr-xr-x   - hduser supergroup          0 2015-02-24 17:29 /user/hduser/share/lib/lib_20150224172857 

그러나 :

oozie admin -shareliblist -oozie http://localhost:11000/oozie
[Available ShareLib]

oozie admin -sharelibupdate -oozie http://localhost:11000/oozie
null

내 oozie-site.xml에는 다음이 포함됩니다.

<property>
    <name>oozie.service.WorkflowAppService.system.libpath</name>
    <value>/user/${user.name}/share/lib/</value>
</property>

<property>
    <name>oozie.service.HadoopAccessorService.hadoop.configurations</name>
    <value>*=hadoop-conf</value>
</property>

내 실수에 대해 알고 있니?

해결법

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

    1.나는 며칠 동안 같은 오류를 고치려고 애썼다.

    나는 며칠 동안 같은 오류를 고치려고 애썼다.

    그것은 내 hdfs 대신 로컬 파일 시스템에서 sharelib 폴더를 찾고있는 sharelib 서비스와 관련이 있습니다.

    그래서 그것을 고치기 위해 :

    오지를 멈추다

    conf / oozie-site.xml을 편집하십시오.

    <property>        
          <name>oozie.service.HadoopAccessorService.hadoop.configurations</name> 
          <value>*=/usr/local/hadoop/etc/hadoop/</value>
    </property>
    

    오지를 다시 시작하십시오.

    그리고 Voila!

    속성의 값은 기본적으로 * = hadoop-conf로 설정되었습니다. 나는 아직도 hadoop-conf가 가리켜 야하는 것이 무엇인지 모르지만, 나의 경우에는 설정 폴더 hadoop이 아니므로 * = / usr / local / hadoop / etc / hadoop /으로 변경했다.

  2. ==============================

    2.내 oozie-4.2.0에서 기본 설정 * hadoop-conf는 다음 위치의 하위 폴더를 가리 킵니다.

    내 oozie-4.2.0에서 기본 설정 * hadoop-conf는 다음 위치의 하위 폴더를 가리 킵니다.

    path/to/oozie/conf/hadoop-conf
    

    필자의 경우, 'core-site.xml'이라는 파일이 있는데,이 파일은 설정 파일이어야한다고 생각합니다. 이 파일에 아래 속성을 추가합니다.

    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
    

    oozie를 다시 시작하면 문제가 해결됩니다.

  3. from https://stackoverflow.com/questions/28702100/apache-oozie-failed-loading-sharelib by cc-by-sa and MIT license