Spark源碼編譯
1. Spark1.3.0安裝版本要求:
Spark 1.3.0Java 6+
Python 2.6+
Scala 2.10.x
2. 安裝Maven至 /usr/local/maven-3.1.1
修改/etc/profile,添加:
M2_HOME=/usr/local/maven-3.1.1
export M2_HOME
export PATH="$PATH:$M2_HOME/bin"
最後 source /etc/profile
3. 添加用戶 spark
$ useradd spark
$ passwd spark
4. 由於HDFS的版本兼容性並不好,在編譯Spark時必須指定我們想訪問的HDFS版本
$ ./build/mvn -Pyarn -Phive -Phive-thriftserver -Phadoop-2.3 -Dhadoop.version=2.3.0 -DskipTests clean package
如果想生成tgz包,spark-1.3.0裏的make-distributions.sh用法和以往版本稍有區別(sh後面直接跟maven編譯參數項):
$ ./make-distributions.sh -Pyarn -Phive -Phive-thriftserver -Phadoop-2.3 -Dhadoop.version=2.3.0 -DskipTests
編譯成功後我們可以在Spark源碼根目錄下看到新生成的spark-1.3.0-bin-2.3.0.tgz。
部署:
1. root權限安裝 scala-2.10.4:
$ cd /usr/local/
$ tar -xzvf scala-2.10.5.tgz (提前下載scala tar包至此)
$ vim /etc/profile, 添加 如下兩行:
export SCALA_HOME=/usr/local/scala-2.10.4
export PATH=".:$PATH:$SCALA_HOME/bin"
$ source /etc/profile
$ scala -version (檢查是否安裝成功)
2. spark權限在/home/spark/下解壓縮 spark tgz包,並進入解壓後的spar安裝目錄。然後配置如下:
[spark@myPC1]# cat conf/slaves
myPC2
[spark@myPC1]# vi conf/spark-env.sh
[spark@myPC1]# cat conf/spark-env.sh
export SPARK_MASTER_IP=myPC1 export SPARK_WORKER_CORES=1 export SPARK_WORKER_INSTANCES=1 export SPARK_MASTER_PORT=7077 export SPARK_WORKER_MEMORY=1g export MASTER=spark://${SPARK_MASTER_IP}:${SPARK_MASTER_PORT}
3. 將該spark安裝目錄 scp 到另一臺機器 myPC2的 /home/spark/目錄下
4. 在 /etc/hosts下添加myPC1和myPC2的ip與計算機名的映射
5. 在spark master的spark安裝目錄下執行 ./sbin/start-all.sh
6. 訪問http://192.168.112.113:8080 查看Spark是否啓動成功 (這裏假設 myPC1的ip爲 192.168.112.113)
IT人的微信自媒體--- 傑天空, 走在尋找創意的路上
發掘創意,點綴生活,品味人生。
請搜索微信訂閱號:
jksy_studio ,或者微信掃描頭像二維碼添加關注