运行 Spark on YARN

Spark 0.6.0 以上的版本添加了在yarn上执行spark application的功能支持,并在之后的版本中持续的

改进。关于本文的内容是翻译官网的内容,大家也可参考spark的官网地址:http://spark.apache.org/docs/latest/running-on-yarn.html

1. 在yarn上执行spark

需要确保提交spark任务的客户端服务器上, HADOOP_CONF_DIR 或者 YARN_CONF_DIR 目录中包含

hadoop集群的配置文件。这些配置文件被用于读写HDFS和连接yarn 的resourceManager。此目录中包含的配置

将分发到YARN群集,以便应用程序application使用的所有容器都使用相同的配置。

如果配置中引用了Java系统属性或未由YARN管理的环境变量,则还应在Spark应用程序的配置(driver, executors, and the AM when running in client mode驱动程序,执行程序和在客户端模式下运行时的AM)中设置它们。

在yarn上执行sprak 的application有两种部署模式:集群模式和客户端模式。在集群模式下, Spark driver程序在集群上由YARN管理的application master 进程内运行,客户端程序可以在启动应用程序后离开。在客户端模式下,driver程序在客户端进程中运行,application master仅用于从YARN请求资源。

与Spark独立模式和Mesos模式不同,其中主节点地址在-master参数中指定,在YARN模式下,ResourceManager的地址是从Hadoop配置中选取。 因此,-master的参数值是 yarn。

在集群模式下执行 Spark application:

$ ./bin/spark-submit --class path.to.your.Class --master yarn --deploy-mode cluster [options] <app jar> [app options]

示例:

$ ./bin/spark-submit --class org.apache.spark.examples.SparkPi \
--master yarn \
--deploy-mode cluster \
--driver-memory 4g \
--executor-memory 2g \
--executor-cores 1 \
--queue thequeue \
lib/spark-examples*.jar \
10

以上操作启动一个YARN client程序 ,这个client请求yarn启动一个默认的Application Master。然后SparkPi将作为Application Master的一个子线程运行。 客户端程序将定期轮询应用程序主控以获取状态更新,并在控制台中显示它们。 应用程序完成运行后,客户端将退出。 请参阅下面的“调试应用程序”部分,了解如何查看驱动程序和执行程序日志。

在客户端模式下执行 Spark application:

要在客户端模式下启动Spark应用程序,请执行相同操作,但用client替换cluster。 以下显示了如何在客户端模式下运行spark-shell:

$ ./bin/spark-shell --master yarn --deploy-mode client

添加spark application 依赖的jar包

在集群模式下,添加spark application 依赖的jar包*

$ ./bin/spark-submit --class my.main.Class \
--master yarn \
--deploy-mode 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 :state: ACCEPTED一直 出现

    今天运行spark on yarn 一直出现 16/09/20 18:40:41 INFO yarn.Client: Application report for application_147417 ...

  2. Spark(十二) -- Spark On Yarn & Spark as a Service & Spark On Tachyon

    Spark On Yarn: 从0.6.0版本其,就可以在在Yarn上运行Spark 通过Yarn进行统一的资源管理和调度 进而可以实现不止Spark,多种处理框架并存工作的场景 部署Spark On ...

  3. Spark on YARN两种运行模式介绍

    本文出自:Spark on YARN两种运行模式介绍http://www.aboutyun.com/thread-12294-1-1.html(出处: about云开发)   问题导读 1.Spark ...

  4. Spark on YARN的两种运行模式

    Spark on YARN有两种运行模式,如下 1.yarn-cluster:适合于生产环境.        Spark的Driver运行在ApplicationMaster中,它负责向YARN Re ...

  5. Spark on YARN简介与运行wordcount(master、slave1和slave2)(博主推荐)

    前期博客 Spark on YARN模式的安装(spark-1.6.1-bin-hadoop2.6.tgz +hadoop-2.6.0.tar.gz)(master.slave1和slave2)(博主 ...

  6. Spark on Yarn运行错误:Yarn application has already ended! It might have been killed or unable to launch application master

    Spark on Yarn模式运行错误: bin/spark-shell --master yarn --deploy-mode client #报错 ​ 查看8088页面上的工作日志 错误原因:在执 ...

  7. Spark on Yarn 集群运行要点

    实验版本:spark-1.6.0-bin-hadoop2.6 本次实验主要是想在已有的Hadoop集群上使用Spark,无需过多配置 1.下载&解压到一台使用spark的机器上即可 2.修改配 ...

  8. 大话Spark(2)-Spark on Yarn运行模式

    Spark On Yarn 有两种运行模式: Yarn - Cluster Yarn - Client 他们的主要区别是: Cluster: Spark的Driver在App Master主进程内运行 ...

  9. Spark on YARN运行模式(图文详解)

    不多说,直接上干货! 请移步 Spark on YARN简介与运行wordcount(master.slave1和slave2)(博主推荐) Spark on YARN模式的安装(spark-1.6. ...

随机推荐

  1. GPS部标监控平台的架构设计(七)-压力测试

    部标监控平台的压力测试是部标检测流程的最后一个检测环节,也是最难的,很多送检的企业平台都是卡壳在这一个环节.企业平台面临的问题如下: 1.对于压力测试的具体指标要求理解含糊,只知道是模拟一万辆车终端进 ...

  2. svg学习(九)path

    <path> 标签用来定义路径. 下面的命令可用于路径数据: M = moveto L = lineto H = horizontal lineto V = vertical lineto ...

  3. zTree Jquery eCharts

    (function(){ var setting = { view:{ dblClickExpand:false, expandSpeed:300 }, data: { simpleData: { e ...

  4. codeforce 121E - Lucky Array

    10^4以内只由4和7构成的数字只有31种,那么做法就很简单了,求出每个数字与其最接近的幸运数的差值,然后建立线段树,线段树维护区间最小值和最小值个数,如果操作过程中最小值<0,那么就去对差值进 ...

  5. 【C#】时间戳转换

    今天有时间戳转换的需求,网上找了半天才找到相关代码,经测试有效,特作此笔记和大家分享! 1.时间戳转为C#格式时间 /// <summary> /// 时间戳转为C#格式时间 /// &l ...

  6. JsonOperate 帮助类

    引用 Newtonsoft.Json using Newtonsoft.Json; using System; using System.Collections.Generic; using Syst ...

  7. android 编译过程

    引用:http://www.cnblogs.com/devinzhang/archive/2011/12/20/2294686.html http://blog.sina.com.cn/s/blog_ ...

  8. 夺命雷公狗-----React---27--小案例之react经典案例todos(清除已完成)

    这个功能其实也是很简单的,就只是让todos里面的内isDown进行取反即可 然后在Zong里面进行下修改即可 效果如下所示: 代码如下所示: <!DOCTYPE html> <ht ...

  9. opencv的学习笔记5

    总结原博文中的一些边缘检测算子和滤波器.(Canny算子,  Sobel算子,  Laplace算子以及Scharr滤波器) 首先,一般的边缘检测包括三个步骤: 1)滤波:边缘检测的算法主要是基于图像 ...

  10. yii2输出sql语句

    yii2如何输出具体的查询的sql语句: $query = User::find() ->where(['id'=>[1,2,3,4]) ->select(['username']) ...