Zeppelin使用心得總結

Zeppelin使用心得0?wx_fmt=gif

此次試驗的項目是:

Zeppelin+Anaconda2(包括Tensorflow等深度學習庫)+Spark On Yarn+SQL On Zeppelin整個環境的搭建的過程。

試驗目標:

將該環境搭建好了之後,可以在zepplin上基於web界面進行scalapython的編程,並且可以直接通過web界面進行深度學習建模並通過Spark集羣進行學習訓練。可以做到即寫即可再web界面運行。並且可以直接在web界面寫sql語句進行可視化展示效果。




1 Yarn集羣搭建

那麼接下來我們首先要搭建好HadoopYarn集羣,因爲整個通過Zepplin提交給YarnJob需要通過Yarn的資源調度來啓動Container,Container裏面是具體的線程來進行具體的計算的。簡單的說就是 分配好計算等資源。

對於Yarn集羣搭建,其實可以就直接搭建hadoop集羣。我的環境是通過Ambari一鍵部署的。這種方式非常簡便。因此推薦通過Ambari來一鍵部署Yarn集羣。

 

當我們部署好Yarn集羣之後,我們需要在剛下載下來的Spark二進制文件的配置文件中做如下的配置

exportJAVA_HOME=/home/ubuntu/jdk1.8.0_121(這裏替換您自己的jdk路徑)

exportYARN_CONF_DIR=/home/ubuntu/yarn_conf(這裏替換成您自己的yarn-site.xml路徑)

這裏其實就是通過YARN_CON_DIR來指定Spark On Yarn的時候Spark Job具體到哪裏去找到ResourceManager。從而找到Yarn來進行資源調度。

科學計算庫環境搭建(Anaconda2

接下來就按照Anaconda2了,Anaconda2直接在官網去下載的時候,一般其網絡下載的速度都會非常的慢。我一氣之下,找到了一個較好的下載源。所以推薦以下的下載地址。網絡下載速度會好很多。

清華大學開源軟件鏡像站

https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/

您應該根據自己的系統具體情況來選擇對應的版本。版本一定要兼容。所以這裏也是避免出錯的關鍵之一。

 

下載完成之後,給文件賦可執行權限之後,就可以直接運行安裝。安裝過程非常方便。一般情況下不會出錯。

於是此時就可以安裝Tensorflow,Numpy,Scipy,matplotlib等那一系列科學計算庫了。

在安裝科學計算庫之前,如果您的網絡速度不好的話,推薦使用阿里或者豆瓣的pip下載源(安裝anaconda2的時候就直接安裝了pip)。更改下載源的方式如下:

創建編輯 文件~/.pip/pip.conflinux系統下windows不一樣)

[global]

trusted-host=mirrors.aliyun.com

index-url=http://mirrors.aliyun.com/pypi/simple/

[install]

trusted-host= mirrors.aliyun.com

備註:index-url即源地址,trusted-host爲源地址的域名,由於國內的源鏡像都爲使用https協議,所以如果不添加信任域就會報:

Thisrepository located at mirrors.aliyun.com is not a trusted host, if thisrepository is available via HTTPS it is recommend to use HTTPS instead,otherwise you may silence this warning with ‘–trusted-host mirrors.aliyun.com’.
DEPRECATION: Implicitly allowing locations which are not hosted at a secureorigin is deprecated and will require the use of –trusted-host in the future.
Requirement already up-to-date: pip in /usr/lib/python2.7/site-packages

 

 

我們可以

通過pip install tensorflow來下載tensorflow(深度學習框架)

通過pip insall numpy來下載numpy

通過 pip install scipy來下載scipy

通過pip install pandas來下載pandas

通過pip install matplotlib來下載matplotlib

等等,幾乎所有的python科學計算庫都可以通過該種方式進行下載,並且集成道anaconda的整個環境當中。

於是,到了這一步。我們的環境基本上完成了。

先來看看效果。



0?wx_fmt=png

 

接下來最後一步

那就是安裝Zepplin並且配置好Spark在集羣中運行job的一系列配置。

下載解壓Zepplin我就不用多說了吧,直接到官網或者鏡像庫去下載就行了。只是和上面所說一樣,也是要注意網絡下載速度的問題,也是推薦一個鏡像,就看你怎麼選擇了。地址如下:

https://mirrors.tuna.tsinghua.edu.cn/apache/

0?wx_fmt=png

 

進入到根目錄下的conf目錄之中,並且編輯zeppelin-env.sh文件

vim zeppelin-env.sh

 

加入如下的配置:

exportJAVA_HOME=/home/ubuntu/jdk1.8.0_121

exportSPARK_HOME=/home/ubuntu/spark-2.1.0-bin-hadoop2.7

exportPYSPARK_PYTHON=/root/anaconda2/bin/python

export PYTHONPATH=/root/anaconda2/bin/python

exportHADOOP_CONF_DIR=/home/ubuntu/yarn_conf

 

如果您想要知道爲什麼的話,就可以好好閱讀以下官方提供的英文註釋咯哦

0?wx_fmt=png

 

然後再根目錄下的bin目錄下執行 ./zeppelin-daemon.shstart(在此之前,我在zeppelin-site.xml文件中改了服務端口,默認爲8080端口,由於8080端口被netflix開源的Genie佔用了,於是我改成了服務端口爲8081)

 

待啓動完成之後,就可以通過web訪問了。

首先你可以看看官方提供的教程。

但是個人覺得官方提供的教程太過於繁瑣了。沒有明確的思路。

個人大體就2個思路。

一就是配置解釋器,二就是使用解釋器,然後就沒有了。

配置解釋器:

0?wx_fmt=png

0?wx_fmt=png

然後可以看看默認的解釋器(默認解釋器有很多,比如spark

0?wx_fmt=png

我在此增加了一個自定義的解釋器,如下所示

0?wx_fmt=png

這裏一定要注意spark.cores.maxspark.executor.memory。這裏的大小推薦和yarn上的一樣。不然會報內存不足等等的錯誤。

0?wx_fmt=png

使用解釋器:

創建一個note

0?wx_fmt=png

選擇一個解釋器

0?wx_fmt=png

最後就開始使用了(我們用python做一個測試)

0?wx_fmt=png

scala做測試

0?wx_fmt=png


0?wx_fmt=png

 

對應的yarn上也有對應的記錄

 

0?wx_fmt=png

 

Spark Job監控如下

0?wx_fmt=png


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章