环境说明
- 准备三台服务器,分别为:bigdata141(hadoop 主节点)、bigdata142、bigdata143
- 确保 hadoop 集群先启动好,我这边的 hadoop 版本为 3.2.0
- 另准备一台服务器,bigdata144,作为 hadoop 客户端节点,也是作为spark的客户端节点
下载安装包
下载链接:Index of /dist/spark
注意版本对应,这边 spark 选择版本为 3.2.0
下载完后,上传到作为客户端的服务器,我这边上传到 bigdata144 的 /data/soft/ 目录下
解压并配置
解压
解压,而后进入
[root@bigdata144 soft]# tar -zxvf spark-3.2.0-bin-hadoop3.2.tgz
[root@bigdata144 soft]# cd spark-3.2.0-bin-hadoop3.2
[root@bigdata144 spark-3.2.0-bin-hadoop3.2]# ll
配置
1、进入 conf/ 目录,复制一份 spark-env.sh.template
[root@bigdata144 spark-3.2.0-bin-hadoop3.2]# cd conf/
[root@bigdata144 conf]# ll
[root@bigdata144 conf]# cp spark-env.sh.template spark-env.sh
[root@bigdata144 conf]# vi spark-env.sh
2、编辑 spark-env.sh,在文件末尾添加 JAVA_HOME 和 hadoop 配置文件目录:
export JAVA_HOME=/data/soft/jdk1.8
export HADOOP_CONF_DIR=/data/soft/hadoop-3.2.0/etc/hadoop
启动Spark
此部署方式不用启动 spark 任何进程
提交任务
1、查看 examples/jars 目录下的包,然后尝试提交任务:
[root@bigdata144 spark-3.2.0-bin-hadoop3.2]# ll examples/jars
[root@bigdata144 spark-3.2.0-bin-hadoop3.2]# bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode cluster examples/jars/spark-examples_2.12-3.2.0.jar
2、到 yarn 的界面上查看提交的 spark 任务信息,这样就可以在 yarn 上执行 spark 任务了