우지 4.3.0을 설정하는 중 Cannot initialize Cluster
오류가 발생하였습니다.
오류
우지 작업 중 클러스터를 초기화하지 못한다는 오류가 발생하였습니다. 오류 내용은 mapreduce.framework.name=yarn
으로 설정되어 있기 때문에 고가용성(HA) 구성된 리소스 매니저의 주소를 확인하지 못하는 것으로 생각하였습니다.
Caused by: java.io.IOException: Cannot initialize Cluster. Please check your configuration for mapreduce.framework.name and the correspond server addresses.
at org.apache.hadoop.mapreduce.Cluster.initialize(Cluster.java:143)
원인 #1
원인은 우지의 클래스패스에 hadoop yarn 관련 라이브러리가 빠져 있었기 때문입니다. classpath를 수정후 정상동작 하는 것을 확인하였습니다. 우지의 클래스패스에 다음 라이브러리를 추가하면 됩니다.
mapreduce.framework.name
이 yarn으로 되어 있어도 라이브러리가 없으면 수행할 수 있는 맵리듀스 프레임워크를 찾지 못해서 발생하는 오류인 것으로 추정됩니다.
/usr/lib/hadoop/client/hadoop-yarn-api-2.8.5.jar
/usr/lib/hadoop/client/hadoop-yarn-common-2.8.5.jar
/usr/lib/hadoop/client/hadoop-yarn-client-2.8.5.jar
/usr/lib/hadoop/client/hadoop-mapreduce-client-jobclient-2.8.5.jar
/usr/lib/hadoop/client/jackson-jaxrs-1.9.13.jar
/usr/lib/hadoop/client/jersey-core-1.9.jar
/usr/lib/hadoop/client/jackson-xc-1.9.13.jar
원인 #2
다른 원인은 클러스터의 주소를 정확하게 확인하지 못하여 발생합니다. 워크플로위 xml의 yarn, namenode 설정의 주소를 정확하게 입력하여야 합니다. 특히, HA구성일때는 클러스터의 별명 같은 통합 주소를 이용하지만 단독 구성일 때는 정확한 주소를 입력해야 하기 때문에 주의 하여야 합니다.
반응형