[
https://issues.apache.org/jira/browse/STORM-564?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14225744#comment-14225744
]
ASF GitHub Bot commented on STORM-564:
--------------------------------------
Github user nathanmarz commented on the pull request:
https://github.com/apache/storm/pull/322#issuecomment-64515204
Storm's ISupervisor / INimbus interfaces let you control port assignment
external to Storm itself. I don't know about YARN, but that's how I got
storm-mesos working. The problem with dynamic ports is they make topology
management a lot more complex. Now it's not enough to know the worker
assignments to be able to send and receive messages, you also need the workers
to choose a port and broadcast it. This creates all sorts of additional failure
modes that don't currently exist. If we're going to add complexity to Storm,
there better be a very compelling reason for it. I don't see that with this
feature.
> Support worker use dynamic port
> -------------------------------
>
> Key: STORM-564
> URL: https://issues.apache.org/jira/browse/STORM-564
> Project: Apache Storm
> Issue Type: Improvement
> Affects Versions: 0.10.0
> Reporter: xiajun
> Assignee: xiajun
> Priority: Minor
>
> Background: When deploy storm mixed with other services, or deploy storm by
> yarn and mesos or some other scheduling system, worker port conflict is
> really a big problem.
> In order to fix this, we add worker.dynamic.port to indicate whether worker
> bind dynamic port or not.
> When set worker.dynamic.port as true, worker will use port that specified by
> supervisor.slots.ports;
> When set worker.dynamic.port as false, worker will bind 0, and the port that
> specified by supervisor.slots.ports will be nominally port in storm, which
> stand for worker really bind port.
> And when worker launched, worker will report it's really bind port by
> heartbeat, and nimbus send worker's bind port by assignment.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)