Hadoop WordCount 오류 정리

JY·2022년 11월 16일
0

Hadoop 설치 완료 후 발생한 오류


1. hdfs namenode -format 오류

오류: JAVA_HOME is not set and could not be found

해결: hadoop/etc/hadoophadoop-env.sh에서 JAVA_HOME 경로 설정 (경로 설정에서도 여러 번의 시도가 있었음)

2. jps 했을 때 5개가 아닌 1개만 보임

다음과 같이 ResourceManager만 나옴
원인: start-dfs.shstart-yarn.sh 할 때 오류가 발생했었음

3. dfs 실행시 아래와 같이 가 발생

오류: rcmd socket permission denied

해결: ~/.bashrc 에 export PDSH_RCMD_TYPE=ssh 추가
(시행착오)-> 그 후에도 똑같음 => source ~/.bashrc 통해 적용 했어야함

여기까지 했을 때 Namenode에서 오류가 났음을 볼 수 있음


4. namenode만 뜨지 않음

해결: bin 에서 hdfs namenode -format 다시 진행 -> sbin에서 stop-all.sh로 다 종료 시킨 후에 다시 실행

성공!



5. Wordcount를 실행하였을 때 output에 파일 형성되지 않음

이런 오류 뜨는거 같지만 output 폴더는 만들어짐
오류: could not find or load main class org.apache.hadoop.mapred.yarnchild
=> output 폴더가 비어있음. 잘 안된거지

해결: mapred-site.xml 에

넣어서 해결

=> 이렇게 하면 작은 사이즈의 데이터로는 wordcount 실행 가능


6. 672MB 크기 정도의 대용량 데이터 wordcount 실행하였을 때 오류

hadoop jar ./wordcount.jar WordCount /user/jiyeon/wordcount/input /user/jiyeon/wordcount/output
WordCount 실행 코드

원인: YARN이 컨테이너를 할당함으로써 각 애플리케이션에 처리 용량을 제공. 현재는 컨테이너에 메모리가 부족하여 YARN이 자동으로 컨테이너를 종료. 이로 인한 오류 발생.
오류: Container killed on request. Exit code is 137
해결: yarn-site.xml 파일에 다음을 추가

<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>

처음 추가하였을 때는 오류가 해결되지 않았어서 헤맸었음
stop-all.sh로 종료하고 start-all.sh로 다시 hadoop을 실행한 후 wordcount 작업을 하였더니 첨부한 것과 같이 문제 없이 mapreduce가 작동

0개의 댓글