YARN-7462. Render outstanding resource requests on application page of new YARN UI. Contributed by Vasudevan Skm.

This commit is contained in:
Sunil G 2017-11-15 12:01:29 +05:30
parent 18621af7ae
commit c4c57b80e1
4 changed files with 45 additions and 3 deletions

4
.gitignore vendored
View File

@ -44,6 +44,4 @@ hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/dist
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/tmp hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui/tmp
yarnregistry.pdf yarnregistry.pdf
patchprocess/ patchprocess/
.history/
.history/

View File

@ -52,6 +52,7 @@ export default DS.Model.extend({
currentAppAttemptId: DS.attr('string'), currentAppAttemptId: DS.attr('string'),
remainingTimeoutInSeconds: DS.attr('number'), remainingTimeoutInSeconds: DS.attr('number'),
applicationExpiryTime: DS.attr('string'), applicationExpiryTime: DS.attr('string'),
resourceRequests: DS.attr('array'),
isFailed: function() { isFailed: function() {
return this.get('finalStatus') === "FAILED"; return this.get('finalStatus') === "FAILED";

View File

@ -58,6 +58,7 @@ export default DS.JSONAPISerializer.extend({
allocatedMB: payload.allocatedMB, allocatedMB: payload.allocatedMB,
allocatedVCores: payload.allocatedVCores, allocatedVCores: payload.allocatedVCores,
runningContainers: payload.runningContainers, runningContainers: payload.runningContainers,
resourceRequests: payload.resourceRequests,
memorySeconds: payload.memorySeconds, memorySeconds: payload.memorySeconds,
vcoreSeconds: payload.vcoreSeconds, vcoreSeconds: payload.vcoreSeconds,
preemptedResourceMB: payload.preemptedResourceMB, preemptedResourceMB: payload.preemptedResourceMB,

View File

@ -132,6 +132,48 @@
{{/if}} {{/if}}
</div> </div>
{{#unless model.serviceName}}
<div class="row">
<div class="col-md-12 container-fluid">
<div class="panel panel-default">
<div class="panel-heading">Outstanding Resource Requests</div>
<table class="display table table-striped table-bordered"
cellspacing="0" width="100%">
<thead>
<tr>
<th>Scheduler Key</th>
<th>Resource Name</th>
<th>Capability</th>
<th># Containers</th>
<th>Relax Locality</th>
<th>Node Label Expression</th>
</tr>
</thead>
<tbody>
{{#each model.app.resourceRequests as |request|}}
<tr>
<td>{{request.priority}}</td>
<td>{{request.resourceName}}</td>
<td>&lt;Memory:{{request.capability.memory}};vCores:{{request.capability.virtualCores}}&gt;</td>
<td>{{request.numContainers}}</td>
<td>{{request.relaxLocality}}</td>
<td>
{{#if request.nodeLabelExpression}}
{{request.nodeLabelExpression}}
{{else}}
N/A
{{/if}}
</td>
</tr>
{{else}}
<div class="panel-body">No data available!</div>
{{/each}}
</tbody>
</table>
</div>
</div>
</div>
{{/unless}}
<div class="row"> <div class="row">
<div class="col-md-12 container-fluid"> <div class="col-md-12 container-fluid">
<div class="panel panel-default"> <div class="panel panel-default">