因為spark文件中只介紹了兩種用指令碼提交到yarn的例子,並沒有介紹如何透過程式提交yarn,但是我們的需求需要這樣。網上很難找到例子,經過幾天摸索,終於用程式提交到yarn成功,下面總結一下。先介紹官網提交的例子,我用的是spark 0.9.0 hadoop2.2.0
一.使用指令碼提交
1.使用spark指令碼提交到yarn,首先需要將spark所在的主機和hadoop叢集之間hosts相互配置(也就是把spark主機的ip和主機名配置到hadoop所有節點的/etc/hosts裡面,再把叢集所有節點的ip和主機名配置到spark所在主機的/etc/hosts裡面)。
2.然後需要把hadoop目錄etc/hadoop下面的*-sit.xml複製到${SPARK_HOME}的conf下面.
3.確保hadoop叢集配置了 HADOOP_CONF_DIR or YARN_CONF_DIR&
1.yarn-standalone方式提交到yarn
在${SPARK_HOME}下面執行:
SPARK_JAR=./assembly/target/scala-2.10.4/spark-assembly-0.9.0-incubating-hadoop2.2.0.jar \
./bin/spark-class org.apache.spark.deploy.yarn.Client \
--jar ./examples/target/scala-2.10/spark-examples_2.10-assembly-0.9.0-incubating.jar \
--class org.apache.spark.examples.SparkPi \
--args yarn-standalone \
--num-workers 3 \
--master-memory 2g \
--worker-memory 2g \
--worker-cores 1
2. yarn-client 方式提交到yarn
SPARK_YARN_APP_JAR=examples/target/scala-2.10/spark-examples_2.10-assembly-0.9.0-incubating.jar \
./bin/run-example org.apache.spark.examples.SparkPi yarn-client
因為spark文件中只介紹了兩種用指令碼提交到yarn的例子,並沒有介紹如何透過程式提交yarn,但是我們的需求需要這樣。網上很難找到例子,經過幾天摸索,終於用程式提交到yarn成功,下面總結一下。先介紹官網提交的例子,我用的是spark 0.9.0 hadoop2.2.0
一.使用指令碼提交
1.使用spark指令碼提交到yarn,首先需要將spark所在的主機和hadoop叢集之間hosts相互配置(也就是把spark主機的ip和主機名配置到hadoop所有節點的/etc/hosts裡面,再把叢集所有節點的ip和主機名配置到spark所在主機的/etc/hosts裡面)。
2.然後需要把hadoop目錄etc/hadoop下面的*-sit.xml複製到${SPARK_HOME}的conf下面.
3.確保hadoop叢集配置了 HADOOP_CONF_DIR or YARN_CONF_DIR&
1.yarn-standalone方式提交到yarn
在${SPARK_HOME}下面執行:
SPARK_JAR=./assembly/target/scala-2.10.4/spark-assembly-0.9.0-incubating-hadoop2.2.0.jar \
./bin/spark-class org.apache.spark.deploy.yarn.Client \
--jar ./examples/target/scala-2.10/spark-examples_2.10-assembly-0.9.0-incubating.jar \
--class org.apache.spark.examples.SparkPi \
--args yarn-standalone \
--num-workers 3 \
--master-memory 2g \
--worker-memory 2g \
--worker-cores 1
2. yarn-client 方式提交到yarn
在${SPARK_HOME}下面執行:
SPARK_JAR=./assembly/target/scala-2.10.4/spark-assembly-0.9.0-incubating-hadoop2.2.0.jar \
SPARK_YARN_APP_JAR=examples/target/scala-2.10/spark-examples_2.10-assembly-0.9.0-incubating.jar \
./bin/run-example org.apache.spark.examples.SparkPi yarn-client