빅데이터 환경에서 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.x 3.4.2 2025년 8월 29일 활성 최신 기능, AWS SDK v2 지원, Lean tarball JDK 8+ (JDK 11+ 권장)
3.3.x 3.3.6 2023년 6월 23일 활성 (유지보수) 안정성 중점, 보안 업데이트 전용 JDK 8+
2.10.x 2.10.2 2022년 5월 31일 활성 (유지보수) Legacy 지원, 중요 버그 수정만 JDK 7, 8

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

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

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

버전 릴리스 날짜 상태 주요 변경사항
3.3.6 2023년 6월 23일 현재 보안 업데이트, 117개 버그 수정
3.3.5 2023년 3월 24일 지원됨 Vectored IO API, ARM64 바이너리
3.3.4 2022년 8월 4일 지원됨 ABFS 중요 버그 수정
3.3.3 2022년 6월 17일 지원됨 보안 업데이트 중심
3.3.2 2022년 6월 17일 지원됨 284개 개선사항
3.3.1 2022년 6월 17일 지원됨 초기 3.3 안정화
3.3.0 2020년 11월 5일 지원됨 3.3 라인 시작

 

 

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

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

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

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

버전 릴리스 날짜 상태 주요 변경사항
3.2.4 2022년 7월 22일 마지막 153개 버그 수정 및 개선
3.2.3 2022년 6월 17일 EOL 328개 버그 수정
3.2.2 2021년 1월 14일 EOL 안정성 개선
3.2.1 2020년 7월 3일 EOL 초기 버그 수정
3.2.0 2019년 1월 21일 EOL 3.2 라인 시작

 

 

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

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

🔴 Hadoop 3.x EOL 버전들

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

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

버전 릴리스 날짜 상태 주요 변경사항
3.1.4 2020년 11월 5일 EOL 마지막 3.1.x 릴리스
3.1.3 2020년 7월 3일 EOL 보안 및 버그 수정
3.1.2 2019년 2월 6일 EOL 안정성 개선
3.1.1 2018년 8월 8일 EOL 초기 버그 수정
3.1.0 2018년 4월 4일 EOL 3.1 라인 시작

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

버전 릴리스 날짜 상태 주요 변경사항
3.0.3 2018년 5월 31일 EOL 마지막 3.0.x 릴리스
3.0.2 2018년 5월 17일 EOL 버그 수정
3.0.1 2018년 4월 16일 EOL 초기 버그 수정
3.0.0 2017년 12월 13일 EOL Hadoop 3.0 GA 릴리스

🔴 Hadoop 2.x EOL 버전들

릴리스 라인 마지막 버전 마지막 릴리스 EOL 선언일 EOL 사유
2.9.x 2.9.2 2018년 11월 19일 2019년 2.10.x로 마이그레이션
2.8.x 2.8.5 2018년 9월 15일 2019년 장기간 개발 지연
2.7.x 2.7.7 2019년 3월 30일 2020년 2.10.x로 마이그레이션
2.6.x 2.6.5 2016년 12월 11일 2017년 2.7.x로 마이그레이션
2.5.x 2.5.2 2014년 11월 19일 2015년 짧은 수명의 릴리스
2.4.x 2.4.1 2014년 6월 23일 2015년 2.6.x로 마이그레이션
2.3.x 2.3.0 2014년 2월 20일 2014년 실험적 릴리스
2.2.x 2.2.0 2013년 10월 15일 2014년 초기 Hadoop 2.x
2.1.x 2.1.1-beta 2013년 9월 26일 2014년 베타 릴리스
2.0.x 2.0.6-alpha 2013년 11월 18일 2014년 알파 릴리스

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

릴리스 라인 마지막 버전 마지막 릴리스 EOL 선언일 EOL 사유
1.2.x 1.2.1 2013년 7월 22일 2014년 Hadoop 2.x 전환
1.1.x 1.1.2 2013년 2월 15일 2014년 1.2.x로 마이그레이션
1.0.x 1.0.4 2012년 9월 13일 2013년 1.1.x로 마이그레이션
0.23.x 0.23.11 2014년 6월 4일 2015년 2.x 전환용 브리지
0.22.x 0.22.0 2011년 12월 10일 2012년 짧은 수명
0.21.x 0.21.0 2010년 8월 23일 2011년 개발 릴리스
0.20.x 0.20.205.0 2011년 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/8 2.10.x → 3.3.x Java 호환성 유지하며 단계적 업그레이드 높음
현재 3.2.x 사용 3.3.x 또는 3.4.x 보안 위험 해소 매우 높음
현재 3.1.x 사용 3.3.x 또는 3.4.x EOL 버전, 즉시 업그레이드 필요 긴급
현재 3.0.x 사용 3.3.x 또는 3.4.x 극도로 오래된 버전 긴급

🔍 호환성 검토사항

Java 버전 호환성

Hadoop 버전 지원 Java 버전 권장 Java 버전 비고
3.4.x JDK 8+ JDK 11+ JDK 8 지원 중단 예정
3.3.x JDK 8+ JDK 8, 11 안정적 지원
2.10.x JDK 7, 8 JDK 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 커뮤니티의 공지사항을 확인하시고, 여러분의 환경에 가장 적합한 버전을 선택하여 안정적이고 효율적인 빅데이터 환경을 구축하시기 바랍니다. 🙂

 

댓글 남기기