반응형
hdfs 네임노드(namenode) 운영 시 OutOfMemory 에러가 나면서 data node들이 dead 상태가 되고
block들이 corrupt 되었다고 메시지가 나오는 경우가 있었다.
Namenode 프로세스 메모리는 디폴트가 1000m라서 1000m으로 되어있었는데 이 용량이 부족해지듯 하다.
찾아보니 HDFS는 작은 파일들을 저장하는데 적합하지 않다고 한다. 파일 갯수가 많아질 수록 네임노드가 필요한 메모리 용량도 커지는데 파일을 작게 생성하고 지우지 않으면 문제가 될 수 있다.
일단 메모리를 3G로 늘렸고 파일 관리 방법에 대해서는 좀 더 찾아봐야겠다.
메모리를 늘리려면 {HADOOP_HOME}/etc/hadoop/hadoop-env.sh 파일에 다음 항목을 수정하면 된다.
(데이터노드를 수정하려면 데이터노드에 설치되어 있는 하둡의 파일을 수정해야 한다.)
HADOOP_HEAP_SIZE=3000m
운영 관련해서 다음 블로그에 정리가 잘되어 있는 것 같다.
네임노드 뿐만 아니라 데이터노드도 같은 문제가 발생할 수 있는 것 같다.
반응형
'개발 > Data Engineering' 카테고리의 다른 글
Avro와 Parquet (0) | 2021.06.24 |
---|---|
태블로 데이터 원본 구성 방법 - 관계와 조인 (0) | 2021.04.16 |
직접해보는 하둡 프로그래밍 - 1. 빅데이터와 하둡이해하기 - 하둡이해하기 (0) | 2016.09.25 |
hdfs에서 name node is safe mode 라고 나올 때 (0) | 2016.09.22 |
hdfs stop 시 no namenode to stop 에러 (0) | 2016.09.12 |