hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Wangda Tan (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (YARN-6050) AMs can't be scheduled on racks or nodes
Date Fri, 03 Feb 2017 02:01:51 GMT

    [ https://issues.apache.org/jira/browse/YARN-6050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15850910#comment-15850910
] 

Wangda Tan commented on YARN-6050:
----------------------------------

bq. This patch doesn't add hard locality though (or change how that works). That's still governed
by the relaxLocality booleans in the ResourceRequest objects that the client passes along.
This is true, but the AM blacklisting (added by YARN-2005) feature may prevent scheduler allocate
container for a failed AM container since the host which AM asks may be blacklisted by scheduler.

To me it is better to handle this case together with the patch.

> AMs can't be scheduled on racks or nodes
> ----------------------------------------
>
>                 Key: YARN-6050
>                 URL: https://issues.apache.org/jira/browse/YARN-6050
>             Project: Hadoop YARN
>          Issue Type: Bug
>    Affects Versions: 2.9.0, 3.0.0-alpha2
>            Reporter: Robert Kanter
>            Assignee: Robert Kanter
>         Attachments: YARN-6050.001.patch, YARN-6050.002.patch, YARN-6050.003.patch, YARN-6050.004.patch,
YARN-6050.005.patch, YARN-6050.006.patch
>
>
> Yarn itself supports rack/node aware scheduling for AMs; however, there currently are
two problems:
> # To specify hard or soft rack/node requests, you have to specify more than one {{ResourceRequest}}.
 For example, if you want to schedule an AM only on "rackA", you have to create two {{ResourceRequest}},
like this:
> {code}
> ResourceRequest.newInstance(PRIORITY, ANY, CAPABILITY, NUM_CONTAINERS, false);
> ResourceRequest.newInstance(PRIORITY, "rackA", CAPABILITY, NUM_CONTAINERS, true);
> {code}
> The problem is that the Yarn API doesn't actually allow you to specify more than one
{{ResourceRequest}} in the {{ApplicationSubmissionContext}}.  The current behavior is to either
build one from {{getResource}} or directly from {{getAMContainerResourceRequest}}, depending
on if {{getAMContainerResourceRequest}} is null or not.  We'll need to add a third method,
say {{getAMContainerResourceRequests}}, which takes a list of {{ResourceRequest}} so that
clients can specify the multiple resource requests.
> # There are some places where things are hardcoded to overwrite what the client specifies.
 These are pretty straightforward to fix.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-issues-help@hadoop.apache.org


Mime
View raw message