大数据 | Spark安装及测试

一、安装 Spark On Yarn

在公司中,通常采用Yarn进行资源调度,故此处采用Yarn模式的集群部署。

采用Yarn部署模式时,需要保证集群中已经安装好Hadoop集群,在此基础上才能实现Yarn模式的部署。

在Yarn模式中,Spark应用程序有两种运行模式:
yarn-client:Driver程序运行在客户端,适用于交互、调试,希望立即看到app的输出;

yarn-cluster:Driver程序运行在由RM启动的 AppMaster中,适用于生产环境
二者的主要区别:Driver在哪里!

1. Yarn配置

修改Hadoop中的 yarn-site.xml 配置

$HADOOP_HOME/etc/hadoop/yarn-site.xml中增加如下配置,然后分发到集群其他节点,重启yarn 服务。(以下配置保证在运行spark job时不会抛内存不足等的异常)

<property>
        <name>yarn.nodemanager.pmem-check-enabledname>
        <value>falsevalue>
property>
<property>
        <name>yarn.nodemanager.vmem-check-enabledname>
        <value>falsevalue>
property>

2. Spark配置

# 进入spark配置目录
$ cd /opt/bigdata/hadoop/server/spark-3.2.0-bin-hadoop3.2/conf
# copy 一个模板配置
$ cp spark-env.sh.template spark-env.sh

在spark-env.sh下加入如下配置,并分发到各节点

# Hadoop 的配置文件目录
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
# YARN 的配置文件目录
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
# SPARK 的目录
export SPARK_HOME=/opt/bigdata/hadoop/server/spark-3.2.0-bin-hadoop3.2
# SPARK 执行文件目录
export PATH=$SPARK_HOME/bin:$PATH

3. 测试验证

spark资源调度依托yarn集群,因此只需保证hdfs、yarn集群正常运行,即可进行spark job的测试,不需要启动Spark集群;
client运行模式

$ spark-submit --master yarn \
> --deploy-mode client \
> --class org.apache.spark.examples.SparkPi \
> $SPARK_HOME/examples/jars/spark-examples_2.12-3.2.3.jar 20

可以在控制台输出Pi计算完成的结果:
在这里插入图片描述

cluster运行模式

$ spark-submit --master yarn \
> --deploy-mode cluster \
> --class org.apache.spark.examples.SparkPi \
> $SPARK_HOME/examples/jars/spark-examples_2.12-3.2.3.jar 20

参考文献:
安装部分:
https://www.cnblogs.com/yanshw/p/11614988.html
https://juejin.cn/post/7114246197988032525#heading-14

你可能感兴趣的:(数据库,spark,大数据,hadoop,hdfs,yarn)