重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要介绍“ResourceManager主要的组件有哪些”,在日常操作中,相信很多人在ResourceManager主要的组件有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ResourceManager主要的组件有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
公司主营业务:网站建设、网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联建站是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联建站推出西平免费做网站回馈大家。
在hadoop0.23版本中,MapReduce相比原先有了一个完全的颠覆,现在我们有了称作MapReduce 2.0(MRv2)的YARN。
MRv2最核心的概念是,将JobTrack中两个最重要的功能resource management和job scheduling/monitoring分隔开,形成不同的守护进程。由此概念产生了一个全局的ResourceManager(RM)和per-application(每个application一个的) ApplicationMaster(AM)。一个application是Map-Reducejobs传统场景中的一个job,或者jobs的一个DAG(Directed Acyclic Graph有向无环图)。
ResourceManager、per-node slave、NodeManager(NM)形成了data-computation framework。在系统所有application的资源分配上,ResourceManager拥有最高权限。
Per-application ApplicationMaster实际上是一个framework specific library,同时它的任务是调度从ResourceManager分配下来的资源,并且同NodeManager(s)一起工作来执行并监控tasks。
ResourceManager有两个主要的组件:Scheduler和ApplicationsManager。
The Scheduler is responsible for allocating resources to various running applications subject to familiar constraints of capacities, queues etc[J1] . Scheduler只用于调度的场景,它不会监控或者追踪application的状态。同样的,它不能够在由于application或硬件失败导致task失败后重启task。Scheduler基于applications对于resource的需求来履行他的调度功能;它基于一个resource Container的抽象概念,container由各种资源组成,如内存、cpu、磁盘、网络等。在开始的版本中,支持内存。
Scheduler有一个可插拔的plug-in,它的作用是为各种queues、applications等等分割集群的resources。当前的Map-Reduce scheduler比如CapacityScheduler和FairScheduler就是这样的例子。
The CapacityScheduler supports hierarchical queues to allow for more predictable sharing of cluster resources.
ApplicationsManager负责接收job的提交,分配初始的container来执行特定ApplicationMaster的application,provides the service for restarting the ApplicationMaster container on failure.
NodeManager是一个per-machine framework agent,它的作用是监控containers的resource(cpu, 内存,磁盘,网络),并如实report给ResourceManager/Scheduler。
Per-application ApplicationMaster 的责任是把从Scheduler得到的资源组合成适当的resource container,追踪它们的状态并监控其过程。
MRv2的API与上一个版本(Hadoop-0.20.205)是向下兼容的。这意味着所有原有的Map-Reduce jobs只需要重新编译一下应该就可以不加修改运行在MRv2上。
到此,关于“ResourceManager主要的组件有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!