服务热线:400-0033-166
万商云集 - 企业数字化选用平台

企业首选的

数字选用平台

详细介绍云梯YARN集群的 技术实现与发展状况

2020-12-31 11:52:21 阅读(183 评论(0)

阿里巴巴作为中国最早使用Hadop的公司之一,已经开启了ApacheHadop2.0时代。阿里巴巴的Hadoop集群,即梯形集群,分为存储和计算两个模块。计算模块包括MRV1和YARN集群,共享存储HDFS集群。云梯YARN集群不仅支持Mapreduce,还支持Spark、MPI、RHive、计算模型,如RHadoop。本文将详细介绍云梯YARN集群的技术实现和发展。MRV1和YARN集群共享HDFS存储技术以服务为起点,云梯集群将Hadoop分为存储(HDFS)服务与计算(MRV1和YARN)。这两个计算集群共享HDFS存储集群,这是怎么做到的?在引入YARN之前,基于ApacheHadoop0.19.1-dc版本的云梯Hadoop,并添加了许多新功能。此外,它还兼容了ApacheHadop0.19、0.20、客户端CDH3版。为了保持对客户端的友好,云梯服务端升级总是保持与原客户端的兼容性。此外,为了方便访问数据,阿里巴巴的存储集群是一个单一的大集群。YARN的引入不应迫使HDFS集群被拆分,但YARN是基于社区0.23系列版本,不能直接访问梯子HDFS集群。因此,实现YARN集群访问云梯的HDFS集群是引入YARN后需要解决的第一个技术问题。Hadoop代码主要分为Comon、HDFS、三包Mapred。Common包括公共类,如I/O、通信等类。HDFS部分包括HDFS相关类别,依赖Common包。Mapred部分包括Mapreduce相关代码,依靠Common包和HDFS包。开发人员主要做以下工作,以尽量减少对云梯HDFS的修改。用梯子的HDFS客户端代码代替0.23中的HDFS,形成新的HDFS包。对0.23新的HDFS包进行了少量修改,使其能够在0.23的Common包上运行。对0.23新的HDFS包进行了少量修改,使0.23的Mapred包能够在新的HDFS包中运行。hack用于云梯Common包的通信部分,使其与0.23Common兼容。图1Hadoop代码架构新的云梯代码结构如图1所示,如下所示。原HDFS用于服务端存储部分。在MRV1计算集群中提供原MRV1服务。YARN集群提供更丰富的应用服务。客户端云梯现有客户端不做任何修改,继续使用原有服务。使用YARN服务需要使用新的客户端。为YARN切换云梯MR服务,服务端只有MRV1,客户端只有老版本的客户端。MRV1与YARN共存(MRV1资源逐渐转移到YARN),如果客户端需要使用MRV1服务,则保持客户端不变;如果需要使用YARN服务,则需要使用新的客户端。YARN只留在服务端,客户端只有新版本的客户端。通过以上修改,云梯开发人员以较小的修改实现了YARN对云梯HDFS的访问。云梯版YARN集群实现了SparkonyARN、Hive、Spark、MPI、RHive、支持RHadoop等应用。云梯集群目前的结构如图2所示。Spark已成为YARN集群除Mapreduce应用外的另一个重要应用。Spark是一个分布式数据快速分析项目。其核心技术是弹性分布式数据集(ResilientDistributedDatasets),它提供了比Mapreduce更丰富的模型,可以在内存中快速迭代数据集,以支持复杂的数据挖掘算法和图形计算算法。Spark的计算调度模式,从Mesos到Standalone,即自建Spark计算集群。虽然Standalone的性能和稳定性有所提高,但毕竟自建集群资源少,需要从梯子集群复制数据,无法满足数据挖掘和计算团队的业务需求。SparkonyARN允许Spark计算模型在云梯YARN集群上运行,直接读取云梯上的数据,充分享受云梯YARN集群丰富的计算资源。理论上,Sparkonyarn功能从Spark0.6.0版本开始支持,但实际上还远未成熟。经过长时间的数据挖掘和计算团队压力测试,修复了一些相对关键的bug,以确保Sparkonyarn的稳定性和正确性。SparkonYARN的操作执行机制显示在图3中。图3Sparkonyarn框架基于Yarn的Spark操作首先由客户端生成操作信息,并提交给resourcemanager。resourcemanager在nodemanager报告时将appmaster分配给nodemanager,nodemanager启动sparkappmaster,Sparkappmaster启动后的初始化作业,然后向Resourcemanager申请资源,Sparkappmaster通过RPC让Nodemanager启动相应的Sparkexecutor,Sparkexecutor向Sparkappmaster汇报并完成相应的任务。另外,SparkClient将通过AppMaster获得工作状态。此外,Sparkclient还将通过Appmaster获得操作状态。目前,数据挖掘和计算团队已经通过SparkonyARN实现了MLR、Pagerank和JMeans算法,其中MLR已作为生产操作运行。云梯YARN集群维护经验分享云梯YARN维护过程中遇到的问题很多,很有可能在YARN集群维护中遇到。这里有两个典型的问题及其解决方案。问题1问题描述:社区的CPU隔离和调度功能需要在每台NodeManager所在的机器上创建与用户帐户相对应的Linux帐户。但是阿里云梯集群有5000多个账户,是否需要在每台Nodemanager机器上创建这么多Linux账户;此外,每次创建或删除Hadop用户时,还应在每台Nodemanager机器上创建或删除相应的Linux账户,这将大大增加操作和维护的负担。问题分析:我们发现CPU的隔离并不依赖于Linux账户,这意味着即使同一账户创建了两个过程,Cgroup也可以隔离CPU,但为什么社区要在每台Nodemanager机器上创建账户呢?原来这是为了让每一个Container都以提交aplication的账户执行,防止Container的Linux账户权限过大,保证安全。然而,云梯集群很久以前就分为账户。启动container的Linux账户统一为普通账户。该账户权限小,用户为公司内部员工,安全性能满足需求。解决方案:修改container-executor.c文件,防止其修改container的启动账户,并使用统一的普通Linux账户(无sudo权限)运行container。这样既能保证安全,又能减少运维工作量。问题2问题描述:MRAplicationMaster初始化缓慢,部分作业MRAplicationMaster启动需要一分钟以上。问题分析:通过检查MRAplication-Master的日志,发现分析Rack上消耗了一分钟的初始化时间。从代码分析来看,MRAplicationMaster启动时需要初始化Taskatempt,然后需要分析split信息中的Host,生成相应的Rack信息。目前,云梯分析Host的方法是通过调用外部Python脚本进行分析,每次调用约需20ms。由于云梯HDFS集群非常大,有4500多台机器。如果输入数据分布在每个Datanode上,则需要4500台分析Host×20ms=90s;若作业输入数据较大,且文件备份数为3,那么输入数据很可能会分布在集群的大多数Datanode上。解决方案:开发人员通过在Node-Manager上添加配置文件,包括所有Datanode的Rack信息,MRApp-LicationMaster启动后,加载此文件,防止外部脚本分析频繁调用。解决方案:开发人员通过在Node-Manager上添加配置文件,包括所有Datanode的Rack信息,MRApp-LicationMaster启动后,加载此文件,防止外部脚本分析频繁调用。这大大加快了MRAplicationMaster的初始化。此外,云梯开发人员还解决了一些会让ResourceManager不工作的bug,并将其贡献给ApacheHadop社区。在云梯YARN集群的建设和维护中,云梯开发人员遇到并解决了许多问题。分析和解决这些问题首先需要熟悉代码,但代码量巨大。我们如何快速熟悉它们?这需要团队的合作。团队中的每个人都负责不同的模块,阅读后轮流分享,可以加快熟悉代码的速度。此外,Hadoop的优势在于它可以利用社区的力量。当你遇到问题时,你可以先去社区找到答案,因为社区已经解决了很多问题,充分利用社区可以大大提高工作效率。目前,云梯YARN集群已试运行,并拥有MRV2、Hive、Spark、RHive、RHadop等应用。云梯YARN集群的优点是支持更丰富的计算模型;共享云梯最大的存储集群,访问方便快捷;AppHistory信息存储在HDFS上,可以方便查看各种应用程序的操作历史;与MRV1集群相比,云梯YARN可以支持更大的集群; 与MRV1集群相比,云梯YARN集群支持内存和CPU调度,资源利用将更加合理。未来,云梯将把大部分业务转移到云梯YARN集群。未来,云梯将将大部分业务转移到云梯YARN集群。对于YARN版本,云梯将增加资源隔离和调度,增加Storm、支持Tez等计算模型,优化YARN性能。

内容来源:网络,以上内容来源于网络,不代表本站观点,如有侵权,请联系删除。

推荐阅读

一定要用的双拼输入法app,用完绝不后悔!

双拼输入法在我们现在的社会中还是比较常见的,有的人喜欢用九宫格,有的人喜欢用二十六键,这只不过是一种习惯而已,但是双拼给我们生活中带来快捷的打字速度是真实存在的,那么今天我们就来盘点一下双拼输入法都有哪些。1、IN输入法是一款具有特色功能的…查看详情

非常受欢迎的悬疑小说排行榜,部部烧脑

小说的种类有很多,每个人喜欢的小说类型都不相同,大家在看小说的时候会根据不同的类型做选择,有的人喜欢看悬疑小说,但前提是必须要知道悬疑小说排行榜有哪些才可以选择。1.《心理罪》雷米原本宁静的校园内被四起凶杀案破除,凶案现场血浆和血液的混合物…查看详情

怎么注册公司标志

  公司logo需要注册吗?  是的,如果您的公司拥有自己的logo,最好将其进行注册,以确保您拥有该logo的所有权和保护。  这将有助于防止其他公司或个人在未经许可的情况下使用您的logo,并为您提供法律保护。在注册logo之前,最好进…查看详情

专利权终止能不能继续申请?

专利权人自愿将其发明创造贡献给全社会,可以提出声明主动放弃专利权,下面就来看一下专利权终止能不能继续申请这方面的问题。  一、专利权终止能不能继续申请  依据我国相关法律的规定,专利权被终止后是不能再申请专利的,专利权终止后专利就就会被公开…查看详情

幻灯片制作软件怎么选?这几款功能强大

在日常的工作和学习中,如果想要全方面地表达自己的想法,那么采用幻灯片是不错的选择。通过一个精彩的幻灯片可以让大家对于自身的能力快速的了解,并且也可以加深印象,也可以让自我表达的内容变得形象和具体。而幻灯片的制作也并不难,可以选择…查看详情

注意丨零售业热门小程序的运营方法并不具有普适性

小程序本身是基于超级APP的一种应用工具,无论是微信小程序、百度小程序还是支付宝小程序,都拜托不了“社交”属性。因此,在很难说,未来会不会出现某个超级APP垄断用户市场的情况。从行业趋势上来看,各行业已经在小程序推广的转型路上,尤其是零售行…查看详情

营业费用指的是什么费用

  营业费用是企业在日常经营中发生的、与销售收入直接相关的费用支出。在会计报表中,营业费用是指企业在一定会计期间内用于销售、推广、管理和营销等活动所发生的各项费用,包括销售费用、广告费用、管理费用、研发费用、运输费用、业务招待费用、租金等各…查看详情

支付宝集五福怎么集齐?

  优质答案(1)  1/3打开支付宝app,搜索“五福”,点击顶部“集五福活动入口”图片。  2/3进入活动页,点击右下角“我的福卡”按钮。  3/3找到合成的“五福到”卡片,点击“开”图标即可开奖。  优质答案(2)  方法如下:  1…查看详情

超实用电脑桌面监控系统,实时监控桌面信息

随着时代的进步和社会的发展,网络化时代已悄然代替旧社会的纯劳动力,从手机的诺基亚,到现在的华为、苹果、三星,无一不是在诉说着网络化的快速发展。而最惹人注目的还得是电脑桌面监控系统。 1、网络人 网络人不仅在功能上,能够远程操…查看详情

盘点十大学英语APP,这些好用又免费

英语作为全球通用的语言,也是我国重点的学科,如果没有掌握流利的英语,不仅升学就业会受到影响,想要出国旅行的话也有很多的不便,所以不管是针对哪一方面,学好英语都是很有必要的,那么下面就为大家盘点十大学英语APP,这些好用又免费一起…查看详情

专利诉讼的程序是什么 专利诉讼的程序介绍

    在平时很多的小伙伴都不知道专利诉讼的程序的基本情况,而且对专利诉讼的程序都不是很熟悉,下面万商云集*就为大家整理了专利诉讼的程序这方面的相关内容,希望下面的内容能帮助到各位。   一、专利诉讼的程序是什么  1、搜集和整理相关证据材…查看详情

t610是什么处理器

unisoct610是什么处理器?我认为unisoct610是虎贲T610处理器。虎贲T610是一款4G手机的中端处理器,采用12nm制程工艺,由两颗1.8GHz的ArmCortex-A75CPU和六颗1.8GHz的ArmCortex-A5…查看详情

找另一半情侣头像软件有哪些?找另一半情侣头像软件推荐

在平时的时候,很多人选择头像时都会选择情侣软件,但是走到一半的情侣头像软件之后,另一半情侣头像不好找。所以说这个时候就可以选择一些比较好的软件,这样就能够找到另一半情侣头像。那么找另一半情侣头像软件有哪些呢?下面就给大家来介绍一…查看详情

dns服务器什么意思?

  优质答案(1)  DNS(DomainNameServer,域名服务器)是进行域名(domainname)和与之相对应的IP地址(IP address)转换的服务器。  DNS中保存了一张域名(domainname)和与之相对应的IP…查看详情

上海营销公司都有哪些?

4a广告公司排名?第1名:上海沪琛品牌营销策划有限公司官网:www.hooshen.com 第2名:Raynet-ogilv 第3名:昌荣传播/CHARM官网:www.charmgroup.cn 第4名:新意互动CIG …查看详情

最新文章