Spark - spark on yarn 的作业提交流程
YarnClient

YarnCluster

- 客户端(Client)通过YARN的ResourceManager提交应用程序。在此过程中,客户端进行权限验证,生成Job ID和资源上传路径,并将这些信息返回给客户端。
- 客户端将jar包、配置文件、第三方包等文件上传到指定的HDFS路径。完成后,客户端再次向ResourceManager提交作业执行请求。
- ResourceManager收到请求后,将其封装为一个任务,并将其插入Scheduler的任务队列中,等待空闲资源。
- 一旦集群中有空闲资源,Scheduler将任务分配给NodeManager,NodeManager创建容器,并启动ApplicationMaster。
- ApplicationMaster启动后,从HDFS中拉取jar包,解析数据流(DAG),根据数据流生成阶段(Stage),确定任务的并发度,并向ResourceManager申请资源。
- ResourceManager接收到请求后,将任务封装为Task,并将其插入任务队列。
- 一旦集群中有空闲资源,ResourceManager将任务分配给NodeManager,NodeManager启动容器,并与ApplicationMaster通信,以在容器中启动Executor进程。
- Executor向ApplicationMaster注册,并申请任务。ApplicationMaster对任务进行解析,并将Task发送到Executor上。
- Executor执行Task,并将执行结果或状态报告给ApplicationMaster。
- 当所有任务执行完毕时,ApplicationMaster通知ResourceManager注销应用,回收资源。至此,整个作业的提交流程结束。
(END)
Spark - spark on yarn 的作业提交流程的更多相关文章
- 4 weekend110的YARN的通用性意义 + yarn的job提交流程
Mr程序写完之后,提交给yarn,yarn会产生一个MRAppMaster,想说的是,yarn变得很 通用,yarn集群上,不光可以跑mr程序,还可以跑各种运算模型. 海量批处理,mapreduce ...
- YARN-MapReduce的作业提交流程
YARN分布式资源管理系统 组成: ResourceManager:YARN的资源管理器,主节点,通过NodeManager管理集群中所有的资源 NodeManager:YARN的节点管理器,从节点, ...
- Spark开发环境搭建和作业提交
Spark高可用集群搭建 在所有节点上下载或上传spark文件,解压缩安装,建立软连接 配置所有节点spark安装目录下的spark-evn.sh文件 配置slaves 配置spark-default ...
- YARN作业提交流程剖析
YARN(MapReduce2) Yet Another Resource Negotiator / YARN Application Resource Negotiator对于节点数超出4000的大 ...
- Spark运行架构及作业提交流程
1.yarn-cluster模式: (1)client客户端提交spark Application应用程序到yarn集群. (2)ResourceManager收到了请求后,在集群中选择一个NodeM ...
- spark 选择不同yarn集群提交任务
修改环境变量中的HADOOP_CONF_DIR,可以配置多份配置文件.根据不同路径下yarn集群配置访问不同集群. 所使用的用户需要在yarn每个节点都存在且有对应的访问权限.
- YARN的job提交流程
1.客户端向ResourceManagement 提交 运行的请求 (hadoop jar xxxx.jar) 2.ResourceManager进行检查,没有问题的时候,向客户端返回一个共享资源的路 ...
- Spark:三种任务提交流程standalone、yarn-cluster、yarn-client
spark的runtime参考:Spark:Yarn-cluster和Yarn-client区别与联系浪尖分享资料 standalone Spark可以通过部署与Yarn的架构类似的框架来提供自己的集 ...
- Hadoop2.x Yarn作业提交(客户端)
转自:http://blog.csdn.net/lihm0_1/article/details/22186833 YARN作业提交的客户端仍然使用RunJar类,和MR1一样,可参考 http://b ...
- hadoop2.7之作业提交详解(上)
根据wordcount进行分析: import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; impo ...
随机推荐
- LINUX通过STTY命令操作串口设备(LINUX串口操作命令)
stty(settty,设置tty)命令用于检查和修改当前注册的终端的通信参数 1.显示某个串口参数信息:stty -F /dev/ttySTM6 -a 2.设置某个串口参数信息: ...
- Swagger 调试,我不想再复制粘贴token啦~
作为后端开发,进行Web Api 调试,除了使用 Postman, Apifox 等 Web Api 调试工具之外,我想使用Swagger进行调试应该是更方便,更常用的方式了吧. 那么在需要 toke ...
- node-koa2 微信支付,企业付款到零钱
微信支付用的V2版本 微信支付说明文档:https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=14_2 参数详细说明请 ...
- 鸿蒙(HarmonyOS)原生AI能力之文本识别
鸿蒙(HarmonyOS)原生AI能力之文本识别 原生智能介绍 在之前开发中,很多场景我们是通过调用云端的智能能力进行开发.例如文本识别.人脸识别等. 原生即指将一些能力直接集成在本地鸿蒙系统中,通过 ...
- How To Install and Enable SSH Server on Debian 10
https://devconnected.com/how-to-install-and-enable-ssh-server-on-debian-10/ How To Install and Enabl ...
- MySQL启动时自动创建数据库
一.背景及分析 MysqL容器启动时,会自动创建一些必要的数据库,比如MysqL,这是官方默认的做法.但是,在实际中,还需要让MysqL自动创建我们自定义的数据库.本文就此应用场合进行探究. 一般的做 ...
- Netty中ByteBuf内存泄露及释放解析
近日在使用Netty框架开发程序中出现了内存泄露的问题,百度加调试了一番,做个整理. 直接看解决方法请移步Netty内存泄漏解决ERROR io.netty.util.ResourceLeakDete ...
- kubernetes系列(十一) - 存储之configMap
1. configMap简介 1.1 configMap的典型用法 1.2 configMap的表现形式 2. configMap的创建方式 2.1 kubectl create命令行创建 2.1.1 ...
- d2go使用总结
d2go使用总结 安装 PyTorch Nightly 安装 PyTorch Nightly(以 CUDA 10.2 为例,详见PyTorch 网站): conda install pytorch t ...
- 使用format_obproxy_digest_log工具分析obproxy网络层耗时SQL
之前写过一个博客,介绍 ob_tools包 来实施抓取 observer 层的 gv$ob_sql_audit 的SQL,还提供一些分析SQL来通过不同维度分析缓慢的业务SQL语句,免得和应用扯皮说数 ...