zeppelin 빌드하기
최신 zeppelin 빌드하기
mac 기준으로 작성합니다.
github 가서 zepplin githup 또는 terminal 에서
다운로드 받을때는 최신 버전을 받도록 하자.
개발중이므로 rc version을 사용하길 권장함
마스터버전다운링크
git clone https://github.com/apache/zeppelin.git
git checkout v0.8.0-rc5
checkout 한 버전 확인하기
hyeonjuui-MacBook-Pro:zeppelin hyeonju$ git status
HEAD detached at v0.8.0-rc5
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: conf/zeppelin-env.sh.template
modified: zeppelin-web/package-lock.json
no changes added to commit (use "git add" and/or "git commit -a")
하단의 Build from source 를 보면 받은 소스를 빌드 하는 방법에 대해 나와있다.
mvn clean package -DskipTests
하.지.만
작동하지 않는다!!!
mvn 작동하지 않는다 maven 이 설치 되지 않았기 때문이다.
maven 을 설치하자
brew install maven
maven 을 설치하고 빌드 한 뒤 실행하면 된다. 에러가 나는 경우가 있다.
- 프로세스가 실행중인지 확인하자
- zeppelin 에서 스파크 버전을 보자 2.2.0 이면
zeppelin/conf/ zeppelin.env.sh 에서 export SHARK_HOME 지정 하거나
zeppelin inter 에서 설치된 spark 경로를 기입하면 된다.
SPARK_HOME /Users/hyeonju/des/spark
아래는 삽질의 역사를 기록 한것
maven 설치 후 빌드 명령어를 입력 하니 에러가 난다….
[ERROR] The goal you specified requires a project to execute but there is no POM in this directory (.../zeppelin_old). Please verify you invoked Maven from the correct directory. -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MissingProjectException
에러 해결…기존 zeppelin 설치 폴더를 old 로 바꾸고 다운로드한 폴더를 zeppelin 으로 변경 후 터미널에서는 기존 old 폴더로 인식해서 pom.xml 파일을 찾지 못하는 오류였음. </br>terminal 에서 상위 폴더로 갔다 오니 …………!@#@##$%$%^%
한 20분 걸린다..는건 뻥임
[INFO] Total time: 01:03 h
[INFO] Finished at: 2018-06-20T23:34:31+09:00
[INFO] Final Memory: 305M/1917M
……
책보다가 라그 하다가 시간 좀 때우다가 다 되서 실행시키니 또 에러난다. …
모르겠다 다시 빌드해보자
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 06:04 min
[INFO] Finished at: 2018-06-21T00:14:37+09:00
[INFO] Final Memory: 305M/2065M
[INFO] ------------------------------------------------------------------------
개 짧음..ㄷㄷㄷ
역시 에러.ㅠㅠ…
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/Users/hyeonju/des/zeppelin/zeppelin-server/target/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/Users/hyeonju/des/zeppelin/zeppelin-zengine/target/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/Users/hyeonju/des/zeppelin/zeppelin-interpreter/target/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
Exception in thread "main" java.lang.ExceptionInInitializerError
at org.apache.zeppelin.conf.ZeppelinConfiguration.create(ZeppelinConfiguration.java:136)
at org.apache.zeppelin.server.ZeppelinServer.main(ZeppelinServer.java:193)
프로세스 가 실행중임. 기존에 실행중인 zeppelin 다 죽이고 하면 됨
ps -ef | grep zeppelin 으로 찾아서
kill -9 프로세스번호
zeppelin config 설정
export JAVA_HOME으로 java8경로 설정
- export JAVA_HOME으로 java8경로 설정
- git clone -> cd zeppelin -> git checkout -b -> mvn ~
- spark 2.3.1 버전 다운로드
- conf 에서 zeppelin.env.sh.template를 zeppelin.env.sh로 카피 후 export JAVA_HOME / export SPARK_HOME 경로 설정(각각 1.8.1 / 2.3.1)
mac 에선 /Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home
- ./bin/zeppelin-daemon.sh start 로 실행