본문 바로가기
Data Analysis/Zeppelin

[Zeppelin] Apache Zeppelin 설치

by 붕어고기 2020. 5. 10.
반응형

Apache Zeppelin 란?

Apache Spark를 사용하여 데이터를 분석할 때, 웹 기반의 노트북(Notebook)인 Apache Zeppelin을 이용하면 보다 더 편리하게 데이터 분석이 가능합니다.

 

zeppelin 로고

 

Apache Zeppelin 설치

Zeppelin을 설치하는 방법에는 크게 2가지가 존재합니다.

  1. Docker 설치
  2. 로컬 머신 설치

제 환경은 아래와 같습니다.

  • Mac Catalina
  • OpenJDK 1.8
  • Docker 19.03.5 (도커로 설치할 경우 필요)

 

의존성

Apache Zeppelin 을 설치하기 위해서는 JDK 1.7 버전 이상이 설치되어 있어야 합니다.

1. Docker 설치 과정

Docker Hub 에는 다양한 도커 이미지들을 업로드, 다운로드 할 수 있습니다.

Apache Zeppelin 역시 공식 이미지가 존재하며, 아래의 커맨드로 쉽게 다운로드 할 수 있습니다.

$ docker pull apache/zeppelin:0.8.2

 

저는 안정화된 0.8.2 버전을 선택했고, 정상적으로 이미지를 다운로드할 경우 아래의 커맨드로 확인할 수 있습니다.

$ docker images | grep "zeppelin"

 

해당 이미지를 실행시키기 위해선, 아래의 커맨드를 입력하면 됩니다. (컨테이너 실행)

$ docker run -p 8080:8080 --rm --name zeppelin apache/zeppelin:0.8.2

 

다만, 컨테이너는 종료될 경우, 컨테이너 속 데이터가 날라가게 됩니다.

zeppelin 로그, 데이터, 노트북들이 날라가게 되는데, 이를 방지하기 위해 로컬의 volume을 mount 할 수 있습니다.

volume을 mount 하기 전에는 디렉터리를 생성해줘야 합니다.

#### 폴더 생성 ####
$ mkdir data logs notebook

#### 컨테이너 실행 ####
$ docker run -d --rm \
  -p 8080:8080 \
  -v $PWD/logs:/logs \
  -v $PWD/data:/data \
  -v $PWD/notebook:/notebook \
  -e ZEPPELIN_ADDR='0.0.0.0' \
  -e ZEPPELIN_LOG_DIR='/logs' \
  -e ZEPPELIN_NOTEBOOK_DIR='/notebook' \
  --name zeppelin apache/zeppelin:0.8.2
  • -v 옵션으로 로컬 볼륨을 컨테이너와 연결할 수 있습니다.
  • -e 옵션으로 컨테이너에 환경변수를 넘겨줄 수 있습니다.

 

정상적으로 컨테이너가 구동되었을 경우, docker ps 명령어를 통해 확인할 수 있습니다.

$ docker ps | grep "zeppelin"

 

2. 로컬 설치 과정

Zeppelin Download 에 접속한 뒤, 원하시는 버전을 다운로드 합니다.

저는 0.8.2 버전 (zeppelin-0.8.2-bin-all.tgz) 을 다운로드 했습니다.

 

다운로드가 완료되면, 아래의 커맨드로 압축을 풀어줍니다.

$ tar -xzf zeppelin-0.8.2-bin-all.tgz

 

그 후, 아래의 커맨드로 Zeppelin을 실행합니다.

#### 폴더로 이동 ####
$ cd zeppelin-0.8.2-bin-all

#### zeppelin 실행 ####
$ bin/zeppelin-daemon.sh start

 

localhost:8080으로 접속해보면, 아래와 같은 화면을 확인할 수 있습니다.

Apache Zeppelin 초기 화면

 

작업이 끝나고 Zeppelin을 종료할 때는 아래의 커맨드를 입력하면 됩니다.

bin/zeppelin-daemon.sh stop

 

참고

  1. Apache Zeppelin Official Site
  2. Apache Zeppelin Github
  3. Apache Zeppelin Docker Hub
반응형

'Data Analysis > Zeppelin' 카테고리의 다른 글

[Zeppelin] 노트북 생성 및 튜토리얼 진행  (1) 2020.05.16

댓글