예전에 docker 형태로 구축했었던 hadoop을 가지고, 버전업데이트를 해보면서
- hadoop 2.9.2 버전 → 3.3.3 버전
- zookeeper 3.4.9 버전 → 3.8.0 버전
마주한 문제는 아래와 같다.
zookeeper 설치 시 압축 파일명이 바꼈다.
3.4.9 버전에서는 zookeeper-$ZOOKEEPER_VERSION.tar.gz이였는데,
3.8.0 버전에서는 apache-zookeeper-$ZOOKEEPER_VERSION.tar.gz으로 바뀌었다.
버전 업 후, hadoop cluster를 실행시키는데
namenode, HQuorumPeer, DFSZKFailoverController가 정상적으로 실행되지 않았다.
로그들을 확인해보니, zookeeper 로그 중에 아래와 같은 로그를 확인했다.
Error: Could not find or load main class org.apache.zookeeper.server.quorum.QuorumPeerMain
구글링을 좀 해보니, 해결 방법 중에
apache-zookeeper-$ZOOKEEPER_VERSION.tar.gz → apache-zookeeper-$ZOOKEEPER_VERSION-bin.tar.gz
으로 설치를 하면 해결이 된다는 글이 있었다.
그래서 Dockerfile을 수정하고 다시 설치 후, 동작 시켰더니 실행 잘됨.
namenode, datanode 컨테이너들이 올라온것을 확인하고,
yarn UI로 들어가서 확인했더니, Active Nodes가 1인것을 확인했다.
(실제 띄운 노드는 namenode 2, datanode 3)
이유를 확인해보니, nodemanager가 datanode에서 다 실행되고 있지 않았다.
그래서 $HADOOP_HOME/sbin/yarn-daemon.sh start nodemanager 를 사용하여 실행 시켜줌.
(entrypoint.sh에 추가)
이렇게 정상적으로 전부 실행되었다.!
'Tech > Hadoop' 카테고리의 다른 글
망분리 환경에서 td-agent webhdfs 플러그인을 활용하여 HDFS에 로그 저장하기 (0) | 2022.12.10 |
---|---|
naver deview 영상 목록 (0) | 2022.11.06 |
[Hadoop]Docker Base 하둡 설치기 (2) (0) | 2022.03.20 |
[Hadoop] Docker Data Node 추가, 삭제 (0) | 2022.03.11 |
[Hadoop]core-site.xml, hdfs-site.xml (0) | 2022.03.11 |