白话Hadoop下一代框架Yarn

来源:互联网 发布:mysql删除表if exists 编辑:程序博客网 时间:2024/05/16 10:58

先上个官方图咱在白话


今天白话一段家长带孩子去欢乐谷玩耍的故事。


话说欢乐谷有许多游乐设施,如大锤摆,过山车,激流勇进,每天各项设施接待游客的数目是有一个上限的,不能出现队伍排队排到闭园的情况。所以我们必须设立一个资源总管的角色,我们叫它资源大总管(Resource Manager),它负责园内各项资源的总调度。


每个年轻妈妈都会带自己的孩子(1个或多个)去玩不同的游乐设施,一个限制是要以家庭为单位一次一起玩同一个设施直到玩完该设施。(这就是一次计算,可以是传统的map-reduce或者DAG计算)


每个游乐设施需要有一个设施管理员(Node Manager),随时向资源大总管(Resource Manager)报告该设施的运行情况,我们说,由游乐设施管理员和资源大总管组成了新一代Yarn计算框架。


很明显,在这套权威下,资源大总管有着至高无上的权利,它可以在年轻妈妈和孩子组成的家庭组之间进行绝对仲裁。年轻妈妈负责想资源大总管提出来,我的家庭要玩什么设施,给我留几个位置。年轻妈妈就是ApplicationMaster,负责和资源大总管谈条件,并和设施管理员一起协作,完成「玩设施」和监控「玩设施」的过程。显然「玩设施」其实就是一次分布式计算过程。


再说说资源大总管,其实事情也不是它自己完成的,它有两个帮手,一个是天枰座的秘书,一个是处女老婆。


和蔼的天枰座秘书,总是会根据年轻妈妈们提出的要求安排相应的设施(资源),但是天枰座秘书能力有限,像对于监控某家人玩的如何(monitoring)或者有人从设施上摔出来了扶一把(restart failed tasks)这样困难的操作,天枰座是不会的。而且目前只能接受年轻妈妈们提出的关于孩子个数的要求(memory)。


一旦天平座秘书安排妥当,就该拥有圣母情怀的处女老婆(ApplicationsManager )上场了,她首先接受了年轻妈妈的请求(accept job-submission),该请求可能是我有4个孩子我们想玩过丛林鼠。处女老婆首先会带年轻妈妈和孩子到合适的设施前让她先玩(ApplicationMaster会先被启动),她玩完后会在出口等着她的孩子一个个出来(孩子便是一个个分布计算任务),然后结束本次。处女座老婆告诉年轻妈妈,如果本次乘坐出现问题一定告诉我,我会让你重新乘坐(ApplicationsManager可以重启ApplicationMaster)。


恪尽职守的设施管理员会实时将设施的运行状态如,该设施目前已乘坐多少人,还有多少个空位置,报告给资源大总管(cpu, memory, disk, network


年轻妈妈会有秩序的将一个个孩子送到乘坐设施上(negotiating appropriate resource containers),监控它们的状态(tracking their status)和进度(monitoring for progress


至此一趟愉快的旅途结束。小伙伴儿们,你们明白了吗?

0 0