[HADOOP] 출력 쓰기시 Hadoop지도 축소 작업이 실패합니다.
HADOOP출력 쓰기시 Hadoop지도 축소 작업이 실패합니다.
마침내 Hadoop (단일 데비안 머신에서 실행)에서 map-reduce 작업을 시작할 수있게되었습니다. 그러나지도 축소 작업은 항상 다음 오류 때문에 실패합니다.
hadoopmachine@debian:~$ ./hadoop-1.0.1/bin/hadoop jar hadooptest/main.jar nl.mydomain.hadoop.debian.test.Main /user/hadoopmachine/input /user/hadoopmachine/output
Warning: $HADOOP_HOME is deprecated.
12/04/03 07:29:35 WARN mapred.JobClient: Use GenericOptionsParser for parsing the arguments. Applications should implement Tool for the same.
****hdfs://localhost:9000/user/hadoopmachine/input
12/04/03 07:29:35 INFO input.FileInputFormat: Total input paths to process : 1
12/04/03 07:29:35 INFO mapred.JobClient: Running job: job_201204030722_0002
12/04/03 07:29:36 INFO mapred.JobClient: map 0% reduce 0%
12/04/03 07:29:41 INFO mapred.JobClient: Task Id : attempt_201204030722_0002_m_000002_0, Status : FAILED
Error initializing attempt_201204030722_0002_m_000002_0:
ENOENT: No such file or directory
at org.apache.hadoop.io.nativeio.NativeIO.chmod(Native Method)
at org.apache.hadoop.fs.FileUtil.execSetPermission(FileUtil.java:692)
at org.apache.hadoop.fs.FileUtil.setPermission(FileUtil.java:647)
at org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:509)
at org.apache.hadoop.fs.RawLocalFileSystem.mkdirs(RawLocalFileSystem.java:344)
at org.apache.hadoop.mapred.JobLocalizer.initializeJobLogDir(JobLocalizer.java:239)
at org.apache.hadoop.mapred.DefaultTaskController.initializeJob(DefaultTaskController.java:196)
at org.apache.hadoop.mapred.TaskTracker$4.run(TaskTracker.java:1226)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:416)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1093)
at org.apache.hadoop.mapred.TaskTracker.initializeJob(TaskTracker.java:1201)
at org.apache.hadoop.mapred.TaskTracker.localizeJob(TaskTracker.java:1116)
at org.apache.hadoop.mapred.TaskTracker$5.run(TaskTracker.java:2404)
at java.lang.Thread.run(Thread.java:636)
12/04/03 07:29:41 WARN mapred.JobClient: Error reading task outputhttp://localhost:50060/tasklog?plaintext=true&attemptid=attempt_201204030722_0002_m_000002_0&filter=stdout
12/04/03 07:29:41 WARN mapred.JobClient: Error reading task outputhttp://localhost:50060/tasklog?plaintext=true&attemptid=attempt_201204030722_0002_m_000002_0&filter=stderr
불행히도, 그것은 단지 "ENOENT : No such file or directory"라고 말하면서 실제로 어떤 디렉토리에 접근하려고하는지 말하지 않습니다. Ping localhost가 작동하며 입력 디렉토리가 존재합니다. 항아리 위치도 정확합니다.
아무도 나에게이 오류를 수정하는 방법이나 Hadoop이 액세스하려고하는 파일을 찾는 방법에 대한 지침을 줄 수 있습니까?
Hadoop 메일 링리스트에서 유사한 문제가 몇 개 발견되었지만 응답이 없습니다 ...
감사!
추신 mapred.local.dir의 설정은 다음과 같습니다 (mapred-site.xml).
<property>
<name>mapred.local.dir</name>
<value>/home/hadoopmachine/hadoop_data/mapred</value>
<final>true</final>
</property>
요청에 따라 ps auxww | grep TaskTracker는 다음과 같습니다 :
1000 4249 2.2 0.8 1181992 30176 ? Sl 12:09 0:00
/usr/lib/jvm/java-6-openjdk/bin/java -Dproc_tasktracker -Xmx1000m -Dhadoop.log.dir=/home/hadoopmachine/hadoop-1.0.1/libexec/../logs
-Dhadoop.log.file=hadoop-hadoopmachine-tasktracker-debian.log -Dhadoop.home.dir=/home/hadoopmachine/hadoop-1.0.1/libexec/..
-Dhadoop.id.str=hadoopmachine -Dhadoop.root.logger=INFO,DRFA -Dhadoop.security.logger=INFO,NullAppender
-Djava.library.path=/home/hadoopmachine/hadoop-1.0.1/libexec/../lib/native/Linux-i386-32
-Dhadoop.policy.file=hadoop-policy.xml -classpath [ommitted very long list of jars] org.apache.hadoop.mapred.TaskTracker
해결법
-
==============================
1.작업 추적기에서이 작업이 실행 된 hadoop 노드를 식별하십시오. SSH를 사용하여 hadoop.log.dir 디렉토리의 위치를 확인하십시오 (mapred-site.xml에서이 노드를 확인하십시오). - 내 생각에 hadoop 사용자는이 폴더에 하위 디렉토리를 만들 수있는 올바른 권한이 없습니다.
작업 추적기에서이 작업이 실행 된 hadoop 노드를 식별하십시오. SSH를 사용하여 hadoop.log.dir 디렉토리의 위치를 확인하십시오 (mapred-site.xml에서이 노드를 확인하십시오). - 내 생각에 hadoop 사용자는이 폴더에 하위 디렉토리를 만들 수있는 올바른 권한이 없습니다.
생성하려고하는 실제 폴더는 $ {hadoop.log.dir} / userlogs 폴더 아래에 있습니다 -이 폴더가 올바른 권한을 가지고 있는지 확인하십시오
귀하의 경우, 추신 : ps 출력을보고, 나는 당신이 권한을 검사 할 필요가 폴더를 추측하고있어 :
/home/hadoopmachine/hadoop-1.0.1/libexec/../logs
from https://stackoverflow.com/questions/9992566/hadoop-map-reduce-operation-is-failing-on-writing-output by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 돼지에 Raw JSON로드하기 (0) | 2019.07.23 |
---|---|
[HADOOP] 하이브에 사용 가능한 데이터 시각화 도구 (0) | 2019.07.23 |
[HADOOP] Coprocesor HBase를 사용하여 보조 색인 만들기 (0) | 2019.07.23 |
[HADOOP] Hadoop - 감속기는 어떻게 데이터를 가져 옵니까? (0) | 2019.07.23 |
[HADOOP] HBase가 분산 된 환경에서 실행되지 않는다면 의미가 있습니까? (0) | 2019.07.23 |