지난 포스팅에서 도커(docker)환경에 빅데이터 솔루션인 하둡(apache hadoop)과 스파크(apache spark)를 설치했습니다.
https://lsjsj92.tistory.com/422
해당 글을 참조하시면 되겠습니다.
오늘은 세번째 포스팅입니다. 제플린을 설치해보도록 하겠습니다.
제플린은 스파크 개발 시 편리하게 도와주는 일종의 파이썬 주피터 노트북(jupyter notebook)과 같은 역할을 합니다.
https://zeppelin.apache.org/
해당 사이트에서 다운로드를 받으시면 됩니다.
저는 하둡과 스파크가 설치되어 있는 centos7에서 wget으로 다운 받았습니다.
이렇게요!
그리고 압축을 풀어주시면 됩니다.
먼저 동작이 잘 되는지 테스트를 해봅니다.
아직 설정은 하지 않고 그냥 화면이 잘 나오는지 봅니다.
zeppelin-daemon.sh을 start합니다.
만약 도커 8080이 로컬 8080과 연결되어 있다면(-p옵션) 위 처럼 docker ip주소 : 8080을 하면 제플린 화면이 나올 것입니다!
끝?!
아닙니다 ㅎㅎ
여러가지 설정을 해주어야 합니다.
스파크랑 연동도 해주고 등을 해야하죠
먼저 shiro.ini 파일을 template로 되어 있던 것을 cp로 복사합니다.
그리고 해당 부분을 확인합니다.
admin = password1, admin 이렇게 되어 있는데요
admin은 계정입니다. password1은 비밀번호이구요
admin은 admin 권한(역할)을 갖고 있다는 표현입니다.
이후 zeppelin-site.xml을 열어줍니다.
zeppelin-site.xml을 열면 위와 같은 화면이 나오는데요
포트를 지정할 수 있습니다. 저는 8088으로 바꿔주었습니다.
그리고 zeppelin.anonymous.allowed 부분이 있습니다. 익명의 사용자를 허가 할 것이냐? 라는 것인데요
false로 납둡니다.
그리고 이 제플린을 사용하려면 아까 보았던 계정으로 로그인해야 가능합니다.
다음은 zepplein-env.sh을 열어서 환경설정을 해줍니다.
여기서 파이썬과 스파크를 연결해줍니다.
SPARK_HOME옵션에 spark 설치 위치를 적어줍니다.
그리고 PYSPARK_PYTHON과 PYTHONPATH에 python이 설치된 경로를 지정해줍니다
자! 여기까지 제플린 설정을 마쳤습니다
이제 잠시 커널을 빠져나와 현재 커널을 백업하겠습니다.
docker commit hadoop_spark~를 이용해서 이미지로 백업을 해둡니다.
그리고 사진에는 없지만 tag까지 달아주었습니다. 아마 제 지난 포스팅 보시면 tag 다는 방법이 있으니 참고하시면 되겠습니다
그리고 위와 같은 명령어로 실행!
제플린을 구동시켜주면
이렇게 제플린이 동작되는 것을 확인할 수 있습니다.
마지막으로 docker를 hub에 올렸습니다.
lsjsj92/hadoop_spark_basic:2 로 올렸습니다.
여기까지 도커 환경에서 하둡, 스파크, 제플린 설치 과정이었습니다!
시간 여유가 될 지 모르겠지만 가능하다면 mysql과 hive를 연결하는 등의 작업도 해보려고 합니다.
하지만, 윈도우 환경에서 도커 사용하기가 너무 힘드네요.. 지금 재부팅했더니 갑자기 이미지가 다 날라가버려서.. 멘붕입니다
해볼 수 있으면 해보겠습니다 ㅠㅠ