빅데이터 환경에서 Apache Hadoop(하둡)을 운영하고 계신다면, 버전별 지원 종료 일정을 미리 파악하는 것이 얼마나 중요한지 잘 아실 겁니다. 보안 패치가 중단되거나 기술 지원이 끊어지는 상황을 맞이하기 전에, 체계적인 업그레이드 계획을 세우는 것이 필수입니다.

 

Apache Hadoop Logo

 

 

1. Apache Hadoop(하둡)이란 무엇인가?

Apache Hadoop은 대용량 데이터를 여러 서버에 분산하여 저장하고 처리할 수 있는 오픈소스 프레임워크입니다. 2005년 더그 커팅(Doug Cutting)이 개발한 이후, 현재는 Apache Software Foundation에서 관리하고 있습니다.

Hadoop의 핵심 구성요소는 다음과 같습니다:

  • Hadoop Common: 다른 Hadoop 모듈들이 필요로 하는 라이브러리와 유틸리티
  • HDFS (Hadoop Distributed File System): 분산 파일 시스템
  • YARN (Yet Another Resource Negotiator): 클러스터 리소스 관리 플랫폼
  • MapReduce: 대규모 데이터 처리를 위한 프로그래밍 모델

 

 

2. Hadoop의 독특한 릴리스 정책

다른 많은 오픈소스 프로젝트와 달리, Apache Hadoop은 고정된 EOS/EOL 정책을 가지고 있지 않습니다. 대신 커뮤니티의 필요와 리소스에 따라 여러 릴리스 라인을 병렬로 유지 관리합니다.

이러한 접근 방식의 이유는 다음과 같습니다:

  • 기업 환경에서의 안정성 요구사항
  • 규정 준수 및 인증 요건으로 인한 업그레이드 지연
  • 서로 다른 기능 요구사항을 가진 사용자 그룹

 

 

3. 현재 활성 상태인 Hadoop 버전들

2025년 9월 현재, Apache Hadoop에서 공식적으로 지원하고 있는 활성 릴리스 라인은 다음과 같습니다:

릴리스 라인최신 버전릴리스 날짜지원 상태주요 특징Java 요구사항
3.4.x3.4.22025년 8월 29일활성최신 기능, AWS SDK v2 지원, Lean tarballJDK 8+ (JDK 11+ 권장)
3.3.x3.3.62023년 6월 23일활성 (유지보수)안정성 중점, 보안 업데이트 전용JDK 8+
2.10.x2.10.22022년 5월 31일활성 (유지보수)Legacy 지원, 중요 버그 수정만JDK 7, 8

📋 전체 Hadoop 3.4.x 버전 히스토리

버전릴리스 날짜상태주요 변경사항
3.4.22025년 8월 29일현재S3A 성능 향상, ABFS 최적화, CVE 수정
3.4.12024년 10월 18일지원됨Bulk Delete API, Lean tarball 도입
3.4.02024년 3월 17일지원됨2888개 버그 수정, AWS SDK v2 완전 지원

📋 전체 Hadoop 3.3.x 버전 히스토리

버전릴리스 날짜상태주요 변경사항
3.3.62023년 6월 23일현재보안 업데이트, 117개 버그 수정
3.3.52023년 3월 24일지원됨Vectored IO API, ARM64 바이너리
3.3.42022년 8월 4일지원됨ABFS 중요 버그 수정
3.3.32022년 6월 17일지원됨보안 업데이트 중심
3.3.22022년 6월 17일지원됨284개 개선사항
3.3.12022년 6월 17일지원됨초기 3.3 안정화
3.3.02020년 11월 5일지원됨3.3 라인 시작

 

 

4. 모호한 지원 상태의 버전들

공식적으로 EOL이 선언되지 않았지만 실질적으로 유지보수가 중단된 버전들입니다:

릴리스 라인최신 버전마지막 릴리스실질적 상태권장사항
3.2.x3.2.42022년 7월 22일비활성3.3.x 이상으로 즉시 업그레이드

📋 전체 Hadoop 3.2.x 버전 히스토리

버전릴리스 날짜상태주요 변경사항
3.2.42022년 7월 22일마지막153개 버그 수정 및 개선
3.2.32022년 6월 17일EOL328개 버그 수정
3.2.22021년 1월 14일EOL안정성 개선
3.2.12020년 7월 3일EOL초기 버그 수정
3.2.02019년 1월 21일EOL3.2 라인 시작

 

 

5. 공식적으로 지원이 종료된 버전들 (EOL)

Apache Hadoop 커뮤니티에서 공식적으로 지원 종료를 선언한 버전들입니다:

🔴 Hadoop 3.x EOL 버전들

릴리스 라인마지막 버전마지막 릴리스EOL 선언일EOL 사유
3.1.x3.1.42020년 11월 5일2021년 5월커뮤니티 리소스 부족
3.0.x3.0.32018년 5월 31일2019년3.1.x로 마이그레이션 권장

📋 Hadoop 3.1.x 전체 버전 히스토리

버전릴리스 날짜상태주요 변경사항
3.1.42020년 11월 5일EOL마지막 3.1.x 릴리스
3.1.32020년 7월 3일EOL보안 및 버그 수정
3.1.22019년 2월 6일EOL안정성 개선
3.1.12018년 8월 8일EOL초기 버그 수정
3.1.02018년 4월 4일EOL3.1 라인 시작

📋 Hadoop 3.0.x 전체 버전 히스토리

버전릴리스 날짜상태주요 변경사항
3.0.32018년 5월 31일EOL마지막 3.0.x 릴리스
3.0.22018년 5월 17일EOL버그 수정
3.0.12018년 4월 16일EOL초기 버그 수정
3.0.02017년 12월 13일EOLHadoop 3.0 GA 릴리스

🔴 Hadoop 2.x EOL 버전들

릴리스 라인마지막 버전마지막 릴리스EOL 선언일EOL 사유
2.9.x2.9.22018년 11월 19일2019년2.10.x로 마이그레이션
2.8.x2.8.52018년 9월 15일2019년장기간 개발 지연
2.7.x2.7.72019년 3월 30일2020년2.10.x로 마이그레이션
2.6.x2.6.52016년 12월 11일2017년2.7.x로 마이그레이션
2.5.x2.5.22014년 11월 19일2015년짧은 수명의 릴리스
2.4.x2.4.12014년 6월 23일2015년2.6.x로 마이그레이션
2.3.x2.3.02014년 2월 20일2014년실험적 릴리스
2.2.x2.2.02013년 10월 15일2014년초기 Hadoop 2.x
2.1.x2.1.1-beta2013년 9월 26일2014년베타 릴리스
2.0.x2.0.6-alpha2013년 11월 18일2014년알파 릴리스

🔴 Hadoop 1.x 및 0.x EOL 버전들

릴리스 라인마지막 버전마지막 릴리스EOL 선언일EOL 사유
1.2.x1.2.12013년 7월 22일2014년Hadoop 2.x 전환
1.1.x1.1.22013년 2월 15일2014년1.2.x로 마이그레이션
1.0.x1.0.42012년 9월 13일2013년1.1.x로 마이그레이션
0.23.x0.23.112014년 6월 4일2015년2.x 전환용 브리지
0.22.x0.22.02011년 12월 10일2012년짧은 수명
0.21.x0.21.02010년 8월 23일2011년개발 릴리스
0.20.x0.20.205.02011년 9월 1일2012년안정화 릴리스

 

 

6. 버전별 상세 분석 및 마이그레이션 가이드

🚀 Hadoop 3.4.x (Current Stable)

권장 대상: 새로운 프로젝트, 최신 기능이 필요한 환경

주요 개선사항:

  • AWS SDK v2 완전 지원: S3A 성능 대폭 향상
  • S3A 조건부 쓰기 지원: 데이터 일관성 개선
  • Lean Tarball: AWS SDK 제외하여 50% 크기 감소
  • ARM64 바이너리 지원: Apple Silicon 및 ARM 서버 지원
  • JDK 8 지원 중단 예정: JDK 11+ 권장, 향후 버전에서 JDK 8 완전 중단

⚠️ 주의사항:

  • JDK 8 사용 시 Protobuf 호환성 이슈 가능
  • 프로덕션 환경에서는 JDK 11 이상 사용 권장

🛡️ Hadoop 3.3.x (Long-term Support)

권장 대상: 안정성을 중시하는 프로덕션 환경

주요 특징:

  • 보안 중심: 중요한 보안 패치 및 통합 수정에 집중
  • Vectored IO API: 고성능 파일시스템 I/O 지원
  • YARN Federation 개선: 대규모 클러스터 관리
  • 정기적인 보안 패치: 6개월 주기 보안 업데이트

적합한 환경:

  • 대규모 프로덕션 클러스터
  • 엄격한 보안 요구사항
  • 안정성이 최우선인 환경

📋 Hadoop 2.10.x (Legacy Support)

권장 대상: Hadoop 2.x에서 벗어나지 못하는 레거시 환경

주의사항:

  • 새로운 기능 개발 중단: 보안 패치와 중요 버그 수정만 제공
  • Java 7/8 지원: 레거시 Java 환경 지원
  • 마이그레이션 필수: 3.3.x 이상으로의 업그레이드 강력 권장

⚠️ 중요: 2022년 5월 이후 릴리스 없음, 가능한 빠른 시일 내 업그레이드 필요

🚫 즉시 업그레이드 필요한 버전들

Hadoop 3.2.x (비공식 EOL)

  • 상태: 실질적 지원 중단 (2022년 7월 마지막 릴리스)
  • 위험도: 높음 – 보안 패치 없음
  • 권장 조치: 3.3.x 이상으로 즉시 업그레이드

Hadoop 3.1.x (공식 EOL)

  • 상태: 2021년 5월 공식 EOL 선언
  • 위험도: 매우 높음 – 4년간 보안 패치 없음
  • 권장 조치: 즉시 3.3.x 이상으로 업그레이드

Hadoop 3.0.x (공식 EOL)

  • 상태: 2019년 실질적 EOL
  • 위험도: 극도로 높음 – 6년간 지원 없음
  • 권장 조치: 즉시 업그레이드 필수

 

 

7. 버전 선택 시 고려사항

📊 환경별 권장 버전 매트릭스

환경 유형권장 버전이유마이그레이션 우선순위
신규 프로젝트3.4.x최신 기능, 장기 지원
대규모 프로덕션3.3.x안정성, 정기 보안 패치
클라우드 환경3.4.x클라우드 최적화, S3A 성능
레거시 Java 7/82.10.x → 3.3.xJava 호환성 유지하며 단계적 업그레이드높음
현재 3.2.x 사용3.3.x 또는 3.4.x보안 위험 해소매우 높음
현재 3.1.x 사용3.3.x 또는 3.4.xEOL 버전, 즉시 업그레이드 필요긴급
현재 3.0.x 사용3.3.x 또는 3.4.x극도로 오래된 버전긴급

🔍 호환성 검토사항

Java 버전 호환성

Hadoop 버전지원 Java 버전권장 Java 버전비고
3.4.xJDK 8+JDK 11+JDK 8 지원 중단 예정
3.3.xJDK 8+JDK 8, 11안정적 지원
2.10.xJDK 7, 8JDK 8레거시 지원

의존성 라이브러리 체크리스트

필수 확인 항목:

  • Spark 호환성: Hadoop 버전별 지원되는 Spark 버전 확인
  • Hive 호환성: 특히 3.x 이상에서 Hive 3.x 필요
  • HBase 호환성: 각 Hadoop 버전별 지원 HBase 확인
  • 기존 애플리케이션: MapReduce, YARN 애플리케이션 호환성
  • 클러스터 관리 도구: Ambari, Cloudera Manager 등

설정 파일 마이그레이션

🔧 주요 변경사항:

  • 포트 변경: 3.x에서 기본 포트 번호 변경 (ephemeral range 회피)
  • 설정 키 변경: 일부 설정 속성명 변경
  • 보안 설정: Kerberos, SSL 설정 방식 개선
  • YARN 설정: 리소스 관리 방식 개선

 

 

8. 실제 마이그레이션 방향

📋 단계별 업그레이드 접근법

1단계: 평가 및 계획 (2-4주)

현재 환경 분석:

# 현재 Hadoop 버전 확인
hadoop version

# 클러스터 상태 점검
hdfs dfsadmin -report
yarn node -list -all

# 애플리케이션 목록 확인
yarn application -list -appStates ALL

호환성 매트릭스 작성:

  • [ ] Java 버전 호환성
  • [ ] 의존 라이브러리 버전 매트릭스
  • [ ] 기존 애플리케이션 호환성 테스트
  • [ ] 설정 파일 마이그레이션 계획

리스크 평가:

  • 다운타임 허용 시간
  • 데이터 손실 위험도
  • 롤백 계획 수립

2단계: 테스트 환경 구축 (4-6주)

POC 환경 구성:

# 테스트 클러스터 구성
# 프로덕션과 동일한 데이터 샘플 사용
# 모든 애플리케이션 테스트 수행

성능 벤치마크:

  • [ ] HDFS 읽기/쓰기 성능
  • [ ] MapReduce job 성능
  • [ ] YARN 리소스 사용률
  • [ ] 네트워크 대역폭 사용량

애플리케이션 호환성 검증:

  • [ ] Spark job 실행
  • [ ] Hive 쿼리 테스트
  • [ ] HBase 데이터 액세스
  • [ ] 커스텀 애플리케이션 테스트

3단계: 프로덕션 마이그레이션 (2-8주)

🔵 블루-그린 배포 방식 (권장)

# 1. 새 클러스터 구축
# 2. 데이터 복제 및 동기화
# 3. 트래픽 점진적 전환
# 4. 검증 후 기존 클러스터 해제

🔄 롤링 업그레이드 방식

# 1. DataNode부터 순차적 업그레이드
# 2. Secondary NameNode 업그레이드
# 3. NameNode 업그레이드 (마지막)
# 4. ResourceManager 및 NodeManager 업그레이드

데이터 무결성 검증:

# HDFS 파일시스템 체크
hdfs fsck / -files -blocks -locations

# 데이터 일관성 확인
hadoop fs -checksum /path/to/important/data

# 복제본 상태 확인
hdfs dfsadmin -metasave metasave_output.txt

⚠️ 긴급 업그레이드가 필요한 시나리오

🚨 Hadoop 3.1.x 사용자 (긴급)

위험도: 매우 높음 (4년간 보안 패치 없음)

즉시 조치사항:

  1. 네트워크 보안 강화: 방화벽 및 VPN 설정 점검
  2. 접근 제어 강화: Kerberos 인증 필수 적용
  3. 모니터링 강화: 비정상 접근 감시
  4. 업그레이드 계획 수립: 1개월 내 3.3.x 이상으로 업그레이드

권장 업그레이드 경로:

3.1.x → 3.3.6 (안정성 우선)
또는
3.1.x → 3.4.2 (최신 기능 필요시)

🚨 Hadoop 3.2.x 사용자 (높음)

위험도: 높음 (2년 이상 유지보수 중단)

권장 조치:

  1. 보안 스캔 수행: 알려진 취약점 점검
  2. 3개월 내 업그레이드: 3.3.x 또는 3.4.x로 이전
  3. 임시 보안 조치: WAF 및 네트워크 세분화 적용

권장 업그레이드 경로:

3.2.x → 3.3.6 (호환성 우선)
또는
3.2.x → 3.4.2 (최신 기능 활용)

 

 

8. 주요 참고 자료 및 링크

 

Apache Hadoop의 버전 관리는 다른 오픈소스 프로젝트보다 복잡하지만, 이는 다양한 기업 환경의 요구사항을 반영한 결과입니다. 중요한 것은 현재 사용 중인 버전의 지원 상태를 정확히 파악하고, 적절한 시점에 업그레이드 계획을 수립하는 것입니다. 특히 EOL이 선언된 3.1.x 버전을 아직 사용하고 계신다면, 보안상의 이유로 즉시 업그레이드를 고려해야 합니다. 새로운 프로젝트라면 3.4.x를, 안정성을 중시한다면 3.3.x를 선택하시는 것이 좋겠습니다.

정기적으로 Apache Hadoop 커뮤니티의 공지사항을 확인하시고, 여러분의 환경에 가장 적합한 버전을 선택하여 안정적이고 효율적인 빅데이터 환경을 구축하시기 바랍니다. 🙂

 

댓글 남기기