[ 
https://issues.apache.org/jira/browse/YARN-2408?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Renan DelValle updated YARN-2408:
---------------------------------
    Description: 
I’m proposing a new REST API for YARN which exposes a snapshot of the Resource 
Requests that exist inside of the Scheduler. My motivation behind this new 
feature is to allow external software to monitor the amount of resources being 
requested to gain more insightful information into cluster usage than is 
already provided. The API can also be used by external software to detect a 
starved application and alert the appropriate users and/or sys admin so that 
the problem may be remedied.

Here is the proposed API (a JSON counterpart is also available):
{code:xml}
<resourceRequests>
  <MB>7680</MB>
  <VCores>7</VCores>
  <appMaster>
    <applicationId>application_1412191664217_0001</applicationId>
    
<applicationAttemptId>appattempt_1412191664217_0001_000001</applicationAttemptId>
    <queueName>default</queueName>
    <totalMB>6144</totalMB>
    <totalVCores>6</totalVCores>
    <numResourceRequests>3</numResourceRequests>
    <requests>
      <request>
        <MB>1024</MB>
        <VCores>1</VCores>
        <numContainers>6</numContainers>
        <relaxLocality>true</relaxLocality>
        <priority>20</priority>
        <resourceNames>
          <resourceName>localMachine</resourceName>
          <resourceName>/default-rack</resourceName>
          <resourceName>*</resourceName>
        </resourceNames>
      </request>
    </requests>
  </appMaster>
  <appMaster>
  ...
  </appMaster>
</resourceRequests>
{code}

  was:
I’m proposing a new REST API for YARN which exposes a snapshot of the Resource 
Requests that exist inside of the Scheduler. My motivation behind this new 
feature is to allow external software to monitor the amount of resources being 
requested to gain more insightful information into cluster usage than is 
already provided. The API can also be used by external software to detect a 
starved application and alert the appropriate users and/or sys admin so that 
the problem may be remedied.

Here is the proposed API:
{code:xml}
<resourceRequests>
  <MB>96256</MB>
  <VCores>94</VCores>
  <appMaster>
    <applicationId>application_</applicationId>
    <applicationAttemptId>appattempt_</applicationAttemptId>
    <queueName>default</queueName>
    <totalPendingMB>96256</totalPendingMB>
    <totalPendingVCores>94</totalPendingVCores>
    <numResourceRequests>3</numResourceRequests>
    <resourceRequests>
      <request>
        <MB>1024</MB>
        <VCores>1</VCores>
        <resourceName>/default-rack</resourceName>
        <numContainers>94</numContainers>
        <relaxLocality>true</relaxLocality>
        <priority>20</priority>
      </request>
      <request>
        <MB>1024</MB>
        <VCores>1</VCores>
        <resourceName>*</resourceName>
        <numContainers>94</numContainers>
        <relaxLocality>true</relaxLocality>
        <priority>20</priority>
      </request>
      <request>
        <MB>1024</MB>
        <VCores>1</VCores>
        <resourceName>master</resourceName>
        <numContainers>94</numContainers>
        <relaxLocality>true</relaxLocality>
        <priority>20</priority>
      </request>
    </resourceRequests>
  </appMaster>
</resourceRequests>
{code}


> Resource Request REST API for YARN
> ----------------------------------
>
>                 Key: YARN-2408
>                 URL: https://issues.apache.org/jira/browse/YARN-2408
>             Project: Hadoop YARN
>          Issue Type: New Feature
>          Components: webapp
>            Reporter: Renan DelValle
>              Labels: features
>         Attachments: YARN-2408-3.patch
>
>
> I’m proposing a new REST API for YARN which exposes a snapshot of the 
> Resource Requests that exist inside of the Scheduler. My motivation behind 
> this new feature is to allow external software to monitor the amount of 
> resources being requested to gain more insightful information into cluster 
> usage than is already provided. The API can also be used by external software 
> to detect a starved application and alert the appropriate users and/or sys 
> admin so that the problem may be remedied.
> Here is the proposed API (a JSON counterpart is also available):
> {code:xml}
> <resourceRequests>
>   <MB>7680</MB>
>   <VCores>7</VCores>
>   <appMaster>
>     <applicationId>application_1412191664217_0001</applicationId>
>     
> <applicationAttemptId>appattempt_1412191664217_0001_000001</applicationAttemptId>
>     <queueName>default</queueName>
>     <totalMB>6144</totalMB>
>     <totalVCores>6</totalVCores>
>     <numResourceRequests>3</numResourceRequests>
>     <requests>
>       <request>
>         <MB>1024</MB>
>         <VCores>1</VCores>
>         <numContainers>6</numContainers>
>         <relaxLocality>true</relaxLocality>
>         <priority>20</priority>
>         <resourceNames>
>           <resourceName>localMachine</resourceName>
>           <resourceName>/default-rack</resourceName>
>           <resourceName>*</resourceName>
>         </resourceNames>
>       </request>
>     </requests>
>   </appMaster>
>   <appMaster>
>   ...
>   </appMaster>
> </resourceRequests>
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to