死磕Zeppelin~01 【編譯安裝】

1 Zeppelin 介紹

基於 Web網頁 進行 交互式的數據分析 的筆記本,有數據可視化功能。
支持多種語言,比如SQL,Scala等等

zeppelin —> 相當於一個paltform:可插拔式的安裝各個環境、組件進行數據分析

2 zeppelin主要模塊:

2.1.zeppelin-server:
項目入口,通過Jetty 【web 服務器】內嵌的服務 提供的WebSocket和Restful服務
提供了基本的權限認證,用Java編寫的
2.2.zeppelin-zengine:
實現NoteBook的持久化和檢索服務
2.3.zeppelin-interpreter:
抽象的interpreter接口,規定了解釋器的功能
並且跟 zeppelin-zengine 通過Thrift 進行通信

open 初始化只會調用一次
close 關閉資源釋放接口,只會用一次
interpert 執行代碼返回結果,同步的方式
2.4.zeppelin-web:使用AnguarJs【前端技術】

操作流程:
zeppelin-web —> zeppelin-server/shiro —> zeppelin-zengine —> zeppelin-interpreter

  服務是可插拔的 module/addon

3 zeppelin安裝

參照官網

安裝方式兩種:
1.源碼編譯
2.下載編譯好的二進制文件 √

http://zeppelin.apache.org/docs/0.8.2/quickstart/install.html#building-zeppelin-from-source

編譯流程總結:
前置準備:
安裝Maven
安裝JDK
安裝npm 即 nodeJs
編譯:版本0.8.2

// spark2.4.3 hadoop 2.6.0-cdh5.7.0

開始:

[root@hadoop001 zeppelin]# pwd
/root/softs/zeppelin
[root@hadoop001 zeppelin]# ./dev/change_scala_version.sh 2.11
接着:
mvn clean package  \
-Pspark-2.4.3 \
-Phadoop-2.6 \
-Dhadoop.version=2.6.0-cdh5.7.0  \
-Pyarn \
-Pvendor-repo \
-DskipTests 

推薦 升級版:

mvn clean package  \
-Pspark-2.4 \
-Dspark.version=2.4.3 \
-Ppyspark \
-Phadoop-2.6 \
-Dhadoop.version=2.6.0-cdh5.7.0  \
-Pscala-2.11 \
-Dscala.version=2.11.8 \
-Pyarn \
-Pvendor-repo \
-Drat.skip \
-DskipTests \
-Dmaven.test.skip=true \
-Pbuild-distr 

or

推薦 升級版2:
mvn clean package  \
-Pspark-2.4 \
-Dspark.version=2.4.3 \
-Ppyspark \
-Phadoop-2.6 \
-Dhadoop.version=2.6.0-cdh5.7.0  \
-Pscala-2.11 \
-Dscala.version=2.11.8 \
-Pyarn \
-Pvendor-repo \
-Drat.skip \
-DskipTests \
-Dmaven.test.skip=true \
-Denforcer.skip=true \
-Pbuild-distr 
  -Pbuild-distr  // 得到tar包

拓展:
1.一點說明
interperter

interperterGroup:
hive mysql phoenix 都是

hive: hiveserver2這個服務進行連接
跟
mysql :也是走的jdbc	
	即都是通過JDBC來進行連接的

2.編譯過程中可能存在的錯誤:
Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:1.3.1

嘗試:修改pom.xml

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-enforcer-plugin</artifactId>
    <version>1.3.1</version>
    <executions>
        <execution>
            <id>enforce</id>
            <phase>validate</phase>
            <goals>
                <goal>display-info</goal>
                <goal>enforce</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <!--規則檢查不通過就構建失敗;Default:false. -->
        <!--<failFast>true</failFast>-->
        <rules>
            <requireMavenVersion>
                <version>3.0.4</version>
            </requireMavenVersion>
            <requireJavaVersion>
                <version>1.8.0</version>
            </requireJavaVersion>
            <bannedDependencies>
                <!--是否檢查傳遞性依賴(間接依賴)-->
                <searchTransitive>true</searchTransitive>
                <excludes>
                    <exclude>junit:junit</exclude>
                </excludes>
                <message>must use TestNG</message>
            </bannedDependencies>
        </rules>
    </configuration>
</plugin>

第二種方式解決:

mvn clean install -U

第三種方案:
看自己的JDK版本是否匹配

第四種方案:
如果某些情況下不檢查環境,可以在maven命令上加一個 -Denforcer.skip=true 來跳過enforcer插件執行。
例如:mvn clean validate -Denforcer.skip=true
https://www.cnblogs.com/qyf404/p/4829327.html

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