大数据开发面试题【Yarn篇】

45、介绍yarn

是一个集群资源管理器,主要由两个组件:RM和NM

RM:负责整个集群的资源管理和调度,接收来自客户端程序提交的请求,根据资源进行分配,也负责监控集群中的资源使用情况

NM:每个节点上运行运行一个NM,负责管理该节点上的资源,接收来自RM的指令,分配或者释放资源

46、yarn工作流程

1、用户通过客户端向RM提交应用程序

2、RM根据可用资源和调度策略,为应用程序分配所需的资源

3、每个节点上的NM接收来自RM的任务分配,并在该节点上启动和管理任务的执行

4、RM和NM定期报告资源使用清除那个和任务状态

46、YARN有几个模块

1、RM

2、NM

3、ApplicationMaster:每个应用程序都有一个ApplicationMaster,是应用程序内部主管,与RM通信,协调应用程序的资源请求和任务执行,

4、Container:封装了资源的概念,是yarn中任务运行的基本单位,RM将资源分配给应用程序管理器,会创建容器来运行应用程序的任务

补充:yarn资源调度机制

Hadoop的作业调度器有三种:FIFO、Capacity Scheduler和Fair Scheduler

1、FIFO

整个集群提交的作业都是用一个队列来进行服务,根据提交作业的顺序来运行,先来先服务

2、容量调度器

将整个集群的资源分为队列,每个队列之间的资源互不干扰,可分为生产和开发环境,且可以在每一个对队列里面使用FIFO调度策略

3、Fair Scheduler(资源调度器)

支持多个队列,每个队列配置一定的资源,每个队列中的job任务公平共享所在队列的所有资源,队列中的job任务都是按照优先级分配资源,优先级越高分配的资源越多,会公平保证每个job都会分配到资源

相关推荐
woai33649 分钟前
项目-轻客管家1-环境准备
java
xqqxqxxq7 小时前
Java AI智能P图工具技术笔记
java·人工智能·笔记
谷雨不太卷7 小时前
进程的状态码
java·前端·算法
方向研究7 小时前
盈利因子策略
大数据
顾温7 小时前
default——C#/C++
java·c++·c#
空中海8 小时前
02 ArkTS 语言与工程规范
java·前端·spring
楚国的小隐士8 小时前
在AI时代,如何从0接手一个项目?
java·ai·大模型·编程·ai编程·自闭症·自闭症谱系障碍·神经多样性
island13148 小时前
【C++仿Muduo库#3】Server 服务器模块实现上
服务器·开发语言·c++
yaki_ya8 小时前
yaki-C语言:从概念基础到内存解析---数组(array)完全指南
java·c语言·算法
刃神太酷啦8 小时前
扒透 STL 底层!map/set 如何封装红黑树?迭代器逻辑 + 键值限制全手撕----《Hello C++ Wrold!》(23)--(C/C++)
java·c语言·javascript·数据结构·c++·算法·leetcode