Peter Kolloch created MESOS-2802: ------------------------------------ Summary: Prevent immediate reuse of network ports for different tasks Key: MESOS-2802 URL: https://issues.apache.org/jira/browse/MESOS-2802 Project: Mesos Issue Type: Improvement Reporter: Peter Kolloch
Currently, if a task finishes or dies, another task might reuse the same port immediately afterwards. If another task or a load balancer connects to this port, still expecting the old task, there might be unpleasant surprises. For example, imagine that a visitor of your Mesos hosted web page sees your internal reporting tool instead of your company market material when hitting your page during an update. To make this less likely, Marathon contains code which tries to randomize dynamically assigned ports. This is a workaround at best and we would like to get rid of this code. I imagine that other frameworks might include similar code. As a solution, I propose a grace period for ports. If a task dies, the associated ports resources should not immediately go back into the resource pool. Instead, Mesos should wait for a configurable time and only then offer them for new tasks again. If you then specify a grace period of 2 minutes and update your service discovery load balancer every 30 seconds, you can be reasonably sure that no improper port reuse occurs. -- This message was sent by Atlassian JIRA (v6.3.4#6332)