폐쇄망 환경에서의 특정 버전 Cloudera Manager (CDH) 수동 설치 가이드
당사에서 빅데이터 솔루션 빅데이터 모니터링 플랫폼의 PoC(Proof of Concept)나 성능 검증을 진행할 때, 자체 랩(Lab) 환경이나 고객사의 물리 서버 망에 Hadoop 클러스터를 제로베이스부터 밑바닥부터 구축해야 하는 경우가 많았습니다.
일반적으로 Cloudera Manager(이하 CM)는 외부 인터넷망과 연결된 상태에서 ./cloudera-manager-installer.bin 파일 하나만 실행하면, 자동으로 최신 버전의 저장소를 잡고 의존성을 긁어와 마법사처럼 설치를 종료해 줍니다.
하지만 완전한 폐쇄망이거나 고객사가 사용 중인 특정 CDH 버전 (예: 5.4.8, 5.11.2 등)과 정확히 동일한 하위 버전의 테스트 베드를 만들어야 할 때는 이 인스톨러가 마음대로 최신 버전을 다운로드해 버려 테스트 환경이 오염되는 치명적인 문제가 발생합니다.
1. Installer: 외부 Repo 패키지 강제 다운로드 넘기기
플랫폼 에이전트가 타겟 CDH 버전에 호환되는지 검증하기 위해서는 사전에 USB나 임시 서버로 다운로드해 둔 로컬 Repo 파일들만 바라보게 해야 합니다.
이때, 인스톨러 바이너리를 실행할 때 --skip_repo_package=1 파라미터를 붙여주는 것이 핵심입니다. 이 플래그를 주면 CM 인스톨러가 무작정 외부에서 cloudera-manager-server 패키지를 다운받으려 시도하는 것을 막고, 우리가 미리 구성해둔 /etc/yum.repos.d/cloudera-manager.repo (로컬 파일시스템 지향)를 이용해 설치 로직을 진행하게 됩니다.
$ chmod +x cloudera-manager-installer.bin
$ sudo ./cloudera-manager-installer.bin --skip_repo_package=12. 특정 버전 오프라인 설치를 위한 필수 리소스 맵스
이전 글인 RPM Download with Dependencies에서 다루었던 로컬 YUM 레포지토리 구축과 완벽하게 맞물리는 내용입니다. 특정 버전의 클러스터를 구축하기 위해서는 인스톨러 파일 말고도 아래 링크들에 흩어진 자원들을 미리 외부망에서 압축 파일로 다운받아 반입해야 합니다.
- CM Repo Tarball
CM Server와 Agent 데몬 구동에 필요한 패키지 모음입니다. 압축을 풀고 로컬 웹서버나
file:///경로로 YUM repo를 잡아줍니다. - CDH Parcels
실제 Hadoop, HBase, Hive 등 빅데이터 에코시스템의 바이너리가 뭉쳐진 대용량 묶음입니다.
.parcel파일과 메타 정보인.sha파일을 다운로드하여 Cloudera Manager 화면 내의 “Parcel 저장소 설정”에 제공해야 합니다.- 예: CDH 5.11.2.4 Parcels 경로: https://archive.cloudera.com/cdh5/parcels/5.11.2.4/
- CM Installer Archive
특정 버전에 매칭되는
cloudera-manager-installer.bin파일 릴리즈 보관소입니다.
관련 공식 문서 레퍼런스:
버전 고정과 오프라인망의 제약 조건을 뚫고 클러스터가 녹색 불빛 한 치의 오차도 없이 일제히 기동될 때의 그 희열은 인프라 엔지니어만이 알 수 있는 즐거움입니다.