spark需要设置参数
1、spark-env.sh 根据集群设置
export SPARK_HOME=/export/servers/spark-2.2.0-bin-hadoop2.7
export JAVA_HOME=/export/servers/jdk1.8.0_141
export HADOOP_CONF_DIR=/export/servers/hadoop-2.7.5/etc/hadoop
2、slaves 根据集群设置
node01
node02
node03
yarn cluster 模式提交spark任务
在yarn模式提交spark任务,不需要启动spark集群,在spark的bin目录下spark-submit提交任务即可。
此模式提交的spark任务,driver是运行在yarn集群上的某个节点,客户端是看不到运行结果的,生产环境中一般使用该模式。
./bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master yarn \
--deploy-mode cluster \
--driver-memory 1g \
--executor-memory 1g \
--executor-cores 1 \
--queue default \
/export/servers/spark-2.2.0-bin-hadoop2.7/examples/jars/spark-examples_2.11-2.2.0.jar
下图是yarn cluster提交的结果,只告知执行成功。
在yarn 界面上显示执行成功
yarn client 模式提交spark任务
yarn client模式提交任务也是不用启动spark 集群,不一样的是driver运行在客户端,随时可以中断执行,能看到计算结果。一般调试使用。
./bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master yarn \
--deploy-mode client \
--driver-memory 1g \
--executor-memory 1g \
--executor-cores 1 \
--queue default \
/export/servers/spark-2.2.0-bin-hadoop2.7/examples/jars/spark-examples_2.11-2.2.0.jar
可以看到区别是显示pi的计算结果
在yarn界面中显示是一样的。