`

05、Spark on Yarn

 
阅读更多

Spark 0.6.0开始支持此功能

 

准备:

运行Spark-on-YARN需要Spark的二进制发布包。参考编译
 

配置:

环境变量:

SPARK_YARN_USER_ENV 

    用户可以在这个参数中设置Spark on YARN的环境变量,可以省略。
    例如:SPARK_YARN_USER_ENV="JAVA_HOME=/jdk64,FOO=bar"。
// TODO 具体可配置项

SPARK_JAR

    设置Spark jar在HDFS的位置。
    例如:export SPARK_JAR=hdfs:///some/path.
在每台Hadoop NodeManager节点上设置变量

启动:

确保HADOOP_CONF_DIRYARN_CONF_DIR所指向的目录包含Hadoop集群的配置文件。这些配置文件用来连接YARN的ResourceManager并写数据到DFS。
此为提交任务的Spark安装,为了使用spark-submit工具。因此,只在此机器上配置便可。

有两种模式:

yarn-cluster:Spark的driver运行YARN集群启动的一个application master进程中,client在初始化application后可以消失。 生产环境
yarn-client:Spark的driver运行在client进程中,而application master只用来向YARN申请资源。测试使用?//TODO 做验证
 
不像Spark standalon和mesos模式,在那儿master地址使用指定的master参数;在YARN模式中,ResourceManager的地址从Hadoop配置文件中获取。因此,YARN模式中master参数简单的为“yarn-client”或“yarn-cluster”。
 

在yarn-cluster模式中启动一个application:

./bin/spark-submit --class path.to.your.Class --master yarn-cluster [options] <app jar> [app options]
例如:
SPARK_JAR=hdfs://hansight/libs/spark-assembly-1.0.2-hadoop2.4.0.2.1.4.0-632.jar \
./bin/spark-submit --class org.apache.spark.examples.SparkPI \
    --master yarn-cluster \
    --num-executors 3 \
    --driver-memory 4g \
    --executor-memory 2g \
    --executor-cores 1 \
    lib/spark-examples*.jar \
    10
注:上面启动一个YARN客户端,该客户端启动默认的Application Master。SparkPI将作为一个子线程运行在Application Master中。client将定期的读取Application Master获取状态更新并把更新显示在控制台中。一旦你的application运行完成client会结束。
 

在yarn-client模式中启动一个application:

./bin/spark-submit --master yarn-client  [options] <app jar> [app options]
只是把--master的参数值改为yarn-client,其它都与yarn-cluster相同。
 

添加其它JAR依赖

在yarn-cluster模式中,driver与client运行在不同的机器上。因此,SparkContext.addJar方法不会像client在本地模式那样开箱即用。为了使SparkContext.addJar可用,需要在启动命令参数--jars后面添加这些jar。
例如:
$ ./bin/spark-submit --class my.main.Class \
--master yarn-cluster \
--jars my-other-jar.jar,my-other-other-jar.jar
my-main-jar.jar
app_arg1 app_arg2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
参考:

 

分享到:
评论

相关推荐

    Spark实验:On Yarn模式安装部署(带答案)1

    Spark on Yarn是一种将Spark应用程序部署在Hadoop YARN资源管理器上的方法,它允许Spark充分利用YARN的资源管理和调度功能。在这个实验中,我们将详细探讨如何在Yarn模式下安装和部署Spark集群。 首先,我们需要...

    Spark on Yarn模式部署.docx

    Spark on Yarn 模式部署是一种常见的 Spark 应用场景,本文将详细介绍 Spark on Yarn 模式部署的步骤和配置过程。 标题解释 Spark on Yarn 模式部署是指将 Spark 应用程序部署在 Yarn 集群上,使得 Spark 能够使用 ...

    【讲义-第10期Spark公益大讲堂】Spark on Yarn-.pdf

    **Spark on Yarn** 是指Apache Spark集群管理器与Apache Hadoop YARN资源管理器之间的集成模式。这种模式下,YARN作为资源调度器负责分配资源,而Spark则负责任务的具体执行。这种方式使得Spark能够更好地利用Hadoop...

    Sparkonyarn集群搭建详细过程.pdf

    Spark on YARN 集群搭建详细过程 _title_:Spark on YARN 集群搭建详细过程 _description_:本文详细介绍了 Spark on YARN 集群搭建的过程,包括配置主机 hosts 文件、免密码登录、安装 Java、安装 Scala 等步骤。...

    Spark on Yarn模式的电信大数据处理平台.pdf

    此时,Yarn(Yet Another Resource Negotiator)出现了,它是Hadoop 2.0中引入的新资源管理框架,进一步优化了资源管理和任务调度,而Spark on Yarn模式则充分利用了Yarn的资源调度能力和Spark内存计算的优势,显著...

    spark初始化源码阅读sparkonyarn的client和cluster区别

    Spark 初始化源码阅读 Spark on YARN 的 Client 和 Cluster 区别 Spark 是一个大数据处理的开源框架,它可以在多种集群管理器上运行,如 YARN、Mesos 和 Standalone。Spark on YARN 是 Spark 在 YARN 集群管理器上...

    03_MapReduce 和Spark on YARN.docx

    在大数据处理领域,Hadoop MapReduce 和 Apache Spark 是两种重要的计算框架,它们都在YARN(Yet Another Resource Negotiator)上运行以实现资源管理和任务调度。本文将深入探讨这两个框架以及YARN的相关概念。 ...

    Spark on Yarn集群搭建手册

    Spark on Yan集群搭建的详细过程,减少集群搭建的时间

    基于docker搭建spark on yarn及可视化桌面.doc

    基于docker搭建spark on yarn及可视化桌面.doc

    Spark on Yarn之Executor内存管理 - 简书1

    【Spark on Yarn之Executor内存管理】 Spark是一个分布式计算框架,它可以在多个集群管理系统上运行,包括YARN(Hadoop的资源调度器)。Executor是Spark执行任务的基本单元,每个Executor在一个工作节点上运行,...

    Sparkonyarn集群搭建详细过程.docx

    Spark on YARN 集群搭建是一个复杂的过程,涉及到多台服务器的配置和软件的安装。以下是详细步骤和相关知识点: 1. **主机配置与网络通信** - `/etc/hosts` 文件配置至关重要,它用于解析主机名到IP地址的映射。...

    基于SparkonYarn的淘宝数据挖掘平台

    基于SparkonYarn的淘宝数据挖掘平台

    SPARK2_ON_YARN-2.4.0.cloudera2.jar

    SPARK2_ON_YARN-2.4.0 jar包下载

    Spark源码系列(七)Sparkonyarn具体实现

    本来不打算写的了,但是真的是闲来无事,整天看美剧也没啥意思。这一章打算讲一下Spark onyarn的实现,1.0.0里面...在第一章《spark-submit提交作业过程》的时候,我们讲过Sparkonyarn的在cluster模式下它的main clas

    三种方式的spark on kubernetes对比

    三种方式的spark on kubernetes对比,第一种:spark原生支持Kubernetes资源调度;第二种:google集成的Kubernetes的spark插件sparkoperator;第三种:standalone方式运行spark集群

    基于Spark_on_Yarn的淘宝数据挖掘平台.pdf

    ### 基于Spark_on_Yarn的淘宝数据挖掘平台 #### 一、为什么选择Spark_on_Yarn 在大数据处理领域,随着数据量的急剧增长和技术的发展,传统的数据处理框架如Hadoop MapReduce面临着一系列挑战。淘宝作为中国最大的...

    Spark&Yarn手动安装指南

    Spark on Yarn是指在Yarn集群中运行Spark应用程序。下面是Spark on Yarn的配置步骤: 1. 修改配置文件:修改spark-defaults.conf和spark-env.sh文件,配置Spark的参数。 2. 提交Spark任务:使用spark-submit命令...

    java提交spark任务到yarn平台的配置讲解共9页.pdf.zip

    Java提交Spark任务到YARN平台是一项常见的大数据处理操作,它结合了Java的编程能力和Spark的高性能计算框架,以及Hadoop的资源管理系统YARN。在这个过程中,开发者需要理解多个关键概念和配置步骤,以便有效地调度和...

    spark yarn模式的搭建.docx

    Spark On Yarn 是一个在 Apache Hadoop YARN(Yet Another Resource Negotiator)资源管理器上运行 Apache Spark 应用程序的框架。这种模式允许 Spark 利用 Hadoop 的集群资源管理和调度能力,使得 Spark 能够更好地...

    spark-yarn_2.10-1.6.0-cdh5.7.3.jar

    Oozie Spark on YARN requirement failed 所需jar包:http://blog.csdn.net/fansy1990/article/details/53856608

Global site tag (gtag.js) - Google Analytics