【云计算与大数据技术】集群资源统一管理系统YARN、Mesos、Omega讲解(图文解释 超详细)

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 【云计算与大数据技术】集群资源统一管理系统YARN、Mesos、Omega讲解(图文解释 超详细)

相比于一种计算框架一个集群的模式,共享集群的模式具有以下三个优点

1:硬件共享 资源利用率高

2:人员共享  运维成本低

3:数据共享  数据复制开销低

一、集群资源统一管理系统

集群资源统一管理系统需要支持多种计算框架,并需要具有扩展性、容错 性和高资源利用率等几个特点

一个行之有效的资源统一管理系统需要包含资源管理、 分配和调度等功能

下图是统一管理与调度系统的基本架构图

商业服务器集群目前已经成为主要的计算平台,为互联网服务和大量的数据密集型 科学计算提供了强大的计算能力

当前多个计算框架公用一个服务器集群的方式是对集群进行静态划分,每个分区运行一个计算框架

另外一种方式是为每个计算框架分配一些虚拟机 VM,但是这些方法 都没有实现高利用率和数据共享

因此要设计一种集群资源管理系统支持多个计算框架,实现集群资源共享和高利用率,为了实现这一目标需要解决以下问题

支持多种不同的计算框架

集群资源管理系统需要支持良好的扩展性

需要具有良好的容错和高可靠性

二、Apache YARN

Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的Hadoop资源管理器,它是一个通用资源管理系统

YARN的基本思想是将的两个主要功能(资源管理和作业调度/监控) 分离,主要方法是创建一个全局的 ResourceManager(RM)和若干个针对应用程序的 ApplicationMaster(AM)

YARN分层结构的本质是ResourceManager,这个实体控制整个集群并管理应用程序像基础计算资源的分配

1:资源分配模型

Map Slot

Reduce Slot

这些slot无法在Map任务和Reduce任务之间共享

2:协议组件

Client-ResourceManager

ResourceManager– ApplicationMaster

ApplicationMaster-ContainerManager

三、Apache Mesos

Mesos 是以与Linux内核同样的原则创建的,不同点仅在于抽象的层面

Mesos 内核运行在每一个机器上,同时通过 API为各种应用提供跨数据中心和云的资源管理调度能力

Master使用Resource Offers实现跨应用细粒度资源共享,如 CPU 、内存 、磁盘 、网络等

架构图如下

下图是一个计算框架运行在Mesos上的资源供给流程 分为四步

1:Agent1像Master报告有四个CPU和4GB内存可用

2:Master发送一个Resource Offer给Framework1来描述Agent1有多少可用资源

3:Framework1中的FW Scheduler会答复Master有两个Task需要运行在Agent1上,一个Task需要多少内存和CPU

最后Master发送这些Task给Agent1,之后分配模块把剩下的CPU和内存分配给其他Framework

四、Google Omega

Mesos、YARN 等集群管理系统采用的是双层调度器,具有如下缺点

运行在这些集群管理系统上的计算框架无法知道整体集群的资源使用情况

并发粒度小,采用的是悲观方式的并发控制 (permissive concurrent control)

针对上述双层调度器 (two-level scheduler)的不足,Omega设计了共享状态调度器 (shared state scheduler)。该调度器将双层调度器中的集中式资源调度模块简化成了一些持久化的共享数据和针对这些数据的验证代码,而这里的共享数据实际上就是整个集群的实时资源使用信息

创作不易 觉得有帮助请点赞关注收藏~~~

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
3月前
|
存储 大数据 Serverless
大数据增加分区优化资源使用
大数据增加分区优化资源使用
52 1
|
4月前
|
资源调度 分布式计算 大数据
大数据-111 Flink 安装部署 YARN部署模式 FlinkYARN模式申请资源、提交任务
大数据-111 Flink 安装部署 YARN部署模式 FlinkYARN模式申请资源、提交任务
154 0
|
6月前
|
图形学 数据可视化 开发者
超实用Unity Shader Graph教程:从零开始打造令人惊叹的游戏视觉特效,让你的作品瞬间高大上,附带示例代码与详细步骤解析!
【8月更文挑战第31天】Unity Shader Graph 是 Unity 引擎中的强大工具,通过可视化编程帮助开发者轻松创建复杂且炫酷的视觉效果。本文将指导你使用 Shader Graph 实现三种效果:彩虹色渐变着色器、动态光效和水波纹效果。首先确保安装最新版 Unity 并启用 Shader Graph。创建新材质和着色器图谱后,利用节点库中的预定义节点,在编辑区连接节点定义着色器行为。
420 0
|
6月前
|
资源调度 分布式计算 Hadoop
揭秘Hadoop Yarn背后的秘密!它是如何化身‘资源大师’,让大数据处理秒变高效大戏的?
【8月更文挑战第24天】在大数据领域,Hadoop Yarn(另一种资源协调者)作为Hadoop生态的核心组件,扮演着关键角色。Yarn通过其ResourceManager、NodeManager、ApplicationMaster及Container等组件,实现了集群资源的有效管理和作业调度。当MapReduce任务提交时,Yarn不仅高效分配所需资源,还能确保任务按序执行。无论是处理Map阶段还是Reduce阶段的数据,Yarn都能优化资源配置,保障任务流畅运行。此外,Yarn还在Spark等框架中展现出灵活性,支持不同模式下的作业执行。未来,Yarn将持续助力大数据技术的发展与创新。
91 2
|
6月前
|
资源调度 分布式计算 Hadoop
揭秘Hadoop Yarn三大调度器:如何玩转资源分配,实现高效集群管理?
【8月更文挑战第24天】Hadoop YARN(Another Resource Negotiator)是一款强大的集群资源管理工具,主要负责高效分配及管理Hadoop集群中的计算资源。本文深入剖析了YARN的三种调度器:容量调度器(Capacity Scheduler)、公平调度器(Fair Scheduler)以及FIFO调度器,并通过具体的配置示例和Java代码展示了它们的工作机制。
125 2
|
6月前
|
图形学 C# 开发者
Unity粒子系统全解析:从基础设置到高级编程技巧,教你轻松玩转绚丽多彩的视觉特效,打造震撼游戏画面的终极指南
【8月更文挑战第31天】粒子系统是Unity引擎的强大功能,可创建动态视觉效果,如火焰、爆炸等。本文介绍如何在Unity中使用粒子系统,并提供示例代码。首先创建粒子系统,然后调整Emission、Shape、Color over Lifetime等模块参数,实现所需效果。此外,还可通过C#脚本实现更复杂的粒子效果,增强游戏视觉冲击力和沉浸感。
390 0
|
7月前
|
机器学习/深度学习 分布式计算 大数据
MaxCompute产品使用合集之如何查看空间资源、CPU和内存以及存储空间容量
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
144 0
|
5月前
|
资源调度 分布式计算 Hadoop
YARN(Hadoop操作系统)的架构
本文详细解释了YARN(Hadoop操作系统)的架构,包括其主要组件如ResourceManager、NodeManager和ApplicationMaster的作用以及它们如何协同工作来管理Hadoop集群中的资源和调度作业。
202 3
YARN(Hadoop操作系统)的架构
|
5月前
|
资源调度 分布式计算 Hadoop
使用YARN命令管理Hadoop作业
本文介绍了如何使用YARN命令来管理Hadoop作业,包括查看作业列表、检查作业状态、杀死作业、获取作业日志以及检查节点和队列状态等操作。
112 1
使用YARN命令管理Hadoop作业
|
6月前
|
资源调度 分布式计算 算法
【揭秘Yarn调度秘籍】打破资源分配的枷锁,Hadoop Yarn权重调度全攻略!
【8月更文挑战第24天】在大数据处理领域,Hadoop Yarn 是一种关键的作业调度与集群资源管理工具。它支持多种调度器以适应不同需求,默认采用FIFO调度器,但可通过引入基于权重的调度算法来提高资源利用率。该算法根据作业或用户的权重值决定资源分配比例,权重高的可获得更多计算资源,特别适合多用户共享环境。管理员需在Yarn配置文件中启用特定调度器(如CapacityScheduler),并通过设置队列权重来实现资源的动态调整。合理配置权重有助于避免资源浪费,确保集群高效运行,满足不同用户需求。
87 3