본문 바로가기
프로그래밍/hadoop

DataNode Java Heap Warning

by W.C. 2016. 8. 24.
728x90

HDP 버젼을 2.4로 업데이트 이후


DATANODE JAVA HEAP WARNING을 자주 보게 되었다.



기존까지 별 문제 없다가 업데이트 이후 자주 보이고 있다.


결국은 GC 문제로 추정되는데


WARNING이 발생하더라도 나중에는 사라지게 된다.


DATANODE의 JAVA HEAP의 크기를 증가 시켜 줘도 똑 같은 현상이 발생하는 걸 보면


확실히 GC의 문제이다.


이 GC가 너무 자주 동작해도 문제고 너무 동작하지 않아서 FULL GC가 돌게 되어도 문제다.


어느 것이든 성능 이슈가 발생하게 된다.


일단 나의 이론이 맞는지 증명해 보기 위한 간단한 테스트!



"jcmd <DATANODE PID> GC.run"


명령으로 해당 DATANODE에 강제적으로 full garbage collect를 동작하게 해주면


위의 경고는 조금 후 사라지게 된다.


역시! GC 문제


JAVA의 고질 적인 문제인데...


해당 문제를 해결하기 위해 HORTONWORK Community Site를 기웃거리다.


역시 같은 문제를 가지고 있는 글을 보았다.



글을 보니


효과 적인 GC를 구동하기 위해 옵션을 설정해 줄수 있다!!!?



hadoop-env.sh 파일에


HADOOP_DATANODE_OPTS:

-XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=<percent>


여기서 percent를 70으로 해주면


문제 없이 동작을 한다고 한다.


결국은 상황에 자신의 상황에 맞게 설정을 해주면 될 듯하다.


그리고 이건 


garbase collection 설정에 관한 참조 할 만한 글이다. 


시간 날때 읽어 보면 좋을 듯 하다.


https://community.hortonworks.com/content/kbentry/14170/namenode-garbage-collection-configuration-best-pra.html


참조 사이트 


https://community.hortonworks.com/questions/39875/datanode-heap-exhaustion.html



'프로그래밍 > hadoop' 카테고리의 다른 글

Ambari UnKnown Host 에러  (0) 2018.11.15
Ambari metrics collector ERROR  (0) 2018.11.15
JounalNode 오류 관련 해프닝  (1) 2016.07.12
HDP 2.0에서 HDP 2.4로 업그레이드 삽질  (0) 2016.05.27
PostgreSQL shell command(ambari)  (0) 2016.04.11