Yarn模式
1、解压缩文件
[user@hadoop102 software]$ tar -zxvf spark-3.0.0-bin-hadoop3.2.tgz -C /opt/module
[user@hadoop102 software]$ cd /opt/module
[user@hadoop102 module]$ mv spark-3.0.0-bin-hadoop3.2 spark-yarn
2、修改配置文件
(1)修改hadoop配置文件/opt/module/hadoop-3.1.3/etc/hadoop/yarn-site.xml, 并分发
<!--是否启动一个线程检查每个任务正使用的物理内存量,如果任务超出分配值,则直接将其杀掉,默认是true -->
<property>
<name>yarn.nodemanager.pmem-check-enabled</name>
<value>false</value>
</property>
<!--是否启动一个线程检查每个任务正使用的虚拟内存量,如果任务超出分配值,则直接将其杀掉,默认是true -->
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
xsync /opt/module/hadoop-3.1.3/etc/hadoop/yarn-site.xml
(2)修改conf/spark-env.sh,添加JAVA_HOME和YARN_CONF_DIR配置
export JAVA_HOME=/opt/module/jdk1.8.0_212
YARN_CONF_DIR=/opt/module/hadoop-3.1.3/etc/hadoop
export SPARK_MASTER_IP=192.168.10.102
(3)重新加载环境变量
source /opt/module/spark-yarn/conf/spark-env.sh
3、启动HDFS以及YARN集群
myhadoop.sh start
4、提交应用
[user@hadoop102 spark-yarn]$ bin/spark-submit \
> --class org.apache.spark.examples.SparkPi \
> --master yarn \
> --deploy-mode cluster \
> ./examples/jars/spark-examples_2.12-3.0.0.jar \
> 10
查看历史记录
5、配置历史服务器
(1)修改spark-defaults.conf.template文件名为spark-defaults.conf
mv spark-defaults.conf.template spark-defaults.conf
(2)修改spark-default.conf文件,配置日志存储路径
spark.eventLog.enabled true
spark.eventLog.dir hdfs://hadoop102:8020/directory
(3)修改spark-env.sh文件, 添加日志配置
export SPARK_HISTORY_OPTS="
-Dspark.history.ui.port=18080
-Dspark.history.fs.logDirectory=hdfs://hadoop102:8020/directory
-Dspark.history.retainedApplications=30"
(4)修改spark-defaults.conf
spark.yarn.historyServer.address=hadoop102:18080
spark.history.ui.port=18080
(5)启动历史服务
sbin/start-history-server.sh
端口号
- Spark查看当前Spark-shell运行任务情况端口号:4040(计算)
- Spark Master内部通信服务端口号:7077
- Standalone模式下,Spark Master Web端口号:8080(资源)
- Spark历史服务器端口号:18080
- Hadoop YARN任务运行情况查看端口号:8088