public class RMWebServices extends org.apache.hadoop.yarn.server.webapp.WebServices implements RMWebServiceProtocol
Modifier and Type | Field and Description |
---|---|
static String |
DEFAULT_END_TIME |
static String |
DEFAULT_INCLUDE_RESOURCE |
static String |
DEFAULT_QUEUE |
static String |
DEFAULT_RESERVATION_ID |
static String |
DEFAULT_START_TIME |
static String |
DELEGATION_TOKEN_HEADER |
Constructor and Description |
---|
RMWebServices(ResourceManager rm,
org.apache.hadoop.conf.Configuration conf) |
Modifier and Type | Method and Description |
---|---|
javax.ws.rs.core.Response |
addToClusterNodeLabels(NodeLabelsInfo newNodeLabels,
javax.servlet.http.HttpServletRequest hsr)
This method adds specific node labels for specific nodes, and it is
reachable by using
RMWSConsts.ADD_NODE_LABELS . |
javax.ws.rs.core.Response |
cancelDelegationToken(javax.servlet.http.HttpServletRequest hsr)
This method cancel the delegation token from the client, and it is
reachable by using
RMWSConsts.DELEGATION_TOKEN . |
RMQueueAclInfo |
checkUserAccessToQueue(String queue,
String username,
String queueAclType,
javax.servlet.http.HttpServletRequest hsr)
This method verifies if an user has access to a specified queue.
|
javax.ws.rs.core.Response |
createNewApplication(javax.servlet.http.HttpServletRequest hsr)
Generates a new ApplicationId which is then sent to the client.
|
javax.ws.rs.core.Response |
createNewReservation(javax.servlet.http.HttpServletRequest hsr)
Generates a new ReservationId which is then sent to the client.
|
javax.ws.rs.core.Response |
deleteReservation(ReservationDeleteRequestInfo resContext,
javax.servlet.http.HttpServletRequest hsr)
Function to delete a Reservation to the RM.
|
String |
dumpSchedulerLogs(String time,
javax.servlet.http.HttpServletRequest hsr)
This method dumps the scheduler logs for the time got in input, and it is
reachable by using
RMWSConsts.SCHEDULER_LOGS . |
javax.ws.rs.core.Response |
formatSchedulerConfiguration(javax.servlet.http.HttpServletRequest hsr) |
ClusterInfo |
get()
This method retrieves the cluster information, and it is reachable by using
RMWSConsts.INFO . |
ActivitiesInfo |
getActivities(javax.servlet.http.HttpServletRequest hsr,
String nodeId)
This method retrieve all the activities in a specific node, and it is
reachable by using
RMWSConsts.SCHEDULER_ACTIVITIES . |
AppInfo |
getApp(javax.servlet.http.HttpServletRequest hsr,
String appId,
Set<String> unselectedFields)
This method retrieves the report for a specific app, and it is reachable by
using
RMWSConsts.APPS_APPID . |
AppActivitiesInfo |
getAppActivities(javax.servlet.http.HttpServletRequest hsr,
String appId,
String time)
This method retrieves all the activities for a specific app for a specific
period of time, and it is reachable by using
RMWSConsts.SCHEDULER_APP_ACTIVITIES . |
org.apache.hadoop.yarn.server.webapp.dao.AppAttemptInfo |
getAppAttempt(javax.servlet.http.HttpServletRequest req,
javax.servlet.http.HttpServletResponse res,
String appId,
String appAttemptId) |
AppAttemptsInfo |
getAppAttempts(javax.servlet.http.HttpServletRequest hsr,
String appId)
This method retrieves all the attempts information for a specific app, and
it is reachable by using
RMWSConsts.APPS_APPID_APPATTEMPTS . |
protected org.apache.hadoop.yarn.api.records.ApplicationAttemptReport |
getApplicationAttemptReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptReportRequest request) |
protected List<org.apache.hadoop.yarn.api.records.ApplicationAttemptReport> |
getApplicationAttemptsReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptsRequest request) |
protected org.apache.hadoop.yarn.api.records.ApplicationReport |
getApplicationReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationReportRequest request) |
protected List<org.apache.hadoop.yarn.api.records.ApplicationReport> |
getApplicationsReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationsRequest request) |
AppPriority |
getAppPriority(javax.servlet.http.HttpServletRequest hsr,
String appId)
This method retrieves the priority for a specific app, and it is reachable
by using
RMWSConsts.APPS_APPID_PRIORITY . |
AppQueue |
getAppQueue(javax.servlet.http.HttpServletRequest hsr,
String appId)
This method retrieves the queue for a specific app, and it is reachable by
using
RMWSConsts.APPS_APPID_QUEUE . |
AppsInfo |
getApps(javax.servlet.http.HttpServletRequest hsr,
String stateQuery,
Set<String> statesQuery,
String finalStatusQuery,
String userQuery,
String queueQuery,
String limit,
String startedBegin,
String startedEnd,
String finishBegin,
String finishEnd,
Set<String> applicationTypes,
Set<String> applicationTags,
Set<String> unselectedFields)
This method retrieves all the app reports in the cluster, and it is
reachable by using
RMWSConsts.APPS . |
AppState |
getAppState(javax.servlet.http.HttpServletRequest hsr,
String appId)
This method retrieves the state for a specific app, and it is reachable by
using
RMWSConsts.APPS_APPID_STATE . |
ApplicationStatisticsInfo |
getAppStatistics(javax.servlet.http.HttpServletRequest hsr,
Set<String> stateQueries,
Set<String> typeQueries)
This method retrieves all the statistics for a specific app, and it is
reachable by using
RMWSConsts.APP_STATISTICS . |
AppTimeoutInfo |
getAppTimeout(javax.servlet.http.HttpServletRequest hsr,
String appId,
String type)
This method retrieves the timeout information for a specific app with a
specific type, and it is reachable by using
RMWSConsts.APPS_TIMEOUTS_TYPE . |
AppTimeoutsInfo |
getAppTimeouts(javax.servlet.http.HttpServletRequest hsr,
String appId)
This method retrieves the timeout information for a specific app, and it is
reachable by using
RMWSConsts.APPS_TIMEOUTS . |
ClusterInfo |
getClusterInfo()
This method retrieves the cluster information, and it is reachable by using
RMWSConsts.INFO . |
ClusterMetricsInfo |
getClusterMetricsInfo()
This method retrieves the cluster metrics information, and it is reachable
by using
RMWSConsts.METRICS . |
NodeLabelsInfo |
getClusterNodeLabels(javax.servlet.http.HttpServletRequest hsr)
This method retrieves all the node labels in the cluster, and it is
reachable by using
RMWSConsts.GET_NODE_LABELS . |
ClusterUserInfo |
getClusterUserInfo(javax.servlet.http.HttpServletRequest hsr)
This method retrieves the cluster user information, and it is reachable by using
RMWSConsts.CLUSTER_USER_INFO . |
org.apache.hadoop.yarn.server.webapp.dao.ContainerInfo |
getContainer(javax.servlet.http.HttpServletRequest req,
javax.servlet.http.HttpServletResponse res,
String appId,
String appAttemptId,
String containerId) |
protected org.apache.hadoop.yarn.api.records.ContainerReport |
getContainerReport(org.apache.hadoop.yarn.api.protocolrecords.GetContainerReportRequest request) |
org.apache.hadoop.yarn.server.webapp.dao.ContainersInfo |
getContainers(javax.servlet.http.HttpServletRequest req,
javax.servlet.http.HttpServletResponse res,
String appId,
String appAttemptId) |
protected List<org.apache.hadoop.yarn.api.records.ContainerReport> |
getContainersReport(org.apache.hadoop.yarn.api.protocolrecords.GetContainersRequest request) |
NodeLabelsInfo |
getLabelsOnNode(javax.servlet.http.HttpServletRequest hsr,
String nodeId)
This method retrieves all the node labels for specific node, and it is
reachable by using
RMWSConsts.NODES_NODEID_GETLABELS . |
LabelsToNodesInfo |
getLabelsToNodes(Set<String> labels)
This method retrieves all the node within multiple node labels in the
cluster, and it is reachable by using
RMWSConsts.LABEL_MAPPINGS . |
NodeInfo |
getNode(String nodeId)
This method retrieves a specific node information, and it is reachable by
using
RMWSConsts.NODES_NODEID . |
NodesInfo |
getNodes(String states)
This method retrieves all the nodes information in the cluster, and it is
reachable by using
RMWSConsts.NODES . |
NodeToLabelsInfo |
getNodeToLabels(javax.servlet.http.HttpServletRequest hsr)
This method retrieves all the node labels with the respective nodes in the
cluster, and it is reachable by using
RMWSConsts.GET_NODE_TO_LABELS . |
javax.ws.rs.core.Response |
getSchedulerConfiguration(javax.servlet.http.HttpServletRequest hsr) |
javax.ws.rs.core.Response |
getSchedulerConfigurationVersion(javax.servlet.http.HttpServletRequest hsr) |
SchedulerTypeInfo |
getSchedulerInfo()
This method retrieves the current scheduler status, and it is reachable by
using
RMWSConsts.SCHEDULER . |
protected Boolean |
hasAccess(RMApp app,
javax.servlet.http.HttpServletRequest hsr) |
protected javax.ws.rs.core.Response |
killApp(RMApp app,
org.apache.hadoop.security.UserGroupInformation callerUGI,
javax.servlet.http.HttpServletRequest hsr,
String diagnostic) |
javax.ws.rs.core.Response |
listReservation(String queue,
String reservationId,
long startTime,
long endTime,
boolean includeResourceAllocations,
javax.servlet.http.HttpServletRequest hsr)
Function to retrieve a list of all the reservations.
|
protected javax.ws.rs.core.Response |
moveApp(RMApp app,
org.apache.hadoop.security.UserGroupInformation callerUGI,
String targetQueue) |
javax.ws.rs.core.Response |
postDelegationToken(DelegationToken tokenData,
javax.servlet.http.HttpServletRequest hsr)
This method posts a delegation token from the client, and it is reachable
by using
RMWSConsts.DELEGATION_TOKEN . |
javax.ws.rs.core.Response |
postDelegationTokenExpiration(javax.servlet.http.HttpServletRequest hsr)
This method updates the expiration for a delegation token from the client,
and it is reachable by using
RMWSConsts.DELEGATION_TOKEN_EXPIRATION . |
javax.ws.rs.core.Response |
removeFromCluserNodeLabels(Set<String> oldNodeLabels,
javax.servlet.http.HttpServletRequest hsr)
This method removes all the node labels for specific nodes, and it is
reachable by using
RMWSConsts.REMOVE_NODE_LABELS . |
javax.ws.rs.core.Response |
replaceLabelsOnNode(Set<String> newNodeLabelsName,
javax.servlet.http.HttpServletRequest hsr,
String nodeId)
This method replaces all the node labels for specific node, and it is
reachable by using
RMWSConsts.NODES_NODEID_REPLACE_LABELS . |
javax.ws.rs.core.Response |
replaceLabelsOnNodes(NodeToLabelsEntryList newNodeToLabels,
javax.servlet.http.HttpServletRequest hsr)
This method replaces all the node labels for specific nodes, and it is
reachable by using
RMWSConsts.REPLACE_NODE_TO_LABELS . |
javax.ws.rs.core.Response |
submitApplication(ApplicationSubmissionContextInfo newApp,
javax.servlet.http.HttpServletRequest hsr)
Function to submit an app to the RM.
|
javax.ws.rs.core.Response |
submitReservation(ReservationSubmissionRequestInfo resContext,
javax.servlet.http.HttpServletRequest hsr)
Function to submit a Reservation to the RM.This method is reachable by
using
RMWSConsts.RESERVATION_SUBMIT . |
javax.ws.rs.core.Response |
updateApplicationPriority(AppPriority targetPriority,
javax.servlet.http.HttpServletRequest hsr,
String appId)
This method updates the priority for a specific application, and it is
reachable by using
RMWSConsts.APPS_APPID_PRIORITY . |
javax.ws.rs.core.Response |
updateApplicationTimeout(AppTimeoutInfo appTimeout,
javax.servlet.http.HttpServletRequest hsr,
String appId)
This method updates the timeout information for a specific app, and it is
reachable by using
RMWSConsts.APPS_TIMEOUT . |
javax.ws.rs.core.Response |
updateAppQueue(AppQueue targetQueue,
javax.servlet.http.HttpServletRequest hsr,
String appId)
This method updates the queue for a specific application, and it is
reachable by using
RMWSConsts.APPS_APPID_QUEUE . |
javax.ws.rs.core.Response |
updateAppState(AppState targetState,
javax.servlet.http.HttpServletRequest hsr,
String appId)
This method updates the state of the app in input, and it is reachable by
using
RMWSConsts.APPS_APPID_STATE . |
javax.ws.rs.core.Response |
updateReservation(ReservationUpdateRequestInfo resContext,
javax.servlet.http.HttpServletRequest hsr)
Function to update a Reservation to the RM.
|
javax.ws.rs.core.Response |
updateSchedulerConfiguration(org.apache.hadoop.yarn.webapp.dao.SchedConfUpdateInfo mutationInfo,
javax.servlet.http.HttpServletRequest hsr) |
javax.ws.rs.core.Response |
validateAndGetSchedulerConfiguration(org.apache.hadoop.yarn.webapp.dao.SchedConfUpdateInfo mutationInfo,
javax.servlet.http.HttpServletRequest hsr) |
public static final String DEFAULT_QUEUE
public static final String DEFAULT_RESERVATION_ID
public static final String DEFAULT_START_TIME
public static final String DEFAULT_END_TIME
public static final String DEFAULT_INCLUDE_RESOURCE
public static final String DELEGATION_TOKEN_HEADER
@Inject public RMWebServices(ResourceManager rm, org.apache.hadoop.conf.Configuration conf)
public ClusterInfo get()
RMWebServiceProtocol
RMWSConsts.INFO
.get
in interface RMWebServiceProtocol
public ClusterInfo getClusterInfo()
RMWebServiceProtocol
RMWSConsts.INFO
.getClusterInfo
in interface RMWebServiceProtocol
public ClusterUserInfo getClusterUserInfo(@Context javax.servlet.http.HttpServletRequest hsr)
RMWebServiceProtocol
RMWSConsts.CLUSTER_USER_INFO
.getClusterUserInfo
in interface RMWebServiceProtocol
public ClusterMetricsInfo getClusterMetricsInfo()
RMWebServiceProtocol
RMWSConsts.METRICS
.getClusterMetricsInfo
in interface RMWebServiceProtocol
ApplicationClientProtocol.getClusterMetrics(org.apache.hadoop.yarn.api.protocolrecords.GetClusterMetricsRequest)
public SchedulerTypeInfo getSchedulerInfo()
RMWebServiceProtocol
RMWSConsts.SCHEDULER
.getSchedulerInfo
in interface RMWebServiceProtocol
public String dumpSchedulerLogs(String time, @Context javax.servlet.http.HttpServletRequest hsr) throws IOException
RMWebServiceProtocol
RMWSConsts.SCHEDULER_LOGS
.dumpSchedulerLogs
in interface RMWebServiceProtocol
time
- the period of time. It is a FormParam.hsr
- the servlet requestIOException
- when it cannot create dump log filepublic NodesInfo getNodes(String states)
RMWebServiceProtocol
RMWSConsts.NODES
.getNodes
in interface RMWebServiceProtocol
states
- the states we want to filter. It is a QueryParam.ApplicationClientProtocol.getClusterNodes(org.apache.hadoop.yarn.api.protocolrecords.GetClusterNodesRequest)
public NodeInfo getNode(String nodeId)
RMWebServiceProtocol
RMWSConsts.NODES_NODEID
.getNode
in interface RMWebServiceProtocol
nodeId
- the node we want to retrieve the information. It is a
PathParam.public AppsInfo getApps(@Context javax.servlet.http.HttpServletRequest hsr, String stateQuery, Set<String> statesQuery, String finalStatusQuery, String userQuery, String queueQuery, String limit, String startedBegin, String startedEnd, String finishBegin, String finishEnd, Set<String> applicationTypes, Set<String> applicationTags, Set<String> unselectedFields)
RMWebServiceProtocol
RMWSConsts.APPS
.getApps
in interface RMWebServiceProtocol
hsr
- the servlet requeststateQuery
- right now the stateQuery is deprecated. It is a
QueryParam.statesQuery
- filter the result by states. It is a QueryParam.finalStatusQuery
- filter the result by final states. It is a
QueryParam.userQuery
- filter the result by user. It is a QueryParam.queueQuery
- filter the result by queue. It is a QueryParam.limit
- set a limit of the result. It is a QueryParam.startedBegin
- filter the result by started begin time. It is a
QueryParam.startedEnd
- filter the result by started end time. It is a
QueryParam.finishBegin
- filter the result by finish begin time. It is a
QueryParam.finishEnd
- filter the result by finish end time. It is a QueryParam.applicationTypes
- filter the result by types. It is a QueryParam.applicationTags
- filter the result by tags. It is a QueryParam.unselectedFields
- De-selected params to avoid from report. It is a
QueryParam.ApplicationBaseProtocol.getApplications(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationsRequest)
public ActivitiesInfo getActivities(@Context javax.servlet.http.HttpServletRequest hsr, String nodeId)
RMWebServiceProtocol
RMWSConsts.SCHEDULER_ACTIVITIES
.getActivities
in interface RMWebServiceProtocol
hsr
- the servlet requestnodeId
- the node we want to retrieve the activities. It is a
QueryParam.public AppActivitiesInfo getAppActivities(@Context javax.servlet.http.HttpServletRequest hsr, String appId, String time)
RMWebServiceProtocol
RMWSConsts.SCHEDULER_APP_ACTIVITIES
.getAppActivities
in interface RMWebServiceProtocol
hsr
- the servlet requestappId
- the applicationId we want to retrieve the activities. It is a
QueryParam.time
- for how long we want to retrieve the activities. It is a
QueryParam.public ApplicationStatisticsInfo getAppStatistics(@Context javax.servlet.http.HttpServletRequest hsr, Set<String> stateQueries, Set<String> typeQueries)
RMWebServiceProtocol
RMWSConsts.APP_STATISTICS
.getAppStatistics
in interface RMWebServiceProtocol
hsr
- the servlet requeststateQueries
- filter the result by states. It is a QueryParam.typeQueries
- filter the result by type names. It is a QueryParam.public AppInfo getApp(@Context javax.servlet.http.HttpServletRequest hsr, String appId, Set<String> unselectedFields)
RMWebServiceProtocol
RMWSConsts.APPS_APPID
.getApp
in interface RMWebServiceProtocol
hsr
- the servlet requestappId
- the Id of the application we want the report. It is a
PathParam.unselectedFields
- De-selected param list to avoid from report. It is
a QueryParam.ApplicationBaseProtocol.getApplicationReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationReportRequest)
public AppAttemptsInfo getAppAttempts(@Context javax.servlet.http.HttpServletRequest hsr, String appId)
RMWebServiceProtocol
RMWSConsts.APPS_APPID_APPATTEMPTS
.getAppAttempts
in interface RMWebServiceProtocol
hsr
- the servlet requestappId
- the application we want to get the attempts. It is a
PathParam.ApplicationBaseProtocol.getApplicationAttempts(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptsRequest)
public org.apache.hadoop.yarn.server.webapp.dao.AppAttemptInfo getAppAttempt(@Context javax.servlet.http.HttpServletRequest req, @Context javax.servlet.http.HttpServletResponse res, String appId, String appAttemptId)
getAppAttempt
in class org.apache.hadoop.yarn.server.webapp.WebServices
public org.apache.hadoop.yarn.server.webapp.dao.ContainersInfo getContainers(@Context javax.servlet.http.HttpServletRequest req, @Context javax.servlet.http.HttpServletResponse res, String appId, String appAttemptId)
getContainers
in class org.apache.hadoop.yarn.server.webapp.WebServices
public org.apache.hadoop.yarn.server.webapp.dao.ContainerInfo getContainer(@Context javax.servlet.http.HttpServletRequest req, @Context javax.servlet.http.HttpServletResponse res, String appId, String appAttemptId, String containerId)
getContainer
in class org.apache.hadoop.yarn.server.webapp.WebServices
public AppState getAppState(@Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocol
RMWSConsts.APPS_APPID_STATE
.getAppState
in interface RMWebServiceProtocol
hsr
- the servlet requestappId
- the Id of the application we want the state. It is a
PathParam.org.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authorizedpublic javax.ws.rs.core.Response updateAppState(AppState targetState, @Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException, org.apache.hadoop.yarn.exceptions.YarnException, InterruptedException, IOException
RMWebServiceProtocol
RMWSConsts.APPS_APPID_STATE
.updateAppState
in interface RMWebServiceProtocol
targetState
- the target state for the app. It is a content param.hsr
- the servlet requestappId
- the Id of the application we want to update the state. It is a
PathParam.org.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authorized to invoke this
methodorg.apache.hadoop.yarn.exceptions.YarnException
- if app does not existInterruptedException
- if interruptedIOException
- if doAs action throws an IOExceptionpublic NodeToLabelsInfo getNodeToLabels(@Context javax.servlet.http.HttpServletRequest hsr) throws IOException
RMWebServiceProtocol
RMWSConsts.GET_NODE_TO_LABELS
.getNodeToLabels
in interface RMWebServiceProtocol
hsr
- the servlet requestIOException
- if an IOException happenedApplicationClientProtocol.getNodeToLabels(org.apache.hadoop.yarn.api.protocolrecords.GetNodesToLabelsRequest)
public LabelsToNodesInfo getLabelsToNodes(Set<String> labels) throws IOException
RMWebServiceProtocol
RMWSConsts.LABEL_MAPPINGS
.getLabelsToNodes
in interface RMWebServiceProtocol
labels
- filter the result by node labels. It is a QueryParam.IOException
- if an IOException happenedApplicationClientProtocol.getLabelsToNodes(org.apache.hadoop.yarn.api.protocolrecords.GetLabelsToNodesRequest)
public javax.ws.rs.core.Response replaceLabelsOnNodes(NodeToLabelsEntryList newNodeToLabels, @Context javax.servlet.http.HttpServletRequest hsr) throws IOException
RMWebServiceProtocol
RMWSConsts.REPLACE_NODE_TO_LABELS
.replaceLabelsOnNodes
in interface RMWebServiceProtocol
newNodeToLabels
- the list of new labels. It is a content param.hsr
- the servlet requestIOException
ResourceManagerAdministrationProtocol.replaceLabelsOnNode(org.apache.hadoop.yarn.server.api.protocolrecords.ReplaceLabelsOnNodeRequest)
public javax.ws.rs.core.Response replaceLabelsOnNode(Set<String> newNodeLabelsName, @Context javax.servlet.http.HttpServletRequest hsr, String nodeId) throws Exception
RMWebServiceProtocol
RMWSConsts.NODES_NODEID_REPLACE_LABELS
.replaceLabelsOnNode
in interface RMWebServiceProtocol
newNodeLabelsName
- the list of new labels. It is a QueryParam.hsr
- the servlet requestnodeId
- the node we want to replace the node labels. It is a
PathParam.Exception
- if an exception happenedResourceManagerAdministrationProtocol.replaceLabelsOnNode(org.apache.hadoop.yarn.server.api.protocolrecords.ReplaceLabelsOnNodeRequest)
public NodeLabelsInfo getClusterNodeLabels(@Context javax.servlet.http.HttpServletRequest hsr) throws IOException
RMWebServiceProtocol
RMWSConsts.GET_NODE_LABELS
.getClusterNodeLabels
in interface RMWebServiceProtocol
hsr
- the servlet requestIOException
- if an IOException happenedApplicationClientProtocol.getClusterNodeLabels(org.apache.hadoop.yarn.api.protocolrecords.GetClusterNodeLabelsRequest)
public javax.ws.rs.core.Response addToClusterNodeLabels(NodeLabelsInfo newNodeLabels, @Context javax.servlet.http.HttpServletRequest hsr) throws Exception
RMWebServiceProtocol
RMWSConsts.ADD_NODE_LABELS
.addToClusterNodeLabels
in interface RMWebServiceProtocol
newNodeLabels
- the node labels to add. It is a content param.hsr
- the servlet requestException
- in case of bad requestResourceManagerAdministrationProtocol.addToClusterNodeLabels(org.apache.hadoop.yarn.server.api.protocolrecords.AddToClusterNodeLabelsRequest)
public javax.ws.rs.core.Response removeFromCluserNodeLabels(Set<String> oldNodeLabels, @Context javax.servlet.http.HttpServletRequest hsr) throws Exception
RMWebServiceProtocol
RMWSConsts.REMOVE_NODE_LABELS
.removeFromCluserNodeLabels
in interface RMWebServiceProtocol
oldNodeLabels
- the node labels to remove. It is a QueryParam.hsr
- the servlet requestException
- in case of bad requestResourceManagerAdministrationProtocol.removeFromClusterNodeLabels(org.apache.hadoop.yarn.server.api.protocolrecords.RemoveFromClusterNodeLabelsRequest)
public NodeLabelsInfo getLabelsOnNode(@Context javax.servlet.http.HttpServletRequest hsr, String nodeId) throws IOException
RMWebServiceProtocol
RMWSConsts.NODES_NODEID_GETLABELS
.getLabelsOnNode
in interface RMWebServiceProtocol
hsr
- the servlet requestnodeId
- the node we want to get all the node labels. It is a
PathParam.IOException
- if an IOException happenedprotected javax.ws.rs.core.Response killApp(RMApp app, org.apache.hadoop.security.UserGroupInformation callerUGI, javax.servlet.http.HttpServletRequest hsr, String diagnostic) throws IOException, InterruptedException
IOException
InterruptedException
public AppPriority getAppPriority(@Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocol
RMWSConsts.APPS_APPID_PRIORITY
.getAppPriority
in interface RMWebServiceProtocol
hsr
- the servlet requestappId
- the app we want to get the priority. It is a PathParam.org.apache.hadoop.security.authorize.AuthorizationException
- in case of the user is not authorizedpublic javax.ws.rs.core.Response updateApplicationPriority(AppPriority targetPriority, @Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException, org.apache.hadoop.yarn.exceptions.YarnException, InterruptedException, IOException
RMWebServiceProtocol
RMWSConsts.APPS_APPID_PRIORITY
.updateApplicationPriority
in interface RMWebServiceProtocol
targetPriority
- the priority we want to set for the app. It is a
content param.hsr
- the servlet requestappId
- the application we want to update its priority. It is a
PathParam.org.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authenticatedorg.apache.hadoop.yarn.exceptions.YarnException
- if the target is nullInterruptedException
- if interrupted.IOException
- if the update fails.public AppQueue getAppQueue(@Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocol
RMWSConsts.APPS_APPID_QUEUE
.getAppQueue
in interface RMWebServiceProtocol
hsr
- the servlet requestappId
- the application we want to retrieve its queue. It is a
PathParam.org.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authenticatedpublic javax.ws.rs.core.Response updateAppQueue(AppQueue targetQueue, @Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException, org.apache.hadoop.yarn.exceptions.YarnException, InterruptedException, IOException
RMWebServiceProtocol
RMWSConsts.APPS_APPID_QUEUE
.updateAppQueue
in interface RMWebServiceProtocol
targetQueue
- the queue we want to set. It is a content param.hsr
- the servlet requestappId
- the application we want to change its queue. It is a
PathParam.org.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authenticatedorg.apache.hadoop.yarn.exceptions.YarnException
- if the app is not foundInterruptedException
- if interrupted.IOException
- if the update fails.protected javax.ws.rs.core.Response moveApp(RMApp app, org.apache.hadoop.security.UserGroupInformation callerUGI, String targetQueue) throws IOException, InterruptedException
IOException
InterruptedException
public javax.ws.rs.core.Response createNewApplication(@Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException
RMWebServiceProtocol
RMWSConsts.APPS_NEW_APPLICATION
.createNewApplication
in interface RMWebServiceProtocol
hsr
- the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authorized to invoke this
methodIOException
- if the creation failsInterruptedException
- if interruptedApplicationClientProtocol.getNewApplication(org.apache.hadoop.yarn.api.protocolrecords.GetNewApplicationRequest)
public javax.ws.rs.core.Response submitApplication(ApplicationSubmissionContextInfo newApp, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException
RMWebServiceProtocol
RMWSConsts.APPS
.submitApplication
in interface RMWebServiceProtocol
newApp
- structure containing information to construct the
ApplicationSubmissionContext. It is a content param.hsr
- the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authorized to invoke this
methodIOException
- if the submission failedInterruptedException
- if interruptedApplicationClientProtocol.submitApplication(org.apache.hadoop.yarn.api.protocolrecords.SubmitApplicationRequest)
public javax.ws.rs.core.Response postDelegationToken(DelegationToken tokenData, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException, Exception
RMWebServiceProtocol
RMWSConsts.DELEGATION_TOKEN
.postDelegationToken
in interface RMWebServiceProtocol
tokenData
- the token to delegate. It is a content param.hsr
- the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException
- if Kerberos auth failedIOException
- if the delegation failedInterruptedException
- if interruptedException
- in case of bad requestApplicationBaseProtocol.getDelegationToken(org.apache.hadoop.yarn.api.protocolrecords.GetDelegationTokenRequest)
public javax.ws.rs.core.Response postDelegationTokenExpiration(@Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException, Exception
RMWebServiceProtocol
RMWSConsts.DELEGATION_TOKEN_EXPIRATION
.postDelegationTokenExpiration
in interface RMWebServiceProtocol
hsr
- the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException
- if Kerberos auth failedIOException
- if the delegation failedException
- in case of bad requestInterruptedException
ApplicationBaseProtocol.renewDelegationToken(org.apache.hadoop.yarn.api.protocolrecords.RenewDelegationTokenRequest)
public javax.ws.rs.core.Response cancelDelegationToken(@Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException, Exception
RMWebServiceProtocol
RMWSConsts.DELEGATION_TOKEN
.cancelDelegationToken
in interface RMWebServiceProtocol
hsr
- the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException
- if Kerberos auth failedIOException
- if the delegation failedInterruptedException
- if interruptedException
- in case of bad requestApplicationBaseProtocol.cancelDelegationToken(org.apache.hadoop.yarn.api.protocolrecords.CancelDelegationTokenRequest)
public javax.ws.rs.core.Response createNewReservation(@Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException
RMWebServiceProtocol
RMWSConsts.RESERVATION_NEW
.createNewReservation
in interface RMWebServiceProtocol
hsr
- the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authorized to invoke this
method.IOException
- if creation failedInterruptedException
- if interruptedApplicationClientProtocol.getNewReservation(org.apache.hadoop.yarn.api.protocolrecords.GetNewReservationRequest)
public javax.ws.rs.core.Response submitReservation(ReservationSubmissionRequestInfo resContext, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException
RMWebServiceProtocol
RMWSConsts.RESERVATION_SUBMIT
.submitReservation
in interface RMWebServiceProtocol
resContext
- provides information to construct the
ReservationSubmissionRequest. It is a content param.hsr
- the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authorized to invoke this
methodIOException
- if creation failedInterruptedException
- if interruptedApplicationClientProtocol.submitReservation(org.apache.hadoop.yarn.api.protocolrecords.ReservationSubmissionRequest)
public javax.ws.rs.core.Response updateReservation(ReservationUpdateRequestInfo resContext, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException
RMWebServiceProtocol
RMWSConsts.RESERVATION_UPDATE
.updateReservation
in interface RMWebServiceProtocol
resContext
- provides information to construct the
ReservationUpdateRequest. It is a content param.hsr
- the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authorized to invoke this
methodIOException
- if the operation failedInterruptedException
- if interruptedApplicationClientProtocol.updateReservation(org.apache.hadoop.yarn.api.protocolrecords.ReservationUpdateRequest)
public javax.ws.rs.core.Response deleteReservation(ReservationDeleteRequestInfo resContext, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, IOException, InterruptedException
RMWebServiceProtocol
RMWSConsts.RESERVATION_DELETE
.deleteReservation
in interface RMWebServiceProtocol
resContext
- provides information to construct the
ReservationDeleteRequest. It is a content param.hsr
- the servlet requestorg.apache.hadoop.security.authorize.AuthorizationException
- when the user group information cannot be
retrieved.IOException
- when a ReservationDeleteRequest
cannot be
created from the ReservationDeleteRequestInfo
. This
exception is also thrown on
ClientRMService.deleteReservation
invokation failure.InterruptedException
- if doAs action throws an InterruptedException.ApplicationClientProtocol.deleteReservation(org.apache.hadoop.yarn.api.protocolrecords.ReservationDeleteRequest)
public javax.ws.rs.core.Response listReservation(String queue, String reservationId, long startTime, long endTime, boolean includeResourceAllocations, @Context javax.servlet.http.HttpServletRequest hsr) throws Exception
RMWebServiceProtocol
RMWSConsts.RESERVATION_LIST
.listReservation
in interface RMWebServiceProtocol
queue
- filter the result by queue. It is a QueryParam.reservationId
- filter the result by reservationId. It is a
QueryParam.startTime
- filter the result by start time. It is a QueryParam.endTime
- filter the result by end time. It is a QueryParam.includeResourceAllocations
- true if the resource allocation should be
in the result, false otherwise. It is a QueryParam.hsr
- the servlet requestException
- in case of bad requestApplicationClientProtocol.listReservations(org.apache.hadoop.yarn.api.protocolrecords.ReservationListRequest)
public AppTimeoutInfo getAppTimeout(@Context javax.servlet.http.HttpServletRequest hsr, String appId, String type) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocol
RMWSConsts.APPS_TIMEOUTS_TYPE
.getAppTimeout
in interface RMWebServiceProtocol
hsr
- the servlet requestappId
- the application we want to get the timeout. It is a PathParam.type
- the type of the timeouts. It is a PathParam.org.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authorizedpublic AppTimeoutsInfo getAppTimeouts(@Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocol
RMWSConsts.APPS_TIMEOUTS
.getAppTimeouts
in interface RMWebServiceProtocol
hsr
- the servlet requestappId
- the application we want to get the timeouts. It is a
PathParam.org.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authorizedpublic javax.ws.rs.core.Response updateApplicationTimeout(AppTimeoutInfo appTimeout, @Context javax.servlet.http.HttpServletRequest hsr, String appId) throws org.apache.hadoop.security.authorize.AuthorizationException, org.apache.hadoop.yarn.exceptions.YarnException, InterruptedException, IOException
RMWebServiceProtocol
RMWSConsts.APPS_TIMEOUT
.updateApplicationTimeout
in interface RMWebServiceProtocol
appTimeout
- the appTimeoutInfo. It is a content param.hsr
- the servlet requestappId
- the application we want to update. It is a PathParam.org.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authorized to invoke this
methodorg.apache.hadoop.yarn.exceptions.YarnException
- in case of bad requestInterruptedException
- if interruptedIOException
- if the operation failedApplicationClientProtocol.updateApplicationTimeouts(org.apache.hadoop.yarn.api.protocolrecords.UpdateApplicationTimeoutsRequest)
protected org.apache.hadoop.yarn.api.records.ApplicationReport getApplicationReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationReportRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException
getApplicationReport
in class org.apache.hadoop.yarn.server.webapp.WebServices
org.apache.hadoop.yarn.exceptions.YarnException
IOException
protected List<org.apache.hadoop.yarn.api.records.ApplicationReport> getApplicationsReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationsRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException
getApplicationsReport
in class org.apache.hadoop.yarn.server.webapp.WebServices
org.apache.hadoop.yarn.exceptions.YarnException
IOException
protected org.apache.hadoop.yarn.api.records.ApplicationAttemptReport getApplicationAttemptReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptReportRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException
getApplicationAttemptReport
in class org.apache.hadoop.yarn.server.webapp.WebServices
org.apache.hadoop.yarn.exceptions.YarnException
IOException
protected List<org.apache.hadoop.yarn.api.records.ApplicationAttemptReport> getApplicationAttemptsReport(org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptsRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException
getApplicationAttemptsReport
in class org.apache.hadoop.yarn.server.webapp.WebServices
org.apache.hadoop.yarn.exceptions.YarnException
IOException
protected org.apache.hadoop.yarn.api.records.ContainerReport getContainerReport(org.apache.hadoop.yarn.api.protocolrecords.GetContainerReportRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException
getContainerReport
in class org.apache.hadoop.yarn.server.webapp.WebServices
org.apache.hadoop.yarn.exceptions.YarnException
IOException
protected List<org.apache.hadoop.yarn.api.records.ContainerReport> getContainersReport(org.apache.hadoop.yarn.api.protocolrecords.GetContainersRequest request) throws org.apache.hadoop.yarn.exceptions.YarnException, IOException
getContainersReport
in class org.apache.hadoop.yarn.server.webapp.WebServices
org.apache.hadoop.yarn.exceptions.YarnException
IOException
public javax.ws.rs.core.Response formatSchedulerConfiguration(@Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException
org.apache.hadoop.security.authorize.AuthorizationException
public javax.ws.rs.core.Response validateAndGetSchedulerConfiguration(org.apache.hadoop.yarn.webapp.dao.SchedConfUpdateInfo mutationInfo, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException
org.apache.hadoop.security.authorize.AuthorizationException
public javax.ws.rs.core.Response updateSchedulerConfiguration(org.apache.hadoop.yarn.webapp.dao.SchedConfUpdateInfo mutationInfo, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException, InterruptedException
org.apache.hadoop.security.authorize.AuthorizationException
InterruptedException
public javax.ws.rs.core.Response getSchedulerConfiguration(@Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException
org.apache.hadoop.security.authorize.AuthorizationException
public javax.ws.rs.core.Response getSchedulerConfigurationVersion(@Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException
org.apache.hadoop.security.authorize.AuthorizationException
public RMQueueAclInfo checkUserAccessToQueue(String queue, String username, String queueAclType, @Context javax.servlet.http.HttpServletRequest hsr) throws org.apache.hadoop.security.authorize.AuthorizationException
RMWebServiceProtocol
checkUserAccessToQueue
in interface RMWebServiceProtocol
queue
- queueusername
- userqueueAclType
- acl type of queue, it could be
SUBMIT_APPLICATIONS/ADMINISTER_QUEUEhsr
- requestorg.apache.hadoop.security.authorize.AuthorizationException
- if the user is not authorized to invoke this
method.Copyright © 2008–2021 Apache Software Foundation. All rights reserved.