- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Hadoop Yarn标签调度应用
Hadoop Yarn标签调度应用
摘 要:文章详细介绍了Hadoop Yarn框架及Hadoop调度,并分析了Yarn框架下的标签调度(Label based scheduling)策略,以实例方式详细介绍了标签调度的应用场合和使用方法。该文的方法对基于Hadoop Yarn框架下的大数据处理平台配置,特别是异构环境中的平台优化有一定的参考意义。
关键词:大数据;框架;标签调度
中图分类号:TP311.13 文献标识码:A 文章编号:1006-8937(2015)15-0072-01
1 概 述
在Hadoop0.20版本推出之后,Hadoop开源社区开始设计全新构架的新一代Hadoop系统,该版本后演化为Hadoop2.0版本,即新一代的Hadoop系统YARN。
YARN构架将主控节点的资源管理和作业管理功能分离设置,引入了全局资源管理器(Resource Manager)和针对每个作业的应用主控管理器(Application Master)。在最新的Hadoop 2.6.0版本中,YARN引入了一种新的调度策略:基于标签的调度机制。该机制的主要引入动机是更好地让YARN运行在异构集群中,进而更好地管理和调度混合类型的应用程序,本文即尝试如何使用标签调度展开讨论。
2 Hadoop Yarn框架介绍
新的Hadoop MapReduce框架命名为MapReduceV2或者叫 Yarn。重构根本的思想是将JobTracker两个主要的功能分离成单独的组件,这两个功能是资源管理和任务调度/监控。新的资源管理器全局管理所有应用程序计算资源的分配,每一个应用的ApplicationMaster负责相应的调度和协调。一个应用程序无非是一个单独的传统的MapReduce任务或者是一个DAG(有向无环图)任务。ResourceManager和每一台机器的节点管理服务器能够管理用户在那台机器上的进程并能对计算进行组织。每一个应用的ApplicationMaster的职责有:向调度器索要适当的资源容器运行任务,跟踪应用程序的状态和监控它们的进程,处理任务的失败原因。
3 Hadoop常用调度器
为了更好地理解标签调度技术,有必要回顾一下Hadoop常用的调度器。
3.1 默认的调度器FIFO
最早的Hadoop Map/Reduce 计算架构中,JobTracker 在进行作业调度时使用的FIFO(First In First Out)算法,其优点是调度算法简单明了,JobTracker工作负担轻。
3.2 公平份额调度算法(Fair Scheduler)
Fair Scheduler是由Facebook公司提出的,设计思想是,尽可能保证所有的作业都能够获得等量的资源份额,Fair Scheduler考虑了作业用户的“公平性”。
3.3 计算能力调度器(Capacity Scheduler)
Capacity Scheduler能有效的对hadoop集群的内存资源进行管理,以支持内存密集型应用。作业对内存资源需求高时,调度算法将把该作业的相关任务分配到内存资源充足的节点上。在hadoop自带的调度器中,Capacity Scheduler支持标签调度,FIFO Scheduler和Fair Scheduler尚不支持。
4 Label based scheduling应用
Label based scheduling是一种调度策略,就像priority-based scheduling一样,是调度器调度众多调度策略中的一种,可以跟其他调度策略混合使用,下面以实例说明。
不失一般性,假设有30个以上的节点,各节点硬件配置和网络部署如表一所示,其中:HighCPU组10个节点,各节点CPU运算能力较强,适合计算密集型任务;HighMEM组10个节点,计算能力普通,但各节点内存较高,适合内存密集型任务;HighIO组10个节点,计算能力和内存配置普通,但使用了IB高性能网络,网络交换能力较强,适合IO密集型任务。
假设公司运行的任务类型有三类,一类是普通的Hadoop应用,一类是运行高内存需求应用,一类是高IO的应用。
首先,用Normal、HighgCPU、Highmem、HighIO表示分配标签名,需要为三类节点创建相应的标签,方法如下:
修改capacity scheduler相关配置,设置每个队列对应的label,以及每中label的资源上下限。根据规划,应创建四个队列,假设为queue1、queue2、queue3、queue4,其中queue1队列可使用的标签是Normal和HighgCPU、High
文档评论(0)