12.深入理解juc-并发容器-ThreadLocal

看完随便写写玩的,不是准确的翻译,不喜勿拍。。

原文地址:

http://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html
yarn架构
yarn将jobTracker的两个功能-资源管理和作业调度(监控)拆分成了两个守护进程---RM和ApplicationMaster ,一个任务可以是一个传统的mr job或者是一个DAG JOB。resourcemanager在集群上运行的资源具有最终的裁决权。
appmaster实际上是一个指定资源库,与rm协商资源,与nm协调共同完成task的框架。
 
12.深入理解juc-并发容器-ThreadLocal_第1张图片
 
RM的两个组件:Scheduler and ApplicationsManager
     Scheduler 的功能:负责限制分配资源,队列等给各种应用程序,是纯粹的调度,并不负责跟踪和监控任务的状态。也不负责失败任重启和硬件失败的管理。他基于任务的需要分配资源,资源抽象成container的概念,container包含了内存,CPU,网络等,现阶段只支持内存分配。Scheduler 是个课插拔的插件,负责分配集群资源给各个队列和应用。例如mr调度器CapacityScheduler 和FairScheduler 。CapacityScheduler 支持层次化队列( hierarchical queues),以支持集群资源的可预测的分享。
     ApplicationsManager 功能:接收任务提交,申请第一个container给applicationmaster,负责applicationmaster的container的失败重启。
     NodeManager 功能:每台任务执行节点的agent framework,负责container(cpu, memory, disk, network)的监控,并把状态报告个RM(scheduler)。
 
ApplicationMaster:与scheduler协商可用的container资源,跟踪状态,监控任务进度。

 

你可能感兴趣的:(java并发)