Spark集群搭建之Yarn模式

配置集群
1.上传并解压spark-3.1.2-bin-hadoop3.2.tgz,重命名解压之后的目录为spark-yarn。

  1. 修改一下spark的环境变量,/etc/profile.d/my_env.sh 。
    # spark 环境变量
    export SPARK_HOME=/opt/module/spark-yarn
    export PATH=PATH:SPARK_HOME/bin:$SPARK_HOME/sbin

同步给其他的设备: xsync /etc/profile.d/

3.修改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/同步一下。

4.修改spark配置。 把三个文件的名字重新设置一下。

workers.tempalte 改成 workers,spark-env.sh.template 改成 spark-env.sh,

spark-defaults.conf.template 改成 spark-defaults.conf。

然后,在workers文件中添加

hadoop100

hadoop101
hadoop102

在spark-env.sh文件中添加

HADOOP_CONF_DIR=/opt/module/hadoop-3.1.3/etc/hadoop

YARN_CONF_DIR=/opt/module/hadoop-3.1.3/etc/hadoop

在spark-defaults.conf文件中添加

spark.eventLog.enabled true
spark.eventLog.dir hdfs://hadoop100:8020/directory
spark.yarn.historyServer.address=hadoop100:18080
spark.history.ui.port=18080

5.同步配置文件到其他设备。

使用spark-submit提交任务

spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode cluster /opt/module/spark-standalone/examples/jars/spark-examples_2.12-3.1.1.jar 10

代码说明:

spark-submit:这是 Spark 提供的用于提交 Spark 应用程序的脚本。

  1. --class org.apache.spark.examples.SparkPi:指定了应用程序
相关推荐
一匹电信狗44 分钟前
【MySQL】数据库基础
linux·运维·服务器·数据库·mysql·ubuntu·小程序
FL16238631291 小时前
VMware运行python脚本提示libGL error: MESA-LOADER: failed to open swrast
linux·运维·服务器
路由侠内网穿透1 小时前
本地部署开源视频存档和搜索引擎工具 TubeArchivist 并实现外部访问
服务器·网络·windows·tcp/ip·搜索引擎·开源
未来之窗软件服务1 小时前
操作系统应用开发(十四)RustDesk服务器配置——东方仙盟筑基期
运维·服务器·远程桌面·rustdesk·仙盟创梦ide·东方仙盟
189228048612 小时前
NX482NX486美光固态闪存NX507NX508
大数据·网络·数据库·人工智能·性能优化
ms72wx3 小时前
拥抱终端:Linux 新手命令行入门指南
linux·运维·服务器
数据与人工智能律师3 小时前
数字人民币钱包抉择:匿名自由与实名安全的法律风险评估
大数据·人工智能·python·云计算·区块链
DashingGuy4 小时前
Spark的Broadcast Join以及其它的Join策略
大数据·spark
wheeldown5 小时前
【Linux】Linux管道与进程池深度解析:从原理到实战
linux·运维·服务器
两个西柚呀7 小时前
nodejs中http模块搭建web服务器
服务器·前端·http