You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-issues@hadoop.apache.org by "Frank Nguyen (JIRA)" <ji...@apache.org> on 2015/04/24 07:17:38 UTC

[jira] [Commented] (MAPREDUCE-6338) MR AppMaster does not honor ephemeral port range

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

Frank Nguyen commented on MAPREDUCE-6338:
-----------------------------------------

The fix for this is to update org/apache/hadoop/mapred/TaskAttemptListenerImpl.java  (2.6.0)
Change line 124:
from
.setPort(0).setNumHandlers(
to:
setPortRangeConfig(MRJobConfig.MR_AM_JOB_CLIENT_PORT_RANGE).setNumHandlers(

Preliminary testing shows that the MRAppMaster will only open up RPC listeners on ports defined within the range property.

> MR AppMaster does not honor ephemeral port range
> ------------------------------------------------
>
>                 Key: MAPREDUCE-6338
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-6338
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>          Components: mr-am, mrv2
>    Affects Versions: 2.6.0
>            Reporter: Frank Nguyen
>
> The MR AppMaster should only use port ranges defined in the yarn.app.mapreduce.am.job.client.port-range property.  On initial startup of the MRAppMaster, it does use the port range defined in the property.  However, it also opens up a listener on a random ephemeral port.  This is not the Jetty listener.  It is another listener opened by the MRAppMaster via another thread and is recognized by the RM.  Other nodes will try to communicate to it via that random port.  With firewall settings on, the MR job will fail because the random port is not opened.  This problem has caused others to have all OS ephemeral ports opened to have MR jobs run.
> This is related to MAPREDUCE-4079



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