|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.hadoop.service.AbstractService
org.apache.hadoop.yarn.server.resourcemanager.scheduler.AbstractYarnScheduler<FiCaSchedulerApp,FiCaSchedulerNode>
org.apache.hadoop.yarn.server.resourcemanager.scheduler.fifo.FifoScheduler
@InterfaceAudience.LimitedPrivate(value="yarn") @InterfaceStability.Evolving public class FifoScheduler
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from interface org.apache.hadoop.service.Service |
|---|
org.apache.hadoop.service.Service.STATE |
| Field Summary |
|---|
| Fields inherited from class org.apache.hadoop.yarn.server.resourcemanager.scheduler.AbstractYarnScheduler |
|---|
applications, clusterResource, EMPTY_ALLOCATION, EMPTY_CONTAINER_LIST, maximumAllocation, minimumAllocation, nmExpireInterval, nodes, rmContext |
| Constructor Summary | |
|---|---|
FifoScheduler()
|
|
| Method Summary | |
|---|---|
void |
addApplication(org.apache.hadoop.yarn.api.records.ApplicationId applicationId,
String queue,
String user,
boolean isAppRecovering)
|
void |
addApplicationAttempt(org.apache.hadoop.yarn.api.records.ApplicationAttemptId appAttemptId,
boolean transferStateFromPreviousAttempt,
boolean isAttemptRecovering)
|
Allocation |
allocate(org.apache.hadoop.yarn.api.records.ApplicationAttemptId applicationAttemptId,
List<org.apache.hadoop.yarn.api.records.ResourceRequest> ask,
List<org.apache.hadoop.yarn.api.records.ContainerId> release,
List<String> blacklistAdditions,
List<String> blacklistRemovals)
The main api between the ApplicationMaster and the Scheduler. |
boolean |
checkAccess(org.apache.hadoop.security.UserGroupInformation callerUGI,
org.apache.hadoop.yarn.api.records.QueueACL acl,
String queueName)
Check if the user has permission to perform the operation. |
protected void |
completedContainer(RMContainer rmContainer,
org.apache.hadoop.yarn.api.records.ContainerStatus containerStatus,
RMContainerEventType event)
|
List<org.apache.hadoop.yarn.api.records.ApplicationAttemptId> |
getAppsInQueue(String queueName)
Gets the apps under a given queue |
org.apache.hadoop.conf.Configuration |
getConf()
|
int |
getNumClusterNodes()
Get the number of nodes available in the cluster. |
org.apache.hadoop.yarn.api.records.QueueInfo |
getQueueInfo(String queueName,
boolean includeChildQueues,
boolean recursive)
Get queue information |
List<org.apache.hadoop.yarn.api.records.QueueUserACLInfo> |
getQueueUserAclInfo()
Get acls for queues for current user. |
RMContainer |
getRMContainer(org.apache.hadoop.yarn.api.records.ContainerId containerId)
Get the container for the given containerId. |
QueueMetrics |
getRootQueueMetrics()
Get the root queue for the scheduler. |
org.apache.hadoop.yarn.api.records.Resource |
getUsedResource()
|
void |
handle(SchedulerEvent event)
|
void |
recover(RMStateStore.RMState state)
|
void |
reinitialize(org.apache.hadoop.conf.Configuration conf,
RMContext rmContext)
Re-initialize the ResourceScheduler. |
void |
serviceInit(org.apache.hadoop.conf.Configuration conf)
|
void |
serviceStart()
|
void |
serviceStop()
|
void |
setConf(org.apache.hadoop.conf.Configuration conf)
|
void |
setRMContext(RMContext rmContext)
Set RMContext for ResourceScheduler. |
| Methods inherited from class org.apache.hadoop.yarn.server.resourcemanager.scheduler.AbstractYarnScheduler |
|---|
addQueue, containerLaunchedOnNode, createReleaseCache, getApplicationAttempt, getAppResourceUsageReport, getClusterResource, getCurrentAttemptForContainer, getMaximumResourceCapability, getMinimumResourceCapability, getNodeReport, getPlanQueues, getSchedulerAppInfo, getSchedulerApplications, getSchedulerNode, getSchedulingResourceTypes, getTransferredContainers, killAllAppsInQueue, moveAllApps, moveApplication, recoverContainersOnNode, recoverResourceRequestForContainer, releaseContainers, removeQueue, setEntitlement, updateNodeResource |
| Methods inherited from class org.apache.hadoop.service.AbstractService |
|---|
close, getBlockers, getConfig, getFailureCause, getFailureState, getLifecycleHistory, getName, getServiceState, getStartTime, init, isInState, noteFailure, putBlocker, registerGlobalListener, registerServiceListener, removeBlocker, setConfig, start, stop, toString, unregisterGlobalListener, unregisterServiceListener, waitForServiceToStop |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public FifoScheduler()
| Method Detail |
|---|
public void serviceInit(org.apache.hadoop.conf.Configuration conf)
throws Exception
serviceInit in class AbstractYarnScheduler<FiCaSchedulerApp,FiCaSchedulerNode>Exception
public void serviceStart()
throws Exception
serviceStart in class org.apache.hadoop.service.AbstractServiceException
public void serviceStop()
throws Exception
serviceStop in class org.apache.hadoop.service.AbstractServiceExceptionpublic void setConf(org.apache.hadoop.conf.Configuration conf)
setConf in interface org.apache.hadoop.conf.Configurablepublic org.apache.hadoop.conf.Configuration getConf()
getConf in interface org.apache.hadoop.conf.Configurablepublic int getNumClusterNodes()
YarnScheduler
getNumClusterNodes in interface YarnSchedulerpublic void setRMContext(RMContext rmContext)
ResourceSchedulerResourceScheduler.
This method should be called immediately after instantiating
a scheduler once.
setRMContext in interface ResourceSchedulerrmContext - created by ResourceManager
public void reinitialize(org.apache.hadoop.conf.Configuration conf,
RMContext rmContext)
throws IOException
ResourceSchedulerResourceScheduler.
reinitialize in interface ResourceSchedulerconf - configuration
IOException
public Allocation allocate(org.apache.hadoop.yarn.api.records.ApplicationAttemptId applicationAttemptId,
List<org.apache.hadoop.yarn.api.records.ResourceRequest> ask,
List<org.apache.hadoop.yarn.api.records.ContainerId> release,
List<String> blacklistAdditions,
List<String> blacklistRemovals)
YarnScheduler
allocate in interface YarnSchedulerAllocation for the application
public void addApplication(org.apache.hadoop.yarn.api.records.ApplicationId applicationId,
String queue,
String user,
boolean isAppRecovering)
public void addApplicationAttempt(org.apache.hadoop.yarn.api.records.ApplicationAttemptId appAttemptId,
boolean transferStateFromPreviousAttempt,
boolean isAttemptRecovering)
public void handle(SchedulerEvent event)
handle in interface org.apache.hadoop.yarn.event.EventHandler<SchedulerEvent>
@Lock(value=FifoScheduler.class)
protected void completedContainer(RMContainer rmContainer,
org.apache.hadoop.yarn.api.records.ContainerStatus containerStatus,
RMContainerEventType event)
completedContainer in class AbstractYarnScheduler<FiCaSchedulerApp,FiCaSchedulerNode>
public org.apache.hadoop.yarn.api.records.QueueInfo getQueueInfo(String queueName,
boolean includeChildQueues,
boolean recursive)
YarnScheduler
getQueueInfo in interface YarnSchedulerqueueName - queue nameincludeChildQueues - include child queues?recursive - get children queues?
public List<org.apache.hadoop.yarn.api.records.QueueUserACLInfo> getQueueUserAclInfo()
YarnScheduler
getQueueUserAclInfo in interface YarnSchedulerpublic void recover(RMStateStore.RMState state)
recover in interface Recoverablepublic RMContainer getRMContainer(org.apache.hadoop.yarn.api.records.ContainerId containerId)
YarnScheduler
getRMContainer in interface YarnSchedulergetRMContainer in class AbstractYarnScheduler<FiCaSchedulerApp,FiCaSchedulerNode>public QueueMetrics getRootQueueMetrics()
YarnScheduler
getRootQueueMetrics in interface YarnScheduler
public boolean checkAccess(org.apache.hadoop.security.UserGroupInformation callerUGI,
org.apache.hadoop.yarn.api.records.QueueACL acl,
String queueName)
YarnSchedulerQueueACL.ADMINISTER_QUEUE permission,
this user can view/modify the applications in this queue
checkAccess in interface YarnSchedulertrue if the user has the permission,
false otherwisepublic List<org.apache.hadoop.yarn.api.records.ApplicationAttemptId> getAppsInQueue(String queueName)
YarnScheduler
getAppsInQueue in interface YarnSchedulerqueueName - the name of the queue.
public org.apache.hadoop.yarn.api.records.Resource getUsedResource()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||