YARN(Yet Another Resource Negotiator)是 Hadoop 生态系统中的资源调度器,主要用于资源管理和作业调度。YARN 自身具备队列管理功能,通过对 YARN 资源队列进行配置和管理,实现集群资源的分配,以满足不同应用和用户的需求。YARN 的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。

在大数据环境下,企业通常会有多个应用程序同时运行,这些应用程序可能具有不同的资源需求和优先级。为了合理分配和管理资源,避免资源争夺和冲突,需要对资源进行划分和调度。

本文将为大家介绍各类资源划分和队列管理方式,以及 EasyMR 新上线的 YARN 的队列管理功能,如何通过可视化界面管理,给广大用户带来更高效和便捷的队列管理体验。

资源划分方式

在大数据领域中,常见的资源划分方式通常有以下几种:

按照应用程序的类型或特性进行分类

例如,可以将 CPU 密集型的应用程序放置在一个队列中,将内存密集型的应用程序放置在另一个队列中。通过这种方式,可以确保不同类型的应用程序获得各自所需的资源,并避免资源浪费和不均衡的情况发生。

按照应用程序的优先级进行分类

对于一些重要的任务或紧急任务,可以为它们分配更高的资源配额和优先级,以保证它们能够得到及时响应和优先处理。而对于一些次要的任务或低优先级的任务,可以为它们分配较低的资源配额,以确保其他重要任务的执行效率和优先级。

按照部门或团队的需求进行分类

不同部门可能对资源有不同的需求,通过为不同部门分配独立的资源队列,可以确保每个部门能够独立管理和分配自己的资源,不会相互干扰或影响。

虽然 YARN 自身具备队列管理功能,但在实际使用中,YARN 只能通过配置文件进行资源队列的管理,这种方式相对繁琐且需要一定的技术知识。

CDH & HDP

业界首选的基础开源数据平台要数基于 Hadoop 分布式技术的 CDH 和 HDP。

CDH(Cloudear Manager)

● Fair Share 策略

CDH 的 Cloudear Manager 采用Fair Share 策略,每个用户或组织的权重和优先级需要事先确定,需要管理者对系统的使用情况有较好的了解。如果这些设置不合理,可能会导致某些用户或组织长期不能获得足够的资源来执行任务。

● 调度效率影响

当有多个任务或作业同时提交时, Fair Share 的算法需要进行复杂的计算,导致调度效率下降。

HDP(Ambari)

● 管理复杂性

Ambari 采用可视化拖拽进行资源调整,操作简单。但是由于 Yarn 资源队列必须保证同一级队列资源之和等于100%,因此单一队列资源调整,必须调整其他队列资源保证队列资源之和等于100%,管理复杂度比较高。

● 资源配平

为保证同级队列资源之和等于100%,创建或者删除队列时,需要调整其他队列资源保证队列资源。

EasyMR 的 Yarn 资源队列管理功能

基于上述优缺点,为了改善队列管理体验,提供一个更直观、更详细的信息展示和简易明了的操作界面进行队列资源管理,EasyMR 上线了 Yarn 的队列管理功能进行可视化界面管理,提高其灵活性、可用性和可扩展性。

EasyMR 的 Yarn 资源队列管理特点

● 容量策略

基于最大、最小资源容量策略,限制队列的资源使用,用户或部门可以根据自己业务需求创建属于自己的专属资源队列

● 队列独立

当调整队列资源大小或者创建删除队列时,无需调整其他队列资源大小,仅需保证同一父队列下所有子队列资源小于等于100%即可。

● 用户对接

支持对接 LDAP、OAuth 用户体系,通过对 Yarn 资源队列-叶子队列绑定用户、用户组,实现了基于用户和用户组的访问控制和资源分配,保障资源安全。

叶子队列:是指不能再分配子队列的队列,它可以直接用来分配资源给应用程序,在叶子队列中,可以直接运行应用程序或者将它们放置在默认分配队列中进行调度。

非叶子队列:可以再分配子队列,以进一步划分资源并进行资源管理,不支持应用程序和任务的提交。例如,可以将 CPU 密集型应用程序和内存密集型应用程序分别放置在不同的子队列中,并为它们分配不同的资源配额和优先级。

父队列:通常是一个非叶子队列,它包含多个子队列,并控制着这些子队列的资源分配和优先级等属性。例如,一个父队列可以包含多个子队列“memory”、“cpu”等,通过为不同的子队列设置不同的资源配额和优先级,可以更好地管理集群中的资源。

子队列:是父队列的一部分,它们继承了父队列的所有属性,并具有自己的资源配额和优先级等属性。在子队列中可以运行应用程序不支持再次划分子队列。

EasyMR 如何创建 Yarn 资源队列,在之前的文章《大数据计算引擎 EasyMR 如何简单高效管理 Yarn 资源队列》中进行了详细的介绍,请点击阅读。

未来,EasyMR 会持续优化 Yarn 资源队列管理,完善资源队列的安全审计与队列监控,通过将资源队列与需求背景进行对应,制定更优资源分配策略,以更好地满足企业在大数据环境下的资源管理和调度需求。

《数栈产品白皮书》:https://www.dtstack.com/resources/1004?src=szsm

《数据治理行业实践白皮书》下载地址:https://www.dtstack.com/resources/1001?src=szsm

想了解或咨询更多有关袋鼠云大数据产品、行业解决方案、客户案例的朋友,浏览袋鼠云官网:https://www.dtstack.com/?src=szbky

同时,欢迎对大数据开源项目有兴趣的同学加入「袋鼠云开源框架钉钉技术qun」,交流最新开源技术信息,qun号码:30537511,项目地址:https://github.com/DTStack

灵活、可用、高扩展,EasyMR 带来全新 Yarn 的队列管理功能及可视化配置的更多相关文章

  1. Java架构师/高并发/高可用/高扩展/性能优化/框架源码分析实战

    https://ke.qq.com/course/401944?taid=3389721334391320

  2. Yarn 的日志聚集功能配置使用

    需要  hadoop 的安装目录/etc/hadoop/yarn-site.xml 中进行配置 配置内容 <property> <name>yarn.log-aggregati ...

  3. 人人都可以开发高可用高伸缩应用——论Azure Service Fabric的意义

    今天推荐的文章其实是微软的一篇官方公告,宣布其即将发布的一个支撑高可用高伸缩云服务的框架--Azure Service Fabric. 前两天,微软Azure平台的CTO Mark Russinovi ...

  4. 带来全新的网络格局---html5

    自从HTML5诞生之后,就是开始建立了一个标准的原则,那就是所有的技术它必须是面向开放,并不能有专利的一个存在,在整个期间Opera捐献了css技术,而google的话则是给开发者提供了视频的webM ...

  5. 高扩展的基于NIO的服务器架构(二)

    接上文高扩展的基于NIO的服务器架构 Reactor模式 如下图所示,将不同事件的检测分离开,当一种事件发生时一个事件处理器EventHandler将通知与该事件处理相对应的专用工作线程 采用这种架构 ...

  6. 高扩展的基于NIO的服务器架构

    当你考虑写一个扩展性良好的基于Java的服务器时,相信你会毫不犹豫地使用Java的NIO包.为了确保你的服务器能够健壮.稳定地运行,你可能会花大量的时间阅读博客和教程来了解线程同步的NIO selec ...

  7. (转)mysql数据库高可用高扩展性架构方案实施

    http://shanhu.blog.51cto.com/1293405/1212605-----mysql数据库高可用高扩展性架构方案实施

  8. eoLinker上线两周年+ AMS V4.0 发布:全新UI界面,带来领先的API开发管理解决方案!

    2018年7月,eoLinker 发布了<eoLinker AMS 2018年年中用户调研问卷>,前后经历一周的时间,共收集到超过1000份有效调查问卷.超过300个有效改进意见. eoL ...

  9. 在CentOS上使用Nginx和Tomcat搭建高可用高并发网站

    目录 目录 前言 创建CentOS虚拟机 安装Nginx 安装Tomcat 安装lvs和keepalived 反向代理 部署网站 搭建数据库 编写网站项目 解决session一致性 注意 参考资料 前 ...

  10. PHP开发 高可用 高安全App后端(免费)

    PHP开发高可用高安全App后端 第1章 本章先讲解课程所含技术点,并演示相关的项目,让小伙伴对课程有个初步的认知,然后再带领小伙伴进行功能的分析,表的ER总关系图 第2章 本章主要讲解课程的一些准备 ...

随机推荐

  1. 国内四大骨干网与十大ISP服务商

    1.骨干网 几台计算机连接起来,互相可以看到其他人的文件,这叫局域网,整个城市的计算机都连接起来,就是城域网,把城市之间连接起来的网就叫骨干网.这些骨干网是国家批准的可以直接和国外连接的互联网.其他有 ...

  2. 【Java】RESTful风格

    RESTful风格 REST:即 Representational State Transfer.(资源)表现层状态转化.是目前最流行的一种互联网软件架构.它结构清晰.符合标准.易于理解.扩展方便,所 ...

  3. C# Office COM 加载项

    Office COM 加载项开发笔记 一.实现接口 IDTExtensibility2 这是实现 Office COM 加载项最基本的接口 添加 COM 引用 Microsoft Add-In Des ...

  4. VsCode写Markdown使用snippet

      文件->首选项->用户片段   输入markdown   输入代码片段 Ctrl+P,输入settings.json   加入下面个这个选项 "[markdown]" ...

  5. Chrome 135 版本开发者工具(DevTools)更新内容

    Chrome 135 版本开发者工具(DevTools)更新内容 一.性能(Performance)面板改进 1. 性能面板中的配置文件和函数调用现已显示来源和脚本链接 Performance > ...

  6. 🎀Excel-多表数据查找匹配(VLOOKUP)

    简介 Excel的VLOOKUP函数同样可以用来查找表格中的数据.VLOOKUP(垂直查找)是一个非常有用的函数,它可以在一个表格或数据表的一列中搜索特定的值,并返回与之在同一行上的另一列中的值. 环 ...

  7. .net core基础(一):安装并创建第一个webapi

    一..net介绍 .net是一个开发者平台的统称,用它可以构建多种类型的应用程序. .net平台下的开发语言:C#,F#,Visual Basic .net平台标准:.NET Standard .ne ...

  8. DPDI(Dispatch PDI)kettle调度管理平台升级内容

    DPDI升级内容(20240815版) DPDI online部署方式 定时任务优化(支持轮询机制,Cron可提示近5次运行时间) 运行任务优化(支持多机器分布式运行) 其它小功能优化 1. 首页可手 ...

  9. [笔记]PHP里类的申明和对象的实例化(笔记)

    1.申明类 class 类名{  //属性----------  public 属性 = 值:  public 属性:  //方法-----------  function 方法名($n1,$n2){ ...

  10. StarBlog和Masuit.MyBlogs博客程序学习使用日记(一)

    最近买了个简单的服务器,想着搞点花活,就去找了找网上的开源代码,感谢大佬的开源库:(https://gitee.com/ysgdaydayup/DotNetGuide) 在上面有列开源的博客框架,我是 ...