12、基于yarn的提交模式
一、三种提交模式
1、Spark内核架构,其实就是第一种模式,standalone模式,基于Spark自己的Master-Worker集群。2、第二种,是基于YARN的yarn-cluster模式。3、第三种,是基于YARN的yarn-client模式。4、如果,你要切换到第二种和第三种模式,很简单,将我们之前用于提交spark应用程序的spark-submit脚本,加上--master参数,设置为yarn-cluster,或yarn-client,即可。如果你没设置,那么,就是standalone模式。
二、基于YARN的提交模式
1、基于YARN的yarn-cluster模式
流程详细分析:spark-submit提交(yarn-cluster),发送请求到ResourceManager,请求启动ApplicationMaster,ResourceManager接收到请求后,会在某个NodeManager上分配container,启动ApplicationMaster ResourceManager分配Container,在某个NodeManager上,启动ApplicationMasterApplicationMaster(相当于是Driver)ApplicationMaster找ResourceManager,请求container,启动ExecutorResourceManager分配一批container,用于启动Executor ApplicationMaster所在的NodeManager上,可能会启动ExecutorApplicationMaster连接其他NodeManager,来启动Executor,这里的NameNode相当于Wroker Executor启动后,向ApplicationMaster反向注册
2、基于YARN的yarn-client模式
流程详细分析: spark-submit提交(yarn-client),会在本地启动Driver进程 发送给ResourceManager,请求启动ApplicationMasterResourceManager分配Container,在某个NodeManager上启动ApplicationMaster,但这里的ApplicationMaster,其实只是一个ExecutorLauncherExecutorLauncher(ApplicationMaster)申请Container,启动executorResourceManager分配一批Container ,ExecutorLauncher(ApplicationMaster)所在的NodeManager上,可能会启动ExecutorExecutorLauncher(ApplicationMaster)连接其他NodeManager,用Container资源,启动Executor Executor反向注册到本地的Driver上
3、以上两种模式对比
1、yarn-client模式用于测试,因为driver运行在本地客户端,负责调度application,会与yarn集群产生超大量的网络通信,从而导致网卡流量激增, 可能会被公司的运维给警告,好处在于,直接执行时,本地可以看到所有log,方便调试2、 yarn-cluster,用于生产环境,因为driver运行在NodeManager,没有网卡流量激增的问题,缺点在于,调试不方便,本地用spark-submit提交后,看不到log, 只能通过yarn application -logs application_id这种命令来查看,很麻烦
4、设置
##修改spark-env.sh [root@spark1 ~]# vim /usr/local/spark/conf/spark-env.sh #写入hadoop的home export HADOOP_HOME=/usr/local/hadoop###脚本文件yarn-cluster:/opt/module/spark/bin/spark-submit \--class com.zj.spark.core.WordCountCluster \--master yarn-cluster \--num-executors 3 \--driver-memory 100m \--executor-memory 100m \--executor-cores 3 \ /opt/module/datas/sparkstudy/java/mysparkstudy-1.0-SNAPSHOT-jar-with-dependencies.jar \yarn-client: /opt/module/spark/bin/spark-submit \--class com.zj.spark.core.WordCountCluster \--master yarn-client \--num-executors 3 \--driver-memory 100m \--executor-memory 100m \--executor-cores 3 \/opt/module/datas/sparkstudy/java/mysparkstudy-1.0-SNAPSHOT-jar-with-dependencies.jar \
转载于:https://www.cnblogs.com/weiyiming007/p/11198893.html
12、基于yarn的提交模式相关推荐
- spark基础之基于yarn两种提交模式分析
一 介绍 基于YARN的提交模式,总共有2种:一种是基于YARN的yarn-cluster模式:一种是基于YARN的yarn-client模式. 需要将提交应用程序的spark-submit的脚本中加 ...
- Spark的安装(Standalone模式,高可用模式,基于Yarn模式)
目录 spark的Standalone模式安装 一.安装流程 1.将spark-2.2.0-bin-hadoop2.7.tgz 上传到 /usr/local/spark/ 下,然后解压 2.进入到c ...
- 大数据Flink进阶(十五):Flink On Yarn任务提交
文章目录 Flink On Yarn任务提交 一.Flink On Yarn运行原理 二.代码及Yarn环境准备 1.准备代码 2.yarn 环境准备 三.Yarn Session模式 1.任务提交命 ...
- flink on yarn两种提交模式
在yarn上运行一个任务,必须要启动HDFS!!! Flink On Yarn的两种提交模式 提交一个flink任务给yarn:指定yid 一般是使用第一种提交模式. 取消一个flink任务 flin ...
- 文件表单带数据一起提交spring_基于 Spring 实现管道模式的最佳实践
管道模式(Pipeline Pattern) 是 责任链模式(Chain of Responsibility Pattern) 的常用变体之一.在管道模式中,管道扮演着流水线的角色,将数据传递到一个加 ...
- 腾讯云EMR基于YARN针对云原生容器化的优化与实践
导语 | 传统HADOOP生态系统使用YARN管理/调度计算资源,该系统⼀般具有明显的资源使⽤周期.实时计算集群资源消耗主要在⽩天,而数据报表型业务则安排在离线计算集群中.离在线业务分开部署的首要问题 ...
- 2021年大数据Spark(九):Spark On Yarn两种模式总结
目录 Spark On Yarn两种模式 引入 一.当一个MR应用提交运行到Hadoop YARN上时 二.当一个Spark应用提交运行在集群上时 注意 client 模式 cluster 模式 总结 ...
- 通俗说基于Yarn的Map-Reduce过程
先看全图是基于Yarn的Map-Reduce运行过程,下面通俗的说一下这个过程. 从前有一个老板Resource Manager,开了一家外包公司,这家公司有很多的团队Node,每个团队都有个经理No ...
- Spark on YARN cluster client 模式作业运行全过程分析
一.Spark:Yarn-Cluster 与 Yarn-Client 的区别与联系 我们都知道Spark支持在yarn上运行,但是Spark on yarn有分为两种模式yarn-cluster和ya ...
最新文章
- JMeter 将上一个请求的结果作为下一个请求的参数——使用正则提取器(转载)...
- Java-ReentrantLock初探
- pandas纵向合并数据
- 蚂蚁金服资深总监韩鸿源:企业级数据库平台的持续与创新
- C语言局部变量、全局变量、静态局部变量、静态全局变量
- android4.0 底部菜单,Android自定义控件系列(四)—底部菜单(下)
- readelf的使用
- 华硕笔记本k555拆机图解_华硕k45vd笔记本拆机教程,清理灰尘,更换键盘
- 将Sublime打造成超强前端IDE
- 上海航芯 | 热敏打印机方案分享
- 在线安装提示失败显示系统镜像MD5不正确怎么办
- treble_Android上的Project Treble是什么,我的手机会收到吗?
- Java获取打印机列表
- 四足机器人的六种步态特征
- 2018四川省排名前十的卫校名单有哪些?
- GB2312、GB18030、GBK、UNICODE、BIG5之间兼容关系如何?
- 总有人会偷看你的朋友圈
- 诺基亚n1 android 6.0,数据解读诺基亚N1:安卓平板王者之争
- 电子计算机的基本结构基于存储程序,计算机有答案
- Android线程优化之线程池的详解