Yarn调度器和调度算法详解

楼高2年前技术文章1330

目前,Hadoop作业调度器主要有三种:FIFO、容量(Capacity Scheduler)和公平(Fair Scheduler)。Apache Hadoop3.1.3默认的资源调度器是Capacity Scheduler。CDH框架默认调度器是Fair Scheduler

一、先进先出调度器(FIFO)

FIFO调度器(First In First Out):单队列,根据提交作业的先后顺序,先来先服务。

image.png

优点:简单易懂;

缺点:不支持多队列,生产环境很少使用

二、容量调度器(Capacity Scheduler)

Capacity Scheduler是Yahoo开发的多用户调度器

1、多队列:每个队列可配置一定的资源量,每个队列采用FIFO调度策略。

2、容量保证:管理员可为每个队列设置资源最低保证和资源使用上限。

3、灵活性:如果一个队列中的资源有剩余,可以暂时共享给那些需要资源的队列,而一但该队列有新的应用程序提交,则其他队列借调的资源会归还给该队列。

4、多租户

支持多用户共享集群和多应用程序同时运行。

为了防止同一用户的作业独占队列的中的资源,该调度器会对同一用户提交的作业所占资源量进行限定。

三、公平调度器(Fair Scheduler)

Fair Schedulere是Facebook开发的多用户调度器。




公平调度器特点:

1、与容量调度器相同点

(1)多队列:每个队列可配置一定的资源量,每个队列采用FIFO调度策略。

(2)容量保证:管理员可为每个队列设置资源最低保证和资源使用上限。

(3)灵活性:如果一个队列中的资源有剩余,可以暂时共享给那些需要资源的队列,而一但该队列有新的应用程序提交,则其他队列借调的资源会归还给该队列。

(4)多租户

支持多用户共享集群和多应用程序同时运行。

为了防止同一用户的作业独占队列的中的资源,该调度器会对同一用户提交的作业所占资源量进行限定。

2、与容量调度器不同点

(1)核心调度策略不同

容量调度器:优先选择资源利用率低的队列

公平调度器:优先选择对资源的缺额比例大的

(2)每个队列可以单独设置资源分配方式

容量调度器:FIFO、DRF

公平调度器:FIFO、FAIRDRF


























相关文章

C++ 编程:数组的定义

1. 什么是数组?数组让能够按顺序将一系列相同类型的数据存储到内存中 C++ 中的数组可分为静态数组 与 动态数组 两种。2. 静态数组首先介绍声明一个 静态数组 的语法:/* ElementType...

kubernetes dashboard

kubernetes dashboard

1、背景Dashboard 是基于网页的 Kubernetes 用户界面。 你可以使用 Dashboard 将容器应用部署到 Kubernetes 集群中,也可以对容器应用排错,还能管理集群资源。你可...

win内存使用率过高但是资源监视器查看不到进程,排查思路

win内存使用率过高但是资源监视器查看不到进程,排查思路

问题现象:服务器:某云服务器 内存使用率持续打高,但是通过任务管理器查不到占用内存很高的进程排查步骤:1、通过任务管理器分析核查目标主机的内存使用趋势情况,近7天内存使用情况如下:通过任务管理器排查内...

MySQL 创建索引报错

创建索引报错添加索引发现报错,具体报错如下:create unique index sm_sample_clothing_skc_SkcUniqueKey_uindex on sm_sample_cl...

MySQL运维实战之备份和恢复(8.2)xtrabackup备份到云端(OSS)

xtrabackup工具中有一个xbcloud程序,可以将数据库直接备份到S3对象存储中,本地不落盘。这里介绍将数据库直接备份到OSS的一种方法。具体方法如下:1、准备OSS我们使用ossutil工具...

.gitlab-ci.yml 语法

.gitlab-ci.yml 语法

介绍管道配置从作业(job)开始, 作业是 .gitlab-ci.yml 文件的最基本元素。job是:定义了约束,指出应在什么条件下执行具有任意名称的顶级元素,并且必须至少包含 script 子句不限...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。