You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2015/12/07 14:17:11 UTC
[jira] [Commented] (FLINK-3074) Make ApplicationMaster/JobManager
akka port configurable
[ https://issues.apache.org/jira/browse/FLINK-3074?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15044898#comment-15044898 ]
ASF GitHub Bot commented on FLINK-3074:
---------------------------------------
Github user tillrohrmann commented on a diff in the pull request:
https://github.com/apache/flink/pull/1416#discussion_r46818950
--- Diff: flink-yarn/src/main/scala/org/apache/flink/yarn/ApplicationMasterBase.scala ---
@@ -120,16 +122,73 @@ abstract class ApplicationMasterBase {
config.setInteger(ConfigConstants.JOB_MANAGER_WEB_PORT_KEY, 0);
}
- val (actorSystem, jmActor, archiveActor, webMonitor) =
- JobManager.startActorSystemAndJobManagerActors(
- config,
- JobManagerMode.CLUSTER,
- streamingMode,
- ownHostname,
- 0,
- getJobManagerClass,
- getArchivistClass
- )
+ // we try to start the JobManager actor system using the port definition
+ // from the config.
+ // first, we check if the port is available by opening a socket
+ // if the actor system fails to start on the port, we try further
+ val amPortRange: String = config.getString(ConfigConstants.YARN_APPLICATION_MASTER_PORT,
+ ConfigConstants.DEFAULT_YARN_APPLICATION_MASTER_PORT)
+ val portsSet = NetUtils.getPortRangeFromString(amPortRange)
+
+ // Try to start the actor system with the given set of ports:
+ var startActorResultOption: Option[(ActorSystem, ActorRef, ActorRef, Option[WebMonitor])] =
+ None
+
+ while (startActorResultOption.isEmpty && portsSet.size() > 0) {
+ if(portsSet == null) {
--- End diff --
If `portsSet == null` here, then it will have caused a NPE one line above.
> Make ApplicationMaster/JobManager akka port configurable
> --------------------------------------------------------
>
> Key: FLINK-3074
> URL: https://issues.apache.org/jira/browse/FLINK-3074
> Project: Flink
> Issue Type: Improvement
> Components: YARN Client
> Reporter: Robert Metzger
> Assignee: Robert Metzger
> Fix For: 1.0.0
>
>
> Similar to the BlobServer, the YARN ApplicationMaster should allow starting it on a specified list or range of ports.
> In cases where only certain ports are allowed by a firewall, users can specify a range of ports where they want the AM to allocate its RPC port
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)