架构介绍

Yarn(Yet Another Resource Negotiator)是Hadoop生态系统中的一个资源管理和调度框架。它负责集群中资源的分配和任务的调度,使得多个计算框架(如MapReduce、Spark、Tez等)可以共享同一个集群资源。Yarn通过ResourceManager(RM)、NodeManager(NM)和ApplicationMaster(AM)三个主要组件来实现资源管理和任务调度。Yarn提供了多种调度算法,包括FIFO Scheduler(先进先出调度器)、Capacity Scheduler(容量调度器)、Fair Scheduler(公平调度器)等调度算法,用户可以根据具体需求选择合适的调度器。

OmniScheduler Yarn负载调度算法优化原生Capacity Scheduler调度器,基于集群节点物理资源权重计算及排序结果进行资源调度,实现资源的均衡配置和高效利用。OmniScheduler Yarn负载调度算法整体架构如图1所示。

图1 OmniScheduler Yarn负载调度算法整体架构

包含五大模块: