Class RouterRMAdminService
java.lang.Object
org.apache.hadoop.service.AbstractService
org.apache.hadoop.yarn.server.router.rmadmin.RouterRMAdminService
- All Implemented Interfaces:
Closeable,AutoCloseable,org.apache.hadoop.service.Service,org.apache.hadoop.tools.GetUserMappingsProtocol,org.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol
public class RouterRMAdminService
extends org.apache.hadoop.service.AbstractService
implements org.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol
RouterRMAdminService is a service that runs on each router that can be used
to intercept and inspect
ResourceManagerAdministrationProtocol
messages from client to the cluster resource manager. It listens
ResourceManagerAdministrationProtocol messages from the client and
creates a request intercepting pipeline instance for each client. The
pipeline is a chain of interceptor instances that can inspect and modify the
request/response as needed. The main difference with AMRMProxyService is the
protocol they implement.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classPrivate structure for encapsulating RequestInterceptor and user instances.Nested classes/interfaces inherited from interface org.apache.hadoop.service.Service
org.apache.hadoop.service.Service.STATE -
Field Summary
Fields inherited from interface org.apache.hadoop.tools.GetUserMappingsProtocol
versionID -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.hadoop.yarn.server.api.protocolrecords.AddToClusterNodeLabelsResponseaddToClusterNodeLabels(org.apache.hadoop.yarn.server.api.protocolrecords.AddToClusterNodeLabelsRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.BatchSaveFederationQueuePoliciesResponsebatchSaveFederationQueuePolicies(org.apache.hadoop.yarn.server.api.protocolrecords.BatchSaveFederationQueuePoliciesRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.CheckForDecommissioningNodesResponsecheckForDecommissioningNodes(org.apache.hadoop.yarn.server.api.protocolrecords.CheckForDecommissioningNodesRequest checkForDecommissioningNodesRequest) protected RMAdminRequestInterceptorThis method creates and returns reference of the first interceptor in the chain of request interceptor instances.org.apache.hadoop.yarn.server.api.protocolrecords.DeleteFederationApplicationResponsedeleteFederationApplication(org.apache.hadoop.yarn.server.api.protocolrecords.DeleteFederationApplicationRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.DeleteFederationQueuePoliciesResponsedeleteFederationPoliciesByQueues(org.apache.hadoop.yarn.server.api.protocolrecords.DeleteFederationQueuePoliciesRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.DeregisterSubClusterResponsederegisterSubCluster(org.apache.hadoop.yarn.server.api.protocolrecords.DeregisterSubClusterRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.GetSubClustersResponsegetFederationSubClusters(org.apache.hadoop.yarn.server.api.protocolrecords.GetSubClustersRequest request) String[]getGroupsForUser(String user) Gets the Request interceptor chains for all the users.org.apache.hadoop.ipc.Serverorg.apache.hadoop.yarn.server.api.protocolrecords.QueryFederationQueuePoliciesResponselistFederationQueuePolicies(org.apache.hadoop.yarn.server.api.protocolrecords.QueryFederationQueuePoliciesRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.NodesToAttributesMappingResponsemapAttributesToNodes(org.apache.hadoop.yarn.server.api.protocolrecords.NodesToAttributesMappingRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.RefreshAdminAclsResponserefreshAdminAcls(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshAdminAclsRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.RefreshClusterMaxPriorityResponserefreshClusterMaxPriority(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshClusterMaxPriorityRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.RefreshNodesResponserefreshNodes(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshNodesRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.RefreshNodesResourcesResponserefreshNodesResources(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshNodesResourcesRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.RefreshQueuesResponserefreshQueues(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshQueuesRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.RefreshServiceAclsResponserefreshServiceAcls(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshServiceAclsRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.RefreshSuperUserGroupsConfigurationResponserefreshSuperUserGroupsConfiguration(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshSuperUserGroupsConfigurationRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.RefreshUserToGroupsMappingsResponserefreshUserToGroupsMappings(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshUserToGroupsMappingsRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.RemoveFromClusterNodeLabelsResponseremoveFromClusterNodeLabels(org.apache.hadoop.yarn.server.api.protocolrecords.RemoveFromClusterNodeLabelsRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.ReplaceLabelsOnNodeResponsereplaceLabelsOnNode(org.apache.hadoop.yarn.server.api.protocolrecords.ReplaceLabelsOnNodeRequest request) org.apache.hadoop.yarn.server.api.protocolrecords.SaveFederationQueuePolicyResponsesaveFederationQueuePolicy(org.apache.hadoop.yarn.server.api.protocolrecords.SaveFederationQueuePolicyRequest request) protected voidprotected voidorg.apache.hadoop.yarn.server.api.protocolrecords.UpdateNodeResourceResponseupdateNodeResource(org.apache.hadoop.yarn.server.api.protocolrecords.UpdateNodeResourceRequest request) 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, serviceInit, setConfig, start, stop, toString, unregisterGlobalListener, unregisterServiceListener, waitForServiceToStop
-
Constructor Details
-
RouterRMAdminService
public RouterRMAdminService()
-
-
Method Details
-
serviceStart
- Overrides:
serviceStartin classorg.apache.hadoop.service.AbstractService- Throws:
Exception
-
serviceStop
- Overrides:
serviceStopin classorg.apache.hadoop.service.AbstractService- Throws:
Exception
-
getServer
@VisibleForTesting public org.apache.hadoop.ipc.Server getServer() -
getInterceptorChain
@VisibleForTesting public RouterRMAdminService.RequestInterceptorChainWrapper getInterceptorChain() throws IOException- Throws:
IOException
-
getPipelines
@VisibleForTesting protected Map<String,RouterRMAdminService.RequestInterceptorChainWrapper> getPipelines()Gets the Request interceptor chains for all the users.- Returns:
- the request interceptor chains.
-
createRequestInterceptorChain
This method creates and returns reference of the first interceptor in the chain of request interceptor instances.- Returns:
- the reference of the first interceptor in the chain
-
getGroupsForUser
- Specified by:
getGroupsForUserin interfaceorg.apache.hadoop.tools.GetUserMappingsProtocol- Throws:
IOException
-
refreshQueues
public org.apache.hadoop.yarn.server.api.protocolrecords.RefreshQueuesResponse refreshQueues(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshQueuesRequest request) throws org.apache.hadoop.ipc.StandbyException, org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
refreshQueuesin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.ipc.StandbyExceptionorg.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
refreshNodes
public org.apache.hadoop.yarn.server.api.protocolrecords.RefreshNodesResponse refreshNodes(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshNodesRequest request) throws org.apache.hadoop.ipc.StandbyException, org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
refreshNodesin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.ipc.StandbyExceptionorg.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
refreshSuperUserGroupsConfiguration
public org.apache.hadoop.yarn.server.api.protocolrecords.RefreshSuperUserGroupsConfigurationResponse refreshSuperUserGroupsConfiguration(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshSuperUserGroupsConfigurationRequest request) throws org.apache.hadoop.ipc.StandbyException, org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
refreshSuperUserGroupsConfigurationin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.ipc.StandbyExceptionorg.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
refreshUserToGroupsMappings
public org.apache.hadoop.yarn.server.api.protocolrecords.RefreshUserToGroupsMappingsResponse refreshUserToGroupsMappings(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshUserToGroupsMappingsRequest request) throws org.apache.hadoop.ipc.StandbyException, org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
refreshUserToGroupsMappingsin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.ipc.StandbyExceptionorg.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
refreshAdminAcls
public org.apache.hadoop.yarn.server.api.protocolrecords.RefreshAdminAclsResponse refreshAdminAcls(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshAdminAclsRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
refreshAdminAclsin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
refreshServiceAcls
public org.apache.hadoop.yarn.server.api.protocolrecords.RefreshServiceAclsResponse refreshServiceAcls(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshServiceAclsRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
refreshServiceAclsin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
updateNodeResource
public org.apache.hadoop.yarn.server.api.protocolrecords.UpdateNodeResourceResponse updateNodeResource(org.apache.hadoop.yarn.server.api.protocolrecords.UpdateNodeResourceRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
updateNodeResourcein interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
refreshNodesResources
public org.apache.hadoop.yarn.server.api.protocolrecords.RefreshNodesResourcesResponse refreshNodesResources(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshNodesResourcesRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
refreshNodesResourcesin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
addToClusterNodeLabels
public org.apache.hadoop.yarn.server.api.protocolrecords.AddToClusterNodeLabelsResponse addToClusterNodeLabels(org.apache.hadoop.yarn.server.api.protocolrecords.AddToClusterNodeLabelsRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
addToClusterNodeLabelsin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
removeFromClusterNodeLabels
public org.apache.hadoop.yarn.server.api.protocolrecords.RemoveFromClusterNodeLabelsResponse removeFromClusterNodeLabels(org.apache.hadoop.yarn.server.api.protocolrecords.RemoveFromClusterNodeLabelsRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
removeFromClusterNodeLabelsin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
replaceLabelsOnNode
public org.apache.hadoop.yarn.server.api.protocolrecords.ReplaceLabelsOnNodeResponse replaceLabelsOnNode(org.apache.hadoop.yarn.server.api.protocolrecords.ReplaceLabelsOnNodeRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
replaceLabelsOnNodein interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
checkForDecommissioningNodes
public org.apache.hadoop.yarn.server.api.protocolrecords.CheckForDecommissioningNodesResponse checkForDecommissioningNodes(org.apache.hadoop.yarn.server.api.protocolrecords.CheckForDecommissioningNodesRequest checkForDecommissioningNodesRequest) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
checkForDecommissioningNodesin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
refreshClusterMaxPriority
public org.apache.hadoop.yarn.server.api.protocolrecords.RefreshClusterMaxPriorityResponse refreshClusterMaxPriority(org.apache.hadoop.yarn.server.api.protocolrecords.RefreshClusterMaxPriorityRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
refreshClusterMaxPriorityin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
mapAttributesToNodes
public org.apache.hadoop.yarn.server.api.protocolrecords.NodesToAttributesMappingResponse mapAttributesToNodes(org.apache.hadoop.yarn.server.api.protocolrecords.NodesToAttributesMappingRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
mapAttributesToNodesin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
deregisterSubCluster
public org.apache.hadoop.yarn.server.api.protocolrecords.DeregisterSubClusterResponse deregisterSubCluster(org.apache.hadoop.yarn.server.api.protocolrecords.DeregisterSubClusterRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
deregisterSubClusterin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
saveFederationQueuePolicy
public org.apache.hadoop.yarn.server.api.protocolrecords.SaveFederationQueuePolicyResponse saveFederationQueuePolicy(org.apache.hadoop.yarn.server.api.protocolrecords.SaveFederationQueuePolicyRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
saveFederationQueuePolicyin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
batchSaveFederationQueuePolicies
public org.apache.hadoop.yarn.server.api.protocolrecords.BatchSaveFederationQueuePoliciesResponse batchSaveFederationQueuePolicies(org.apache.hadoop.yarn.server.api.protocolrecords.BatchSaveFederationQueuePoliciesRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
batchSaveFederationQueuePoliciesin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
listFederationQueuePolicies
public org.apache.hadoop.yarn.server.api.protocolrecords.QueryFederationQueuePoliciesResponse listFederationQueuePolicies(org.apache.hadoop.yarn.server.api.protocolrecords.QueryFederationQueuePoliciesRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
listFederationQueuePoliciesin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
deleteFederationApplication
public org.apache.hadoop.yarn.server.api.protocolrecords.DeleteFederationApplicationResponse deleteFederationApplication(org.apache.hadoop.yarn.server.api.protocolrecords.DeleteFederationApplicationRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
deleteFederationApplicationin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
getFederationSubClusters
public org.apache.hadoop.yarn.server.api.protocolrecords.GetSubClustersResponse getFederationSubClusters(org.apache.hadoop.yarn.server.api.protocolrecords.GetSubClustersRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
getFederationSubClustersin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-
deleteFederationPoliciesByQueues
public org.apache.hadoop.yarn.server.api.protocolrecords.DeleteFederationQueuePoliciesResponse deleteFederationPoliciesByQueues(org.apache.hadoop.yarn.server.api.protocolrecords.DeleteFederationQueuePoliciesRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException - Specified by:
deleteFederationPoliciesByQueuesin interfaceorg.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocol- Throws:
org.apache.hadoop.yarn.exceptions.YarnExceptionIOException
-