博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Yarn总结
阅读量:3959 次
发布时间:2019-05-24

本文共 1061 字,大约阅读时间需要 3 分钟。

yarn组件:Client,ResourceManager,ApplicationMaster,NodeManager,Container

Client:负责提交应用程序

ResourceManager:全局资源管理器,处理客户端请求,启动/监控 ApplicationMaster,监控NodeManager,资源分配和调度

有两部分组成

1、调度器:根据各应用程序需求进行资源分配
2、应用程序管理器:负责管理系统中所有应用程序

ApplicationMaster:数据切分, 为应用程序申请资源,任务监控和容错

NodeManager

1、负责本节点的资源管理

2、 处理 ResourceManager 命令, ApplicationMaster 命令 

Container

NodeManager管理抽象容器container

yarn中对资源的抽象, 封装本节点上的内存,cpu,磁盘,网络等资源,此资源就是用container表示

Yarn工作流程

1、client端向ResourceManager提交应用程序,即client将 jar包,参数等数据上传到HDFS

2、resourceManager将此应用程序添加到任务队列

3、等待资源充沛时,resourceManager为该应用程序分配第一个container,在container中启动应用程序ApplicationMaster

4、ApplicationMaster首先向ResourceManager注册,并采用轮询方式通过RPC协议向ResourceManager申请资源,发送命令让NodeManager创建container,之后执行task

6、ApplicationMaster监控 job 执行作业,直到 job 完成后, 向ResourceManager通知,注销自己

Yarn RPC协议

在YARN中,任何两个需相互通信的组件之间仅有一个RPC协议,而对于任何一个RPC协议,通信双方有一端是Client,另一端为Server,且Client总是主动连接Server的,因此,YARN实际上采用的是拉式(pull-based)通信模型。

                                

NodeManager-ResourceManager:注冊、汇报节点健康状况和Container执行情况

ApplicationMaster-ResourceManager:向RM注冊、申请和释放资源

Client-ResourceManager:向RM提交程序、控制程序、查询程序

转载地址:http://hxazi.baihongyu.com/

你可能感兴趣的文章
STL 库其中的 std::string用法总结
查看>>
模态对话框的销毁过程与非模态对话的几种销毁方法
查看>>
C++实现http下载 && 24点计算编码风格
查看>>
memcached了解使用和常用命令详解
查看>>
GDB调试各功能总结
查看>>
"undefined reference to" 多种可能出现的问题解决方法
查看>>
类结构定义
查看>>
Windows下关于多线程类 CSemaphore,CMutex,CCriticalSection,CEvent,信号量CSemaphore的使用介绍
查看>>
图像处理基本算法(汇总)以及实现
查看>>
C++编程获取本机网卡信息 本机IP 包括Windows和Linux
查看>>
23种设计模式详解及C++实现
查看>>
C++连接CTP接口实现简单量化交易
查看>>
服务端使用c++实现websocket协议解析及通信
查看>>
C# string.Format使用说明
查看>>
Linux下安装Mysql数据库开发环境
查看>>
Linux用户及用户组添加和删除操作
查看>>
通用 Makefile 的编写方法以及多目录 makefile 写法
查看>>
C++的4种智能指针剖析使用
查看>>
RPC框架实现之容灾策略
查看>>
Docker私库
查看>>