Tutorial Ambari 3.0
본 튜토리얼의 원본 출처는 Ward Viaene님의 GitHub 저장소이며, ambari 3.0 디렉터리 구조와 스크립트를 포함하고, Docker 기반의 4‑node Ambari 클러스터를 가장 빠르고 간편하게 설치할 수 있도록 설계된 원본 자료입니다. 다만, 설치 환경의 상이함으로 인해 원본을 Github 사본 저장소로 포크(fork)하여 일부 코드 및 환경 설정을 수정한 버전 기준으로 구성되었습니다. 따라서 튜토리얼에서 사용된 모든 스크립트, 설정 파일, Docker Compose 구성은 원본을 토대로 최적화한 사본 기준이며, 이를 통해 실제 환경에서도 30분 안에 Ambari 3.0 클러스터를 직접 구동하고 UI를 탐색해 보실 수 있습니다.
본 내용은 Ambari 구조·Docker 기반 설치 흐름·UI 탐색 중심으로 구성되며, HA 구성, 커스터마이즈 된 인증 설정, 실운영 보안 강화 등 복잡한 항목은 배제했습니다. 목적은 “최단 경로로 설치하고 직접 작동시켜 보는 경험”에 초점을 맞춘 실습 튜토리얼입니다.
편의상 설치 과정을 음슴체로 기록함.
OS: WSL2 Linux on Windows 11
Docker: Docker-Desktop for Windows
(NOTE) 본 튜토리얼 진행 환경이지, 반드시 이 환경에서만 진행해야 하는 것은 아님. Docker 지원 환경이면 모두 가능할 것으로 예상.
기본 작업은 WSL 배포본 리눅스에서 진행.
git clone git@github.com:call518/ambari-3.0-hadoop-ops-course.git
cd ambari-3.0-hadoop-ops-course/ambari3/
docker-compose up -d
[+] Running 5/5
✔ Network ambari3_ambari_net Created 0.0s
✔ Container ambari3-bigtop-hostname3-1 Started 0.6s
✔ Container ambari3-bigtop-hostname2-1 Started 0.4s
✔ Container ambari3-bigtop-hostname1-1 Started 0.5s
✔ Container ambari3-bigtop-hostname0-1 Started 0.5s
./run.sh
최초 실행 시, 설치에 필요한 YUM 저장소 다운로드 수행으로 상당한 시간 소요.
다운로드 완료 후, 4개 컨테이너 대상으로, Ambari Server/Agent 설치/설정 과정 자동 진행.
각자의 도커 네트워크 환경에 따라 IP는 다를 수 있음.
cat conf/hosts
172.28.0.100 bigtop-hostname0.demo.local bigtop-hostname0.demo.local
172.28.0.101 bigtop-hostname1.demo.local bigtop-hostname1.demo.local
172.28.0.102 bigtop-hostname2.demo.local bigtop-hostname2.demo.local
172.28.0.103 bigtop-hostname3.demo.local bigtop-hostname3.demo.local
오류 없이 정상 완료 되었다면, http://localhost:8080 으로 Ambari Web-UI 접속.
(NOTE) Docker 컨테이너 포트 포워딩 확인 필요.
(NOTE) 기본 ID/PW: admin / admin
원하는 Cluster 이름 입력.
Stack은 BIGTOP-3.3.0을 선택
YUM Repo는 도커 컨테이너에 사용된 이미지가 RockyLinux8이므로, redhat8만 남기고 나머지는 모두 삭제(Remove)
redhat8 항목 입력폼에는, 앞서 확인한 hosts 파일 내용 중, 0번 컨터이너의 호스트명 bigtop-hostname0.demo.local이 YUM Repo 역할을 하므로 아래 주소를 입력
http://bigtop-hostname0.demo.local
4대 컨테이너 모두 Ambari Agent로 사용 등록.
Ambari Agent 초기 구성을 위해, root 유져의 SSH 개인키 입력 1회 필요.
확인된 키 값에서 -----BEGIN RSA PRIVATE KEY----- 부터 -----END RSA PRIVATE KEY----- 까지 복사/붙여넣기.
<개인키 확인 절차>
docker-compose exec -it bigtop-hostname0 /bin/bash
[root@bigtop-hostname0 /]# cat /root/.ssh/id_rsa
-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEA0Et5YcubKlNvpHpYVbN8++mt3jMCJZ6pn3P3lUxnRQkPL1US
mvaaE7TDeMUNl1OwTyyE8UMFB5yvmWS1Br0r0yWb4qFaWvTnKtJqgQ6Nm+zhh3Pm
tI927u4F7nEwFceRyoj/xTdk0UCSKZB6a2ciXaWyWebaJjo/V7mVFP8uX74yBIAJ
Ixx89lCIHbahwSl47WEPtVR5Plr7i5bqJ0hivZCI8b6ibCFm6vD85T30tzYuPAAg
vK5zD+ZIottz94r3N9URBrhEa+QGaCOBQiflX3AbPO+xPOknD4G9ZmjKfJ+frM3h
aRS+Q0X+atj2nryrGcabps5YdHcrBlUPBSamjwIDAQABAoIBAGUFhdxJbHrttoLW
F4uRHrfq0LmokYz/U5MTImvVf2x7BVNWdkyT94xBKmCjaYEQRL1RgTSl5YWYl43U
yvt2ug+Q+PbEfNcKWidpn9/x1/pcu9D/BFBkGDGvXU8UtFaL0QiiwzG6OPpHz9u6
x7TZc1Bp8YMqtHi/3ULFrildzfb+nppIIkV+9iCADBxKmal1qC6rQB7sfS3/xhbT
v+y/RdkemFLfC+dUnajpU4E4kkR1OziEGh3QGzbVnqsmwuh9UqqQc1905ACpXNZZ
BlfS5G6zaG6qdZZqEQ2y0xrY6E81AkgBOJH5HAWwJ6CMJvvSL7MExlskwb1+bb6u
NWl1qfECgYEA7eecPpxJ85VvV94AyZvgpn7vE+p/iDTa1Y5QjDeNoXqry9PWDyDZ
sHBJuLeiwyg+Vn0AwNoU94RMFDgpYTwLJmJDVhupU21AqO/cUX3yZMQJrIeWrSKS
I/V3gxTvvdLiczWIJ3C2xO1CvBFP1p+Uv6Fktr0rNZ4Z+q2IeHtVAykCgYEA4CNP
oZk/k4Xc28ZMAW44Tk8iqxjEPIpd5L8GowEoMo4r9ztHY+R/VagHxoFibqw/tlLU
BbAVFK/Mg8abDdVgEsAB6ImV2iYVkYSR29gDHSA6169jd92dWlyj8TCF+60OADds
Ya3u/QKil1bSvD0ZSAKmz2q4OQIg80FrH90ZCvcCgYAMc4DD7h4Yt4t6R842vwfE
7wPIQQ+nq0yAvNAOZqHs/6SaKF4dsJR0HYxeNI46NJL+p9AwR7mtMqlgrYfM5P2Y
ZrArg4sbKK6nqNYZFcRn7bKr6vTB3vtTEnfMzn21q6HaccTMe6O1Ls29VhKdowB/
/wxsW/408i9d5VMtKxdJ8QKBgQC4kltw55HDGejV0mWkh+82DVSvMKXodMj9JZGB
ieJgP1NVNCuFxxRUpRpCDSnRmWad7XdLd8TkVCBGI7ZrndqPli38H9CW4+W+/zxd
nXRy96d9FaEDhCufzcnzQ9IRfmCZLQrDJUg4cYMSvRyshmPbONPE2kz6JRadOrHM
e3Wz4QKBgEANGQrSUi6+Qqc5/Qm0CcRl5YT2bJbiMDDFW0dEoQtq7B4NwBcSnFkF
trwMfn9LPyPtcdA03PtajsyWRWTE81Ua9H8fksj1cD10o07JE/edjDZx/WYPh1BD
/DeGsBoI0BdW837MeAGBK0O/Yz6QMwCx/vdEZomZddtA+GWsQt1W
-----END RSA PRIVATE KEY-----
<Target Hosts>
bigtop-hostname0.demo.local
bigtop-hostname1.demo.local
bigtop-hostname2.demo.local
bigtop-hostname3.demo.local
(NOTE) 초기 설치 시에는 최소 모드로 설치하고, 추가 필요한 서비스는 별도 추가 가능
본 튜토리얼에서는 HDFS, YARN, MapReduce2, Zookeeper, Ambari Metrics 선택.
(주의) 너무 많은 서비스 설치가 필요할 경우, 충분한 메모리 확보 선행 필요.
의존성 서비스 미선택 경고가 발생하나, 튜토리얼 진행에 필수사항이 아니므로, "PROCEED ANYWAY" 클릭
(NOTE) Docker 컨테이너 기반 실행환경이라 특별히 변경할 필요 없음.
Datanode는 모두 체크
Router는 불필요/체크해제
Nodemanager는 모두 체크
Ranger Tagsync는 1대 유지
Client는 모두 선택
(NOTE) 편의상 "admin"으로 설정함.
(NOTE) 기본값 사용.
(NOTE) 기본값 사용.
(NOTE) "ssl.client.keystore.password" 비번 입력 시, 편의상 "admin" 사용.
이상, Ambari 3.0을 이용해 Docker 컨테이너 환경에서 Hadoop환경을 배포하고, HDFS 동작 테스트까지 해보는 튜토리얼이 완료되었습니다. 추가적인 서비스들은 별도로 진행해 보세요.
[원문 YouTube 시연 영상] https://youtu.be/Ao95 xAGsA20? si=XE1 mzjaLSIKR7 WNR
이 글이 도움이 되셨다면, 다른 글도 함께 읽어보세요
말로 하는 AMBARI (feat. MCP) - https://brunch.co.kr/@jungin/4
LLM-Based Log Analyzer - https://github.com/call518/LogSentinelAI