欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Zeppelin的求学之路(1)—— 简介 和 从源码Build的安装并配置他的Spark解析器

程序员文章站 2022-04-07 12:35:06
...

Zeppelin

Zeppelin的简介

    Zeppelin的求学之路(1)—— 简介 和 从源码Build的安装并配置他的Spark解析器

     上面的截图就是官网对zeppelin的介绍,简洁明了——基于web端的notebook可以实现数据驱动,交互式数据分析,支持多种数据处理引擎,比如SQL,Scala,Spark,Hive等。当然我理解的Zeppelin就是整合了多种编程语言,比如Java,Scala,SQL,Python等,支持多种数据处理引擎进行数据处理分析,并且实现WEB可视化的一个工具,即将数据处理分析的多路英雄好汉汇集在一起!

Zeppelin的安装:

    我安装的是最新版本0.73版的zeppelin,但是安装之前,你一定要明确你的环境,它要求java jdk1.7以上,window7以上具体看下面的截图吧。

                                       Zeppelin的求学之路(1)—— 简介 和 从源码Build的安装并配置他的Spark解析器

    Zeppelin有两种安装方式:

           1:直接下载他的二进制安装包,官方提供了二种安装包,一种含有all interpreters;另一种net-install interpreters,对于我们这样的新手小白,当然推荐第一种。具体的傻瓜式tar命令解压安装就不扯了,

并且附上各种版本下载传送门,小伙伴自己对照要求自己挑新娘:

命令行duceker命令下载:http://zeppelin.apache.org/download.html

一键点击下载:http://www.apache.org/dyn/closer.cgi/zeppelin/zeppelin-0.7.3/zeppelin-0.7.3-bin-all.tgz

           2:自己根据集群不同的interpreters版本,Building from  Source,因为我集群Hadoop2.5的,和最新版的Zeppelin 存在这版本不兼容问题,所以我采取了第二种build方式。大家可以对照一下自己可不可以安装0.73版本的。但是该有的硬性环境要求还是该有的,请看⬇️

Name Value
Git (Any Version)
Maven 3.1.x or higher
JDK 1.7

-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
-Phadoop-0.23
-Phadoop-1
-Phadoop-2.2
-Phadoop-2.3
-Phadoop-2.4
-Phadoop-2.6
-Phadoop-2.7
-Pscala-2.10
-Pscala-2.11

Building from Souce:

       在build之前,先对下面要用到的命令做个简单的介绍。

    (1)git :Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。想更具体了解git命令和介绍的请点击下面的传送门

git教程传送门:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001373962845513aefd77a99f4145f0a2c7a7ca057e7570000

git下载传送门:https://git-scm.com/downloads

    (2)mvn:Maven是现在Java社区中最强大的项目管理和项目构建工具

maven教程传送门:https://www.cnblogs.com/jingmoxukong/p/5591368.html

maven下载传送门:http://maven.apache.org/download.cgi

Step1: 解决你自己的环境问题,1: install requirement     2:install maven

1:install requirement

sudo apt-get update
sudo apt-get install git
sudo apt-get install openjdk-7-jdk //如果你的jdk版本比这个高可以忽略这一条命令
sudo apt-get install npm
sudo apt-get install libfontconfig
2:install 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


Step2:利用git clone命令 克隆zeppelin仓库到你的机子上

git clone https://github.com/apache/zeppelin.git   首先看完git教程的你,要建立一个自己的本地git仓库,然后cd到仓库内进行命令操作


Step3: Build Source

mvn clean package -DskipTests [Options]      利用mvn下载各种解析器的包,【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 
具体你需要哪种解释器版本可以有选择的修改和删减,可以参考上面发的大版本选择。


当然你也可以选择更详细版本的解析器比如:

mvn clean package -Pspark-1.5 -Dhadoop.version=2.6.0-cdh5.5.0 -Phadoop-2.6 -Pvendor-repo -DskipTests

Step4(可选): 如果你需要将它build 成一个distribution包的话,然后将这个快照压缩包上传到你的无外网集群上可以选择下面这个命令。

mvn clean package -Pbuild-distr -Pspark-1.5 -Phadoop-2.4 -Pyarn -Ppyspark

比如我的:注意

                   蓝色关键字命令 与 Step3 不Build  成 distribution的区别

                   DskipTests 命令是跳过build中间的  繁琐的test环节

              

mvn clean package -DskipTests -Pbuild-distr -Pspark-2.1 -Phadoop-2.4 -Pyarn -Pscala-2.11

Step5:开启本地的单机版的zeppelin

    build成功或者安装成功之后,cd  到bin目录,就可以用下面的命令启动它的脚本了。登陆到web: localhost:8080 你就可以尝试它的功能,请看下图!

./bin/zeppelin-daemon.sh start ;//启动

./bin/zeppelin-daemon.sh stop; //停止


./bin/zeppelin-daemon.sh status;//查看状态

  坑:zeppelin默认的启动端口是8080,如果你的这个端口被占用了,需要进入conf目录下,

将 zeppelin-site.xml.template 修改为 zeppelin-site.xml(可以修改端口等基本配置信息)

修改 zeppelin-site.xml中的 zeppelin.server.port 端口改成8089

将zeppelin-env.sh.template 修改为zeppelin-env.sh ,并且配上JAVA_HOME,SPARK_HOME 等相关配置。

Zeppelin的求学之路(1)—— 简介 和 从源码Build的安装并配置他的Spark解析器

下章节:zeppelin基本使用操作

下下章节:配置Spark 解析器设置和参数修改以及和任务监控功能

下下下章节:Zeppelin 的框架,以及各大模块的功能,以及各重要类基本介绍

下下下下章节:Zeppelin部分类的源码解析(1)

下下下下下章节:Zeppelin部分类的源码解析(2)

下下下下下下章节.............