@kensipe kensipe released this Sep 26, 2017 · 676 commits to master since this release

Assets 2

Changes from 1.5.0 to 1.5.1

Bugfix release

Fixed issues

  • MARATHON-7576 Changed default of UnreachableEnabled to (0,0)
  • D907 TaskLauncherActor doesn't wait for in-flight tasks on stop
  • MARATHON-7765 Fixes issue in which /v2/info endpoint always returned 1.5.0-snapshot1, regardless of the actual endpoint.
  • PR 5421 Added SchedulerPlugin to enable the ability to customize the rejection of offers. (see below)
  • MARATHON-2520 Improved logging around migration
  • D1044 EventStream implementation moved to Akka eventStream
  • MARATHON-7545 Initialize RunSpecTaskProcessor and RunSpecValidator at startup to early detect misconfiguration.
  • D974 Plugin configuration or initialization issues are made more obvious, potentially causing Marathon to not launch.
  • MARATHON-7707 Resident tasks now have an up-to-date agentInfo (agentId) when they are re-launched, rather than preserving the agentInfo as received during initial launch.
  • MARATHON-7724 Better socket error handling leader proxy.
  • MARATHON-7711, MARATHON-7338 Under certain circumstances, resident tasks wouldn't relaunch when resources were available, and reservations wouldn't be freed. In order to address this, Marathon no longer suppresses offers from Mesos.
  • PR 5432 App and pod validation errors for missing network name.
  • MARATHON-1703 Fixed issue in which constraints would not be properly evaluated when launching multiple resident tasks at a time.

1.5.1 New Behavior

mesosphere.marathon.plugin.scheduler.SchedulerPlugin

This plugin allows to reject offers. Possible use-cases are:

  • Maintenance. Mark agent as going to maintenance and reject new offers from it.
  • Analytics. If task fails, for example, 5 times for 5 minutes, we can assume that it will fail again and reject new offers for it.
  • Binding to agents. For example, agents can be marked as included into primary or secondary group. Task can be marked with group name. Plugin can schedule task deployment to primary agents. If all primary agents are busy, task can be scheduled to secondary agents