3. Yarn-Cluster

Yarn是一种统一资源管理机制,可以在上面运行多种计算框架。Spark on Yarn模式分为两种:Yarn-Cluster和Yarn-Client,前者Driver运行在Worker节点,后者Driver运行在Client节点上。采用Spark on Yarn模式,只需要在一个节点部署Spark就行了,因此部署比较简单。

先介绍一下Yarn-Cluster。

首先把spark-assembly-1.6.0-hadoop2.6.0.jar上传到HDFS。

由于Yarn在安装Hadoop的时候已经配置了,所以就直接对Spark进行配置了。spark-env.sh在部署Standalone模式是已经设置了,所以也不需要在设置。这里只需要在Master节点设置spark-defaults.conf,该文件在${HADOOP_HOME}/conf目录下,增加以下设置:

spark.master                         spark://master:7077
spark.yarn.jar      hdfs://master:9000/spark/jars/spark-assembly-1.6.0-hadoop2.6.0.jar
spark.eventLog.enabled true
spark.eventLog.dir      hdfs://master:9000/spark/logs
spark.serializer org.apache.spark.serializer.KryoSerializer
spark.driver.memory 1g
spark.yarn.scheduler.heartbeat.intervals-ms 5000
spark.yarn.preserve.staging.files false
spark.yarn.max.executor.failures 6
spark.driver.extraJavaOptions -Dhdp.version=2.6.5
spark.yarn.am.extraJavaOptions -Dhdp.version=2.6.5

Spark on Yarn不需要启动Spark的Master或者Slave,只需要启动Hadoop的DFS和Yarn就行了,也就是只需要运行Hadoop的start-all.sh就行了,因此运行也相对简单,并且性能还比较好。

启动Hadoop的DFS和Yarn以后,运行:

其中的 --master yarn-cluster表明以Yarn-Cluster模式运行。运行结束以后可以Master:8080看到这个Application:

点进Logs可以看见运行结果:

3. Yarn-Client

Yarn-Client的部署和Yarn-Cluster是一样的,区别就在于Yarn-Cluster的Driver运行在Worker节点,而Yarn-Client的Driver运行在Client节点。

输入命令:

其中--master yarn-client表明以Yarn-Client模式运行。

Spark的运行模式(2)--Yarn-Cluster和Yarn-Client的更多相关文章

  1. Spark的 运行模式详解

    Spark的运行模式是多种多样的,那么在这篇博客中谈一下Spark的运行模式 一:Spark On Local 此种模式下,我们只需要在安装Spark时不进行hadoop和Yarn的环境配置,只要将S ...

  2. 【原】Spark不同运行模式下资源分配源码解读

    版权声明:本文为原创文章,未经允许不得转载. 复习内容: Spark中Task的提交源码解读 http://www.cnblogs.com/yourarebest/p/5423906.html Sch ...

  3. Spark通过YARN提交任务不成功(包含YARN cluster和YARN client)

    无论用YARN cluster和YARN client来跑,均会出现如下问题. [spark@master spark-1.6.1-bin-hadoop2.6]$ jps 2049 NameNode ...

  4. 017 Spark的运行模式(yarn模式)

    1.关于mapreduce on yarn 来提交job的流程 yarn=resourcemanager(RM)+nodemanager(NM) client向RM提交任务 RM向NM分配applic ...

  5. Spark多种运行模式

    1.测试或实验性质的本地运行模式(单机) 该模式被称为Local[N]模式,是用单机的多个线程来模拟Spark分布式计算,通常用来验证开发出来的应用程序逻辑上是否有问题. 其中N代表可以使用N个线程, ...

  6. yarn cluster和yarn client模式区别——yarn-cluster适用于生产环境,结果存HDFS;而yarn-client适用于交互和调试,也就是希望快速地看到application的输出

    Yarn-cluster VS Yarn-client 从广义上讲,yarn-cluster适用于生产环境:而yarn-client适用于交互和调试,也就是希望快速地看到application的输出. ...

  7. Spark教程——(11)Spark程序local模式执行、cluster模式执行以及Oozie/Hue执行的设置方式

    本地执行Spark SQL程序: package com.fc //import common.util.{phoenixConnectMode, timeUtil} import org.apach ...

  8. Spark standalone运行模式

    Spark Standalone 部署配置 Standalone架构 手工启动一个Spark集群 https://spark.apache.org/docs/latest/spark-standalo ...

  9. Spark的运行模式(1)--Local和Standalone

    Spark一共有5种运行模式:Local,Standalone,Yarn-Cluster,Yarn-Client和Mesos. 1. Local Local模式即单机模式,如果在命令语句中不加任何配置 ...

  10. spark的运行模式

    1.local(本地模式) 单机模式,通常用来测试 将spark应用以多线程方式,直接运行在本地 本地模式可以启动多个executor不过上限不能超过cpu数 2.standalone(独立模式) 独 ...

随机推荐

  1. POJ 1135 Domino Effect (Dijkstra 最短路)

    Domino Effect Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 9335   Accepted: 2325 Des ...

  2. Mac iterm2 创建服务器列表

  3. ios成长之每日一遍(day 4)

    今天, 主要讲四种常见的问题, 废话不多说了, 直接开始. 自动布局:这个我发现有一篇文章写得非常好, 直接表明出地http://www.cocoachina.com/applenews/devnew ...

  4. TeXLive里面集成了CTeX,Lyx是一个编辑软件

    TeXLive里面集成了CTeX,LaTeX是排版引擎,CTeX和TeXLive是发行版.LaTeX是毛坯房,CTeX和TeX Live是带精装的房子.CTeX 套装是一个个人作品,存在很多问题.这些 ...

  5. Asp.Net Mvc表单提交之List集合

    一.说明 1.Asp.Net Mvc中Action的参数可以自动接收和反序列化form表单的值, 2.对于name=value类型,只要Action参数的变量名和input的name相同就行,不区分大 ...

  6. 内存数据库-H2简介与实践

    一.H2数据库介绍 H2数据库地址:http://www.h2database.com/html/main.html H2是一个开源的嵌入式(非嵌入式设备)数据库引擎,它是一个用Java开发的类库,可 ...

  7. how to use perf

    Since I did't see here anything about perf which is a relatively new tool for profiling the kernel a ...

  8. window.open 浏览器差异.

    首先引入 w3help的,莫的测试: 原帖地址:http://www.w3help.org/zh-cn/causes/BX1053   w3help的测试,和我的测试相互补充,应该比较完整了.悲剧的是 ...

  9. [leetcode]Interleaving String @ Python

    原题地址:https://oj.leetcode.com/problems/interleaving-string/ 题意: Given s1, s2, s3, find whether s3 is ...

  10. iOS开发-UITabBarController详解

    我们在开发中经常会使用到UITabBarController来布局App应用,使用UITabBarController可以使应用看起来更加的清晰,iOS系统的闹钟程序,ipod程序都是非常好的说明和A ...