Spark環境準備

  1. 環境準備

開發環境一共3臺linux服務器,要安裝elasticsearch集羣和spark,spark沒有安裝機器,以單機模式啓動爲主,主要目的是學會用spark怎麼對多種不一樣數據源進行計算。java

spark能夠處理的文件包括:普通文本文件,hadoop文件,mysql,hive,hbase,elasticsearch等。這也基本涵蓋了主流的數據格式。node

 

    1. 搭建elasticsearch2.3.5集羣

因爲3臺linux服務器已經安裝了jdk1.7版本了,所以選擇elasticsearch的2.3.5版本安裝,5.x版本須要用到jdk1.8了。mysql

新建es用戶給elasticsearch集羣使用,下載tgz包後解壓到用戶目錄。linux

[es@cmallpreapp10 elasticsearch-2.3.5]$ pwdsql

/home/es/elasticsearch-2.3.5express

[es@cmallpreapp10 elasticsearch-2.3.5]$ lsbash

bin  config  data  lib  LICENSE.txt  logs  modules  NOTICE.txt  plugins  README.textile服務器

[es@cmallpreapp10 elasticsearch-2.3.5]$app

在3臺服務器都下載好/home/es/elasticsearch-2.3.5目錄,下面配置集羣。curl

vi config/elasticsearch.yml:

# 集羣名稱

 cluster.name: elasticsearch

node.name: 10.37.154.83

network.host: 10.37.154.83

discovery.zen.ping.unicast.hosts: ["10.37.154.84:9300", "10.37.154.83:9300", "10.37.154.82:9300"]

discovery.zen.minimum_master_nodes: 2

discovery.zen.fd.ping_timeout: 10s

 discovery.zen.ping.timeout: 10s

discovery.zen.ping.multicast.enabled: false

script.inline: on

 script.indexed: on

這3臺服務器的cluster.name設置爲同一個值,network.host和node.name設置爲本節點的ip和名稱。discovery.zen.ping.unicast.hosts參數是設置集羣ip地址列表的,將3臺機器的ip地址和端口號寫在這裏,默認9300端口。

在3臺服務器分別啓動es。

bin/elasticsearch –d  # -d表示後臺啓動。

最後用curl驗證:

[es@cmallpreapp10 elasticsearch-2.3.5]$ curl 10.37.154.82:9200/_cat/nodes

10.37.154.82 10.37.154.82 9 43 0.00 d * 10.37.154.82

10.37.154.84 10.37.154.84 5 25 0.02 d m 10.37.154.84

10.37.154.83 10.37.154.83 5 40 0.01 d m 10.37.154.83

elasticsearch集羣安裝成功!

 

    1. 安裝jdk1.8和scala11.8

下面咱們要安裝spark環境了。咱們採用的是最新的spark2.2.0版本,須要jdk1.8,但linux服務器默認安裝的是jdk1.7,所以咱們先安裝jdk1.8。

新建用戶spark,下載jdk1.8 linux版本,解壓到用戶目錄下:

/home/spark/jdk1.8.0_121

將環境變量寫到.bashrc。

export JAVA_HOME=/home/spark/jdk1.8.0_121

export SPARK_HOME=/home/spark/spark-2.2.0-bin-hadoop2.6

export PATH=$JAVA_HOME/bin:$SPARK_HOME/bin:/home/spark/soft/scala-2.11.8/bin:$PATH

咱們要設置SPARK_HOME,scala路徑等。執行source .bashrc。而後驗證版本。

 

[spark@cmallpreapp10 ~]$ java -version

java version "1.8.0_121"

Java(TM) SE Runtime Environment (build 1.8.0_121-b13)

Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)

[spark@cmallpreapp10 ~]$ scala

Welcome to Scala 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_121).

Type in expressions for evaluation. Or try :help.

至此,Jdk1.8scala11.8安裝成功!

 

    1. 安裝spark2.2.0

從官網下載2.2.0版本的spark。用spark用戶登陸linux服務器,解壓到/home/spark目錄下:

/home/spark/spark-2.2.0-bin-hadoop2.6

    1. 打包jar工程命令

maven打包:mvn clean scala:compile package 

 

    1. 提交jar包執行

bin/spark-submit  --class package.xxxx ./myxxx.jar  --master spark://10.34.15.82:7077

 

  1. maven操做
    1. 指定中央存儲庫:

<repositories> 

    <repository> 

        <!-- Maven 自帶的中央倉庫使用的Id爲central 若是其餘的倉庫聲明也是用該Id  就會覆蓋中央倉庫的配置 -->

<id>mvnrepository</id> 

        <name>mvnrepository</name> 

        <url>http://www.mvnrepository.com/</url> 

        <layout>default</layout> 

        <releases> 

            <enabled>true</enabled> 

        </releases> 

        <snapshots> 

            <enabled>false</enabled> 

        </snapshots> 

    </repository> 

</repositories> 

相關文章
相關標籤/搜索