如何搭建spark yarn 模式的集群集群。

以下是的 Spark YARN 模式集群搭建步骤:

 

一、环境准备

 

1. 服务器规划

 

- 至少 3 台节点:1 台主节点(运行 HDFS NameNode、YARN ResourceManager),2 台从节点(运行 HDFS DataNode、YARN NodeManager)。

 

- 软件要求:JDK 1.8+、Hadoop 3.x(含 HDFS 和 YARN)、Spark 3.x。

 

2. 基础配置

 

- 关闭防火墙和 SELinux:

bash

systemctl stop firewalld && systemctl disable firewalld  

sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config  

 

 

- 配置主节点到从节点的 SSH 免密登录。

 

- 同步系统时间(如使用  ntpdate )。

 

二、安装与配置 Hadoop(YARN 依赖)

 

1. 解压安装

bash

tar -zxvf hadoop-3.x.tar.gz -C /opt/  

mv /opt/hadoop-3.x /opt/hadoop  

 

 

2. 配置环境变量

在  ~/.bashrc  中添加:

bash

export HADOOP_HOME=/opt/hadoop  

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin  

 

 

执行  source ~/.bashrc  生效。

 

3. 修改核心配置文件

 

-  hadoop-env.sh :指定 JDK 路径(如  export JAVA_HOME=/usr/java/jdk1.8.0_301 )。

 

-  core-site.xml :

xml

<property>  

  <name>fs.defaultFS</name>  

  <value>hdfs://主节点IP:9000</value>  

</property>  

 

 

-  hdfs-site.xml :

xml

<property>  

  <name>dfs.replication</name>  

  <value>2</value> <!-- 数据副本数,根据节点数调整 -->  

</property>  

 

 

-  yarn-site.xml :

xml

<property>  

  <name>yarn.resourcemanager.hostname</name>  

  <value>主节点IP</value>  

</property>  

 

 

4. 启动 Hadoop

bash

hdfs namenode -format # 首次初始化 namenode  

start-dfs.sh # 启动 HDFS  

start-yarn.sh # 启动 YARN  

 

 

三、安装与配置 Spark

 

1. 解压安装

bash

tar -zxvf spark-3.x-bin-hadoop3.x.tgz -C /opt/  

mv /opt/spark-3.x-bin-hadoop3.x /opt/spark  

 

 

2. 配置环境变量

在  ~/.bashrc  中添加:

bash

export SPARK_HOME=/opt/spark  

export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin  

 

 

执行  source ~/.bashrc  生效。

 

3. 修改 Spark 配置

 

- 复制并编辑  spark-env.sh :

bash

cp /opt/spark/conf/spark-env.sh.template /opt/spark/conf/spark-env.sh  

echo "export HADOOP_CONF_DIR=/opt/hadoop/etc/hadoop" >> /opt/spark/conf/spark-env.sh  

echo "export SPARK_MASTER_IP=主节点IP" >> /opt/spark/conf/spark-env.sh  

 

 

- 编辑  slaves  文件(无后缀),添加从节点 IP(每行一个,如  从节点1IP   从节点2IP )。

 

4. 分发到从节点

bash

scp -r /opt/spark 从节点1IP:/opt/  

scp -r /opt/spark 从节点2IP:/opt/  

 

 

从节点执行  source ~/.bashrc  生效。

 

四、启动 Spark 集群(YARN 模式)

 

Spark on YARN 无需单独启动 Spark 集群,直接提交任务到 YARN 即可:

 

1. 提交任务示例

bash

spark-submit \  

  --master yarn \  

  --deploy-mode cluster \ # 集群模式(AM 运行在 YARN 中)  

  --executor-memory 2g \  

  --num-executors 2 \  

  /opt/spark/examples/jars/spark-examples_*.jar wordcount \  

  hdfs:///input.txt hdfs:///output  

 

 

2. 验证

 

- 通过 YARN 界面(默认端口  8088 )查看任务运行状态。

 

- 通过 Spark 历史服务器(配置  spark.history.fs.logDirectory  并启动  start-history-server.sh )查看任务日志。

 

关键说明

 

- YARN 模式特点:Spark 任务直接运行在 YARN 资源管理器上,无需维护独立的 Spark 集群。

 

- 配置调优:根据服务器资源调整  yarn.nodemanager.resource.memory-mb (YARN 内存)和 Spark 任务参数(如  --executor-memory )。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值