Hadoop3.2.0 源码分析: ResourceManager 调度 CapacityScheduler

在上一节中,只是讲解了ResourceManager 的启动,这次来说另外一个核心的点没说,那就是调度.

 

// Initialize the scheduler
// todo  ResourceScheduler 调度器的创建,他的子类之一就是FairScheduler
scheduler = createScheduler();
scheduler.setRMContext(rmContext);
addIfService(scheduler);
rmContext.setScheduler(scheduler);

 

 


org.apache.hadoop.yarn.server.resourcemanager.ResourceManager#createScheduler
 

Hadoop3.2.0 源码分析: ResourceManager 调度 CapacityScheduler_第1张图片

 

默认调度器:
org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler
 

类图:

Hadoop3.2.0 源码分析: ResourceManager 调度 CapacityScheduler_第2张图片

 

在这里面,主要关心的接口为:

org.apache.hadoop.yarn.server.resourcemanager.scheduler.YarnScheduler

抽象类为:
org.apache.hadoop.service.AbstractService

org.apache.hadoop.yarn.server.resourcemanager.scheduler.AbstractYarnScheduler

 

AbstractService我在之前的章节讲解过,所以本文不做赘述.

直接说 AbstractYarnScheduler (实现了YarnScheduler 接口.   )

Hadoop3.2.0 源码分析: ResourceManager 调度 CapacityScheduler_第3张图片

 

 

 

 

 

未完,待续...............

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(Hadoop3.2.0,源码)