热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

利用下一代HadoopYARN构建轻量级弹性计算平台

作者:Dong|新浪微博:西成懂|可以转载,但必须以超链接形式标明文章原始出处和作者信息及版权声明网址:dongxicheng.orgmapreduce-nextgenuse-hadoop-yarn-to-build-a-cloud-system本博客的文章集合:dongxicheng.orgrecommend重

作者: Dong | 新浪微博: 西成懂 | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明 网址:http://dongxicheng.org/mapreduce-nextgen/use-hadoop-yarn-to-build-a-cloud-system/ 本博客的文章集合:http://dongxicheng.org/recommend/ 重


重大消息:我的Hadoop新书《Hadoop技术内幕:深入解析MapReduce架构设计与实现原理》已经开始在各大网站销售了,购书链接地址: 当当购书网址,京东购书网址,卓越购书网址。新书官方宣传主页: http://hadoop123.com/。


YARN(Yet Another Resource Negotiator)是下一代Hadoop的一个分支(注意:目前YARN尚不成熟稳定,各大公司普遍使用的还是Hadoop 1.0,但YARN是未来发展趋势,可以提前了解和学习它),它是一个资源管理系统,其上可以运行各种计算框架和应用程序,关于YARN,我已经在多篇文章中进行了介绍:

(1)”相比于MRv1,YARN带来的优势是什么?”

(2)”Hadoop 2.0中的基本术语解释”

(3)”浅谈Borg/YARN/Mesos/Torca/Corona一类系统”

(4)”多集群下资源共享方案介绍”

(5)”解析Google集群资源管理系统Omega”

更多文章可参考:下一代Hadoop YARN全面剖析。

YARN是未来的一个趋势,YARN本身已经变成了一个云操作系统,很多新的计算框架或者应用程序不再基于传统的操作系统开发(比如Linux),而是基于YARN这个云操作系统,YARN提供了资源管理和资源调度等机制,这意味着,很多新的计算框架或者应用程序脱离了YARN将不再可以单独运行,典型的代表是DAG计算框架Tez和Spark(Spark也可以运行在另一个与YARN类似的资源管理系统Mesos上)。

当前很多计算框架都开发了YARN版本,以能够直接运行在YARN上。本文进行简单的梳理。

(1) MapReduce:MapReduce是一个非常经典的离线计算框架,在MRv1中,MapReduce应用程序运行在由JobTracker和TaskTracker组成的运行时环境中,而在YARN中,不再有JobTracker和TaskTracker这样的服务组件,取而代之的是一个组件ApplicationMaster,它只负责应用程序相关的管理,比如任务切分和调度、任务监控和容错等,而资源相关的调度和管理交给YARN完成。

(2) Tez:Hortonworks开源的DAG计算框架,在MAPREDUCE基础上扩展而来的,重用了MapReduce大量代码,仅支持运行在YARN上,不可单独运行。Tez介绍可参考我的这篇文章:“Apache Tez:一个运行在YARN之上支持DAG作业的计算框架”。

(3)Storm:实时计算框架,运行时环境由Nimbus和supervisor等组件组成,目前storm团队正准备将其移植到YARN上(具体参考:storm plugin for Hadoop YARN:https://groups.google.com/forum/?fromgroups#!topic/storm-user/XBHCau0e5nA),而Yahoo甚至已经开源了一个简单的版本(具体见:https://github.com/yahoo/storm-yarn)。

(4)Spark:Spark是一个基于内存实现的MapReduce计算框架,某些应用场景下更加高效,它目前已经支持运行在YARN上(https://github.com/tweetmagik/spark-yarn)。

随着开源界的发展和推进,最终,YARN之上可以运行各种应用类型的计算框架,包括离线计算框架MapReduce,实时计算框架Storm,DAG计算框架Tez等,真正实现一个集群多用途,这样的集群或者系统,我们通常称为轻量级弹性计算平台,说它轻量级,是因为YARN采用了cgroups轻量级隔离方案,说它弹性,是因为YARN能根据各种计算框架或者应用的负载或者需求调整它们各自占用的资源,实现集群资源共享,资源弹性收缩。在不久的将来,普遍采用的部署方案应该如下:

当然,随着YARN朝着资源管理系统方向更好地发展,最终Impala和Hbase(Hbase已经在做了,参考:https://issues.apache.org/jira/browse/HBASE-4329)这种系统,均可以部署到YARN之上,这样,凡是跟计算沾边的系统均可以部署到YARN上。

原创文章,转载请注明: 转载自董的博客

本文链接地址: http://dongxicheng.org/mapreduce-nextgen/use-hadoop-yarn-to-build-a-cloud-system/

作者:Dong,作者介绍:http://dongxicheng.org/about/

本博客的文章集合:http://dongxicheng.org/recommend/


Copyright © 2013
This feed is for personal, non-commercial use only.
The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:
)

推荐阅读
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 本文介绍了在Win10上安装WinPythonHadoop的详细步骤,包括安装Python环境、安装JDK8、安装pyspark、安装Hadoop和Spark、设置环境变量、下载winutils.exe等。同时提醒注意Hadoop版本与pyspark版本的一致性,并建议重启电脑以确保安装成功。 ... [详细]
  • Android日历提醒软件开源项目分享及使用教程
    本文介绍了一款名为Android日历提醒软件的开源项目,作者分享了该项目的代码和使用教程,并提供了GitHub项目地址。文章详细介绍了该软件的主界面风格、日程信息的分类查看功能,以及添加日程提醒和查看详情的界面。同时,作者还提醒了读者在使用过程中可能遇到的Android6.0权限问题,并提供了解决方法。 ... [详细]
  • 大数据Hadoop生态(20)MapReduce框架原理OutputFormat的开发笔记
    本文介绍了大数据Hadoop生态(20)MapReduce框架原理OutputFormat的开发笔记,包括outputFormat接口实现类、自定义outputFormat步骤和案例。案例中将包含nty的日志输出到nty.log文件,其他日志输出到other.log文件。同时提供了一些相关网址供参考。 ... [详细]
  •     这里使用自己编译的hadoop-2.7.0版本部署在windows上,记得几年前,部署hadoop需要借助于cygwin,还需要开启ssh服务,最近发现,原来不需要借助cy ... [详细]
  • Maven构建Hadoop,
    Maven构建Hadoop工程阅读目录序Maven安装构建示例下载系列索引 序  上一篇,我们编写了第一个MapReduce,并且成功的运行了Job,Hadoop1.x是通过ant ... [详细]
  • Hadoop源码解析1Hadoop工程包架构解析
    1 Hadoop中各工程包依赖简述   Google的核心竞争技术是它的计算平台。Google的大牛们用了下面5篇文章,介绍了它们的计算设施。   GoogleCluster:ht ... [详细]
  • Kylin 单节点安装
    软件环境Hadoop:2.7,3.1(sincev2.5)Hive:0.13-1.2.1HBase:1.1,2.0(sincev2.5)Spark(optional)2.3.0K ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • Google Play推出全新的应用内评价API,帮助开发者获取更多优质用户反馈。用户每天在Google Play上发表数百万条评论,这有助于开发者了解用户喜好和改进需求。开发者可以选择在适当的时间请求用户撰写评论,以获得全面而有用的反馈。全新应用内评价功能让用户无需返回应用详情页面即可发表评论,提升用户体验。 ... [详细]
  • 本文整理了Java中org.apache.hadoop.hbase.client.Increment.getDurability()方法的一些代码示例,展示了 ... [详细]
  • LVS-DR直接路由实现负载均衡示例
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • CentOS 7配置SSH远程访问及控制
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
author-avatar
天天宅家里变胖的小黑
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有