본문 바로가기
빅데이터 분석 환경 구축

14. Zeppelin 설치 및 PySpark 연동

by pavi03 2022. 4. 25.

- 지금까지 설정한 Hadoop, Yarn, Spark, Zookeeper 클러스터 환경에 Zeppelin을 연동하기 위해 설치 및 환경설정을 진행한다.

 

1. Zeppelin 0.10.1 설치

# 디렉토리 이동
cd /install_dir

# Zeppelin 다운로드
sudo wget https://dlcdn.apache.org/zeppelin/zeppelin-0.10.1/zeppelin-0.10.1-bin-all.tgz

# Zeppelin 압축 해제
sudo tar -zxvf zeppelin-0.10.1-bin-all.tgz -C /usr/local/

# Zeppelin 디렉토리 이름 변경
sudo mv /usr/local/zeppelin-0.10.1-bin-all/ /usr/local/zeppelin

# Zeppelin 디렉토리 소유자 변경
sudo chown -R $USER:$USER /usr/local/zeppelin

 

2. Zeppelin 환경 변수 설정

# 시스템 환경변수 편집
sudo vim /etc/environment

# 아래 내용 추가 후 저장
PATH 뒤에 ":/usr/local/zeppelin/bin" 추가
ZEPPELIN_HOME="/usr/local/zeppelin"

# 시스템 환경변수 활성화
source /etc/environment

# 사용자 환경변수 편집
sudo echo 'export ZEPPELIN_HOME=/usr/local/zeppelin' >> ~/.bashrc

# 사용자 환경변수 활성화
source ~/.bashrc

 

3. zeppelin-site.xml 파일 설정

# Zeppelin 환경설정 디렉토리 이동
cd /usr/local/zeppelin/conf

# zeppelin-site.xml 파일 복사
cp zeppelin-site.xml.template zeppelin-site.xml

# zeppelin-site.xml 파일 편집
vim zeppelin-site.xml

# 아래 내용 수정 후 저장
<property>
  <name>zeppelin.server.addr</name>
  <value>0.0.0.0</value>
  <description>Server binding address</description>
</property>

<property>
  <name>zeppelin.server.port</name>
  <value>18888</value>
  <description>Server port.</description>
</property>

 

4. zeppelin-env.sh 파일 설정

# zeppelin-env.sh 파일 복사
cp zeppelin-env.sh.template zeppelin-env.sh

# zeppelin-env.sh 파일 편집
vim zeppelin-env.sh

# 아래 내용 수정 후 저장
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export HADOOP_HOME=/usr/local/hadoop
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export SPARK_HOME=/usr/local/spark
export SPARK_MASTER=yarn
export ZEPPELIN_PORT=18888
export PYTHONPATH=/usr/bin/python3
export PYSPARK_PYTHON=/usr/bin/python3
export PYSPARK_DRIVER_PYTHON=/usr/bin/python3

 

5. Zeppelin 실행

/usr/local/zeppelin/bin/zeppelin-daemon.sh start

# Zeppelin 실행
Zeppelin start

 

6. 보안 규칙 편집

 

6. Zeppelin WEB UI 확인 : http://[nn1의 Public IP]:18888 (기본 계정 : admin / admin)

 

7. Zeppelin WEB UI 환경설정

- 우측에 있는 “edit” 버튼을 눌러 편집창을 실행하고 “spark.submit.deployMode” 값을 “cluster” 로 바꾼다.

- “PYSPARK_DRIVER_PYTHON” 값을 python에서 “/usr/bin/python3” 으로 바꾼다