从源码编译
原文链接 : http://zeppelin.apache.org/docs/0.7.2/install/build.html
译文链接 : http://www.apache.wiki/pages/viewpage.action?pageId=10030615
如果要从源代码构建,则必须先安装以下依赖项:
Name | Value |
---|---|
Git | (Any Version) |
Maven | 3.1.x or higher |
JDK | 1.7 |
如果您还没有安装Git和Maven,请查看“ 构建要求”部分,并按照步骤说明进行操作。
1. 克隆Apache Zeppelin存储库
git clone https://github.com/apache/zeppelin.git
2. 源码编译
您可以使用以下maven命令构建Zeppelin:
mvn clean package -DskipTests [Options]
如果您不确定选项,请使用相同的命令来创建官方二进制包。
# update all pom.xml to use scala 2.11
./dev/change_scala_version.sh 2.11
# build zeppelin with all interpreters and include latest version of Apache spark support for local mode.
mvn clean package -DskipTests -Pspark-2.0 -Phadoop-2.4 -Pyarn -Ppyspark -Psparkr -Pr -Pscala-2.11
3. 完成
您可以通过成功构建后运行直接启动Zeppelin:
./bin/zeppelin-daemon.sh start
检查构建配置文件部分以获取进一步的构建选项。如果您在代理服务器后面,请按照代理设置部分中的说明进行操作。
如果您对贡献感兴趣,请检查贡献Apache Zeppelin(代码)和贡献Apache Zeppelin(网站)。
构建配置文件
Spark 解释器
要使用特定的Spark版本,Hadoop版本或特定功能构建,请定义一个或多个以下配置文件和选项:
-Pspark-[version]
设置 spark 主要版本
可用的配置文件是
-Pspark-2.1
-Pspark-2.0
-Pspark-1.6
-Pspark-1.5
-Pspark-1.4
-Pcassandra-spark-1.5
-Pcassandra-spark-1.4
-Pcassandra-spark-1.3
-Pcassandra-spark-1.2
-Pcassandra-spark-1.1
小版本可以调整 -Dspark.version=x.x.x
-Phadoop-[version]
设置hadoop主要版本
可用的配置文件是
-Phadoop-0.23
-Phadoop-1
-Phadoop-2.2
-Phadoop-2.3
-Phadoop-2.4
-Phadoop-2.6
-Phadoop-2.7
小版本可以调整 -Dhadoop.version=x.x.x
-Pscala-[version] (optional)
设置scala版本(默认2.10)可用的配置文件
-Pscala-2.10
-Pscala-2.11
-Pyarn
(可选的)
启用对本地模式的YARN支持
Spark v1.5.0或更高版本不支持YARN用于本地模式。设置SPARK_HOME代替
-Ppyspark
(可选的)
启用PySpark支持本地模式。
-Pr
(可选的)
-Psparkr
(可选的)
-Pvendor-repo
(可选的)
启用第三方供应商存储库(cloudera)
-Pmapr[version]
(可选的)
对于MapR Hadoop Distribution,这些配置文件将处理Hadoop版本。至于MAPR允许安装不同版本星火的,则应该通过添加一个Spark的个人资料(指定星火的版本安装在群集上-Pspark-1.6
,-Pspark-2.0
根据需要,等等)。可以在http://doc.mapr.com的每个版本的MapR找到正确的Maven工件
可用的配置文件是
-Pmapr3
-Pmapr40
-Pmapr41
-Pmapr50
-Pmapr51
-Pexamples(可选)
zeppelin-examples目录下的粗体示例
构建命令示例
以下是几个选项的示例:
# build with spark-2.1, scala-2.11
./dev/change_scala_version.sh 2.11
mvn clean package -Pspark-2.1 -Phadoop-2.4 -Pyarn -Ppyspark -Psparkr -Pscala-2.11 -DskipTests
# build with spark-2.0, scala-2.11
./dev/change_scala_version.sh 2.11
mvn clean package -Pspark-2.0 -Phadoop-2.4 -Pyarn -Ppyspark -Psparkr -Pscala-2.11 -DskipTests
# build with spark-1.6, scala-2.10
mvn clean package -Pspark-1.6 -Phadoop-2.4 -Pyarn -Ppyspark -Psparkr -DskipTests
# spark-cassandra integration
mvn clean package -Pcassandra-spark-1.5 -Dhadoop.version=2.6.0 -Phadoop-2.6 -DskipTests -DskipTests
# with CDH
mvn clean package -Pspark-1.5 -Dhadoop.version=2.6.0-cdh5.5.0 -Phadoop-2.6 -Pvendor-repo -DskipTests
# with MapR
mvn clean package -Pspark-1.5 -Pmapr50 -DskipTests
Ignite 解释器
mvn clean package -Dignite.version=1.9.0 -DskipTests
Scalding 解释器
mvn clean package -Pscalding -DskipTests
构建要求
安装要求
如果您没有准备好要求,请安装它。(安装方法可能会根据您的环境而有所不同,例如Ubuntu。)
sudo apt-get update
sudo apt-get install git
sudo apt-get install openjdk-7-jdk
sudo apt-get install npm
sudo apt-get install libfontconfig
安装maven
wget http://www.eu.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
sudo tar -zxf apache-maven-3.3.9-bin.tar.gz -C /usr/local/
sudo ln -s /usr/local/apache-maven-3.3.9/bin/mvn /usr/local/bin/mvn
注意: - 确保节点通过运行安装node --version
- 确保maven正在运行版本3.1.x或更高版本
mvn -version
- 配置maven使用比平常更多的内存export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=1024m"
代理设置(可选)
如果您在代理服务器后面,您需要配置maven和npm以通过它。
首先,配置你的maven ~/.m2/settings.xml
。
<settings>
<proxies>
<proxy>
<id>proxy-http</id>
<active>true</active>
<protocol>http</protocol>
<host>localhost</host>
<port>3128</port>
<!-- <username>usr</username>
<password>pwd</password> -->
<nonProxyHosts>localhost|127.0.0.1</nonProxyHosts>
</proxy>
<proxy>
<id>proxy-https</id>
<active>true</active>
<protocol>https</protocol>
<host>localhost</host>
<port>3128</port>
<!-- <username>usr</username>
<password>pwd</password> -->
<nonProxyHosts>localhost|127.0.0.1</nonProxyHosts>
</proxy>
</proxies>
</settings>
然后,下一个命令将配置npm。
npm config set proxy http://localhost:3128
npm config set https-proxy http://localhost:3128
npm config set registry "http://registry.npmjs.org/"
npm config set strict-ssl false
配置git也是如此
git config --global http.proxy http://localhost:3128
git config --global https.proxy http://localhost:3128
git config --global url."http://".insteadOf git://
要清理,active false
在Maven 中设置settings.xml
并运行这些命令。
npm config rm proxy
npm config rm https-proxy
git config --global --unset http.proxy
git config --global --unset https.proxy
git config --global --unset url."http://".insteadOf
注意: - 如果您在NTLM代理之后,您可以使用Cntlm身份验证代理。- 用localhost:3128
标准图案替换[http://user:pwd@host:port](http://user:pwd@hostport)
。
包
要打包包含压缩归档的最终发行版,请运行:
mvn clean package -Pbuild-distr
要构建具有特定配置文件的发行版,请运行:
mvn clean package -Pbuild-distr -Pspark-1.5 -Phadoop-2.4 -Pyarn -Ppyspark
-Pspark-1.5 -Phadoop-2.4 -Pyarn -Ppyspark
如果您希望构建特定的火花版本,或者省略支持,可以调整配置文件yarn
。
存档在目录下zeppelin-distribution/target
生成
运行端到端测试
Zeppelin提供了一套端到端验收测试,运行headless selenium浏览器
# assumes zeppelin-server running on localhost:8080 (use -Durl=.. to override)
mvn verify
# or take care of starting/stoping zeppelin-server from packaged zeppelin-distribuion/target
mvn verify -P using-packaged-distr