mesosphere / marathon

Deploy and manage containers (including Docker) on top of Apache Mesos at scale.
https://mesosphere.github.io/marathon/
Apache License 2.0
4.07k stars 845 forks source link

Marathon1.3.0 create stateful app, use "residency": { "taskLostBehavior": "WAIT_FOREVER" } not pinned node #4572

Closed anywhy closed 7 years ago

anywhy commented 8 years ago

Mesos version: 1.0.1 app json like this:

{
  "id": "/test",
  "cpus": 1,
  "instances": 2,
  "mem": 128,
  "cmd": "while [ true ] ; do echo 'Hello Marathon' ; sleep 5 ; done",
  "container": {
    "type": "MESOS",
    "volumes": [
      {
        "containerPath": "data",
        "mode": "RW",
        "persistent": {
          "type": "root",
          "size": 128
        }
      }
    ]
  },
  "residency": {
    "taskLostBehavior": "WAIT_FOREVER"
  },
  "upgradeStrategy": {
    "maximumOverCapacity": 0,
    "minimumHealthCapacity": 0
  }
}

if mesos-slave node down, task lost, marathon will create new task on other node

aquamatthias commented 7 years ago

@anywhy I can acknowledge this behaviour. The improvements made for improving TASK_LOST behaviour (starting a replacement task, if a task is lost) breaks resident tasks.

anywhy commented 7 years ago

Thanks, look forward to bug repair.

meichstedt commented 7 years ago

Note: This issue has been migrated to https://jira.mesosphere.com/browse/MARATHON-1685. For more information see https://groups.google.com/forum/#!topic/marathon-framework/khtvf-ifnp8.