Apache Zeppelin使用入门指南:安装

来源:互联网 发布:美工详情页一般多少钱 编辑:程序博客网 时间:2024/05/29 18:28
 Apache Zeppelin使用入门指南:安装
  Apache Zeppelin使用入门指南:编程
  Apache Zeppelin使用入门指南:添加外部依赖

  Apache Zeppelin是一款基于web的notebook(类似于ipython的notebook),支持交互式地数据分析。原生就支持Spark、Scala、SQL 、shell, markdown等。而且它是完全开源的,目前还处于Apache孵化阶段。本文所有的操作都是基于Apache Zeppelin 0.6.0-incubating-SNAPSHOT,spark 1.5.2的。
  本文将介绍如何编译、安装以及使用Apache Zeppelin。

编译和安装Apache Zeppelin

  Apache Zeppelin官方提供了Source包和二进制包,我们可以根据需要下载相关的包进行安装。这里我通过编译源码的方式来安装Apache Zeppelin,通过源码编译Zeppelin非常地简单,我这里从Zeppelin的git库里面下载最新的源码进行编译,步骤如下:

01[iteblog@www.iteblog.com ~]$ git clone https://github.com/apache/incubator-zeppelin.git
02[iteblog@www.iteblog.com ~]$ cdincubator-zeppelin
03[iteblog@www.iteblog.com ~]$ mvn package -Pspark-1.5 -Dhadoop.version=2.2.0 -Phadoop-2.2 -DskipTests
04[INFO] Reactor Summary:
05[INFO]
06[INFO] Zeppelin ........................................... SUCCESS [  4.336 s]
07[INFO] Zeppelin: Interpreter .............................. SUCCESS [  4.525 s]
08[INFO] Zeppelin: Zengine .................................. SUCCESS [  2.465 s]
09[INFO] Zeppelin: S park dependencies ...................... SUCCESS [ 30.643 s]
10[INFO] Zeppelin: S park ................................... SUCCESS [  2.220 s]
11[INFO] Zeppelin: Markdown interpreter ..................... SUCCESS [  0.223 s]
12[INFO] Zeppelin: Angular interpreter ...................... SUCCESS [  0.495 s]
13[INFO] Zeppelin: Shell interpreter ........................ SUCCESS [  0.203 s]
14[INFO] Zeppelin: Hive interpreter ......................... SUCCESS [  1.590 s]
15[INFO] Zeppelin: Apache Phoenix Interpreter ............... SUCCESS [  2.196 s]
16[INFO] Zeppelin: PostgreSQL interpreter ................... SUCCESS [  0.202 s]
17[INFO] Zeppelin: JDBC interpreter ......................... SUCCESS [  0.171 s]
18[INFO] Zeppelin: Tajo interpreter ......................... SUCCESS [  0.436 s]
19[INFO] Zeppelin: Flink .................................... SUCCESS [  0.864 s]
20[INFO] Zeppelin: Apache Ignite interpreter ................ SUCCESS [  0.219 s]
21[INFO] Zeppelin: Kylin interpreter ........................ SUCCESS [  0.223 s]
22[INFO] Zeppelin: Lens interpreter ......................... SUCCESS [  1.030 s]
23[INFO] Zeppelin: Cassandra ................................ SUCCESS [  2.954 s]
24[INFO] Zeppelin: Elasticsearch interpreter ................ SUCCESS [  1.601 s]
25[INFO] Zeppelin: web Application .......................... SUCCESS [01:19 min]
26[INFO] Zeppelin: Server ................................... SUCCESS [ 54.665 s]
27[INFO] Zeppelin: Packaging distribution ................... SUCCESS [  0.991 s]
28[INFO] ------------------------------------------------------------------------
29[INFO] BUILD SUCCESS
30[INFO] ------------------------------------------------------------------------
31[INFO] Total time: 03:12 min
32[INFO] Finished at: 2016-01-20T16:35:33+08:00
33[INFO] Final Memory: 97M/1298M
34[INFO] ------------------------------------------------------------------------

  在编译Zeppelin的时候,会安装npm和node等,所以安装的进度有时会很慢。目前Zeppelin支持Spark 1.1到Spark 1.6和Hadoop 0.23到Hadoop 2.6等版本,我们可以分别通过下面选项指定相应的Spark和Hadoop版本:

01-Pspark-1.6
02-Pspark-1.5
03-Pspark-1.4
04-Pspark-1.3
05-Pspark-1.2
06-Pspark-1.1
07-Pcassandra-spark-1.5
08-Pcassandra-spark-1.4
09-Pcassandra-spark-1.3
10-Pcassandra-spark-1.2
11-Pcassandra-spark-1.1
12 
13-Phadoop-0.23
14-Phadoop-1
15-Phadoop-2.2
16-Phadoop-2.3
17-Phadoop-2.4
18-Phadoop-2.6
  如果你需要使用到YARN,你必须在编译Zeppelin的时候指定-Pyarn选项,具体可以参见本博客的《在Yarn上运行Apache Zeppelin & Spark》 。

  如果你需要使用到PySpark,编译的时候需要使用-Ppyspark

  编译完Zeppelin之后,我们就可以启动Zeppelin:

1[iteblog@www.iteblog.com ~]$ bin/zeppelin-daemon.sh start

停止Zeppelin可以使用:

1[iteblog@www.iteblog.com ~]$ bin/zeppelin-daemon.sh stop

所有运行的日志会输入到logs目录下,如果遇到错误可以到里面去查找相关的日志。

  需要注意的是,Zeppelin默认是在8080端口上启动相关的web服务的,在你服务器上,如果这个端口已经被占用了,那么会导致Zeppelin启动失败,并在日志里面抛出以下的异常:

01WARN [2016-01-20 16:36:44,830] ({main} AbstractLifeCycle.java[setFailed]:204) -
02FAILED SelectChannelConnector@0.0.0.0:8080: java.net.BindException: Address already inuse
03java.net.BindException: Address already inuse
04    at sun.nio.ch.Net.bind0(Native Method)
05    at sun.nio.ch.Net.bind(Net.java:444)
06    at sun.nio.ch.Net.bind(Net.java:436)
07    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:214)
08    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
09    at org.eclipse.jetty.server.nio.SelectChannelConnector.open(SelectChannelConnector.java:187)
10    at org.eclipse.jetty.server.AbstractConnector.doStart(AbstractConnector.java:316)
11    at org.eclipse.jetty.server.nio.SelectChannelConnector.doStart(SelectChannelConnector.java:265)
12    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
13    at org.eclipse.jetty.server.Server.doStart(Server.java:293)
14    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
15    at org.apache.zeppelin.server.ZeppelinServer.main(ZeppelinServer.java:114)

我们可以到conf/zeppelin-site.xml文件里面进行配置,并修改zeppelin.server.port属性的值为其他不被占用的端口,如下:

1<property>
2  <name>zeppelin.server.port</name>
3  <value>8090</value>
4  <description>Server port.</description>
5</property>

然后我们需要重启Zeppelin:

1[iteblog@www.iteblog.com ~]$ bin/zeppelin-daemon restart

一切顺利的话,我们就可以在http://www.iteblog.com:8080上面看到下面页面信息:

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 飞机上婴儿哭闹怎么办 飞机上婴儿啼哭怎么办 飞机儿童陪护手续怎么办 孕妇感冒鼻子堵怎么办 孕妇用了眼药水怎么办 孕妇用眼药水了怎么办 错过了登机时间怎么办 过了登机时间怎么办 孩子不喜欢做作业怎么办 宝宝腿不一样粗怎么办 一个小腿肿了怎么办 左右小腿不一样粗怎么办 小孩不敢自己睡怎么办 小孩不一个人睡怎么办 晚上一个人睡觉害怕怎么办 孩子自己睡害怕怎么办 小孩晚上睡觉怕怎么办 小孩分房睡害怕怎么办 坐飞机不认识字怎么办 科目一不识字怎么办 孩子不自己睡觉怎么办 70岁老人坐高铁怎么办 八岁儿童怎么办护照 第一次坐飞机有点紧张怎么办 坐飞机恐高耳鸣怎么办 火车坐过站怎么办 凌晨的火车应该怎么办 高铁坐过一站怎么办 宝宝断奶瘦了怎么办 第一次坐飞机怕晕机怎么办 焦虑症怕坐飞机怎么办 新生宝宝老是哭闹怎么办 宝宝坐飞机后哭闹怎么办 飞机经济舱不支持退票怎么办 证件被单位扣押怎么办 小孩高烧41度怎么办 国际航班未成年托管怎么办手续 如果飞机上发烧怎么办 不到二岁飞机票怎么办 做飞机婴儿票怎么办 公司拖欠报销款怎么办