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 ...
随机推荐
- Redis应用—7.大Value处理方案
大纲 1.⽅案设计 2.安装与配置环境 1.⽅案设计 步骤一:首先需要配置一个crontab定时调度shell脚本,然后该脚本每天凌晨会通过rdbtools⼯具解析Redis的RDB⽂件,接着对解析出 ...
- .NET 6 探索 Minimal API 系列
今天看到来自 https://www.dotnetdeveloper.cn/ 的一个 .NET 6 Minimal API 系列,感觉质量不错,特别收录在这里. .Net 6探索 (1) Minima ...
- HttpClientFactory in ASP.NET Core 2.1 Part 1 介绍
HttpClientFactory in ASP.NET Core 2.1 Part 1 原文地址:https://www.stevejgordon.co.uk/introduction-to-htt ...
- /etc/rancher/k3s/registries.yaml
mirrors: "192.168.50.3": endpoint: - "https://192.168.50.3"configs: "192.16 ...
- 解决phpmyadmin导入MYSQL数据库限制大小为50M的问题
有时候想导入的数据库太大.但是遭到的限制 解决phpmyadmin导入MYSQL数据库限制大小为50M的问题 转载于:https://www.cnblogs.com/wesky/p/10609340. ...
- Spring Data JPA中使用Example进行动态查询
Spring Data JPA中使用Example进行动态查询主要涉及:实体对象.ExampleMatcher和Example等三种类类型.基于实例的动态查询所包含的三要素如下:1.实体对象:在ORM ...
- Solution -「NOI 2017」「洛谷 P3825」游戏
\(\mathscr{Description}\) Link. 给大家看个乐子: link, 懒得概括题意啦. \(\mathscr{Solution}\) 对于没有 X 的情况, 显然可 ...
- Pod的优雅上下线
Pod的优雅上下线依赖k8s的监控检查机制,以及 Pod lifecycle Hooks,通过这些kubernetes的机制,配合服务发现的流量管理机制,实现业务的优雅上下线. 基础概念 Pod 健康 ...
- java-文件输入输出处理
--------------------------------------------------- 1.File类 File类是IO包中唯一代表磁盘文件本身的对象,File类定义了一些与平台无关的 ...
- Docker基础命令(安装和创建管理容器)
docker ps -a 查看容器 docker inspect c008 使用 inspect 命令查看镜像详细信息,包括制作者.适应架构.各层的数字摘要等.