Spark,集群搭建之Yarn模式

以下是Spark基于Yarn模式的集群搭建关键步骤(需先部署Hadoop Yarn集群):

一、环境准备

  1. 确认Hadoop已运行
  • 确保HDFS、Yarn ResourceManager和NodeManager正常启动。
  1. 安装Java
  • 所有节点安装JDK 8+,配置 JAVA_HOME 环境变量。
  1. 关闭防火墙

bash

systemctl stop firewalld && systemctl disable firewalld

二、下载与配置Spark

  1. 下载Spark包
  • 官网下载对应Hadoop版本的Spark(如 spark-3.5.0-bin-hadoop3 ),上传至主节点。
  1. 解压与配置

bash

tar -zxvf spark-3.5.0-bin-hadoop3.tgz -C /opt

cd /opt/spark-3.5.0-bin-hadoop3/conf

  1. 修改配置文件

bash

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk # 实际JDK路径

export HADOOP_CONF_DIR=/etc/hadoop/conf # Hadoop配置目录

  • spark-defaults.conf (若无则新建):

bash

spark.master yarn

spark.eventLog.enabled true

spark.eventLog.dir hdfs://nameservice1/spark-logs # HDFS日志路径(需提前创建)

三、分发Spark到所有节点

bash

scp -r /opt/spark-3.5.0-bin-hadoop3 slave1:/opt

scp -r /opt/spark-3.5.0-bin-hadoop3 slave2:/opt

  • 确保所有节点 HADOOP_CONF_DIR 路径正确(与Hadoop配置一致)。

四、验证与提交任务

  1. 测试HDFS连通性
  • 在任意节点执行:

bash

hdfs dfs -mkdir -p /spark-logs # 创建日志目录(需与配置一致)

hdfs dfs -chmod -R 777 /spark-logs

  1. 提交Spark任务到Yarn

bash

bin/spark-submit \

--class org.apache.spark.examples.SparkPi \

--master yarn \

--deploy-mode cluster \ # 可选client模式(默认)

--executor-memory 2g \

--num-executors 3 \

./examples/jars/spark-examples_*.jar 100

  1. 查看任务状态
  • Yarn Web界面: http://resourcemanager_ip:8088/cluster ,查看应用运行情况。

  • Spark历史服务器(需配置 spark.history.fs.logDirectory ): http://master_ip:18080 。

注意事项

  1. 资源分配
  • 通过 --executor-memory 和 --executor-cores 控制单个Executor资源。

  • Yarn全局资源需在 yarn-site.xml 中配置(如 yarn.nodemanager.resource.memory-mb )。

  1. 日志存储
  • 确保HDFS路径可写,否则任务可能失败。
  1. 版本兼容性
  • Spark与Hadoop版本需兼容(如Spark 3.5.x对应Hadoop 3.2+)。
  1. 高可用性
  • 若Yarn启用HA,需在 spark-defaults.conf 中配置 spark.yarn.resourceManager.address 为HA地址。
相关推荐
暗影八度1 天前
Spark流水线数据质量检查组件
大数据·分布式·spark
涤生大数据2 天前
Apache Spark 4.0:将大数据分析提升到新的水平
数据分析·spark·apache·数据开发
xufwind2 天前
spark standlone 集群离线安装
大数据·分布式·spark
大数据CLUB2 天前
基于spark的奥运会奖牌变化数据分析
大数据·hadoop·数据分析·spark
华子w9089258593 天前
基于 Python Django 和 Spark 的电力能耗数据分析系统设计与实现7000字论文实现
python·spark·django
小新学习屋3 天前
Spark从入门到熟悉(篇三)
大数据·分布式·spark
Aurora_NeAr4 天前
Spark SQL架构及高级用法
大数据·后端·spark
百度Geek说5 天前
搜索数据建设系列之数据架构重构
数据仓库·重构·架构·spark·dubbo
大数据CLUB6 天前
基于spark的航班价格分析预测及可视化
大数据·hadoop·分布式·数据分析·spark·数据可视化