spark on yarn 安裝筆記

yarn版本:hadoop2.7.0html

spark版本:spark1.4.0apache

0.前期環境準備:app

  jdk 1.8.0_45maven

  hadoop2.7.0oop

  Apache Maven 3.3.3學習

1.編譯spark on yarnui

  下載地址:http://mirrors.cnnic.cn/apache/spark/spark-1.4.1/spark-1.4.1.tgzspa

  解壓後進入spark-1.4.1.net

  執行以下命令,Setting up Maven’s Memory Usagecode

export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m"

  編譯spark,使其支持yarn

mvn -Pyarn -Phadoop-2.7 -Dhadoop.version=2.7.0 -DskipTests clean package

  編譯會進行很長時間,期間maven會下載不少東西,還會輸出不少warning,通常warning不會有影響,編譯成功後會顯示build success。

3.添加環境變量

export HADOOP_HOME=your hadoop dir
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
export HADOOP_CONF_DIR=HADOOP_HOME/etc/hadoop
export YARN_HOME=$HADOOP_HOME
export YARN_CONF_DIR=HADOOP_HOME/etc/hadoop
export PATH=$PATH:$HADOOP_CONF_DIR

export SPARK_HOME=your spark dir
export PATH=$PATH:$SPARK_HOME/bin

4.執行例子程序,計算pi

  向yarn提交任務執行程序的格式

$ ./bin/spark-submit --class path.to.your.Class --master yarn-cluster [options] <app jar> [app options】

  所以執行計算pi的例子程序格式以下:

bin/spark-submit \
--class org.apache.spark.examples.SparkPi    \
--master yarn-cluster    \
--num-executors 3     \     #執行任務的節點數
--driver-memory 4g     \
--executor-memory 2g    \
--executor-cores 1  \
examples/target/spark-examples_2.10-1.4.0.jar 10

  例子程序在examples/target下,選擇class爲org.apache.spark.examples.SparkPi即爲計算pi的類

  提交成功後能夠查看http://localhost:8088查看yarn的管理界面,查看對應任務後的tracking  UI便可查看spark的管理界面

      任務成功結束後能夠在對應的log的stdout下看到計算的最後pi的結果,例如個人電腦上地址爲:

  http://mmc:8088/logs/userlogs/application_1436998397621_0011/container_1436998397621_0011_01_000001/stdout

           致謝:http://spark.apache.org/docs/latest/running-on-yarn.html  #官方文檔

    http://spark.apache.org/docs/latest/building-spark.html#building-a-runnable-distributio  #官方文檔

      http://database.51cto.com/art/201404/435669.htm

    http://blog.csdn.net/jiushuai/article/details/26693569

    http://sofar.blog.51cto.com/353572/1352713

5.小結:若是網上資料太少,官方文檔最重要,雖然看官方文檔真的很頭疼,網上資料不少,可是有的帖子比較老,spark的最新版本的解決方法跟網上的帖子仍是有些差異,版本方面必定要看清楚,不然

  他的成功了,你的不必定成功,若是出錯必定學會看log,一行一行的看下來你會收穫不少。

       要善於總結別人的帖子,不要一味的找到一個就開幹,否則最後錯了去查錯都不知道本身哪些操做致使的,會影響進度

      spark感受很麻煩,做爲一個新手要好好學習

相關文章
相關標籤/搜索