Hi all, A few years back, we added some constructs called maintenance primitives to Mesos. This feature was meant to allow operators and frameworks to cooperate in draining tasks off nodes scheduled for maintenance. As far as we've observed since, this feature never achieved enough adoption to be useful for operators.
As such, we are proposing a more opinionated approach for draining tasks. The goal is to have Mesos perform draining in lieu of frameworks, minimizing or eliminating the need to change frameworks to account for draining. We will also be simplifying the operator workflow, which would only require a single call (holding an AgentID) to start draining; and a single call to bring an agent back into the cluster. Due to how closely this proposed feature overlaps with maintenance primitives, we will be deprecating maintenance primitives upon implementation of agent draining. If interested, please take a look at the design document: https://docs.google.com/document/d/1w3O80NFE6m52XNMv7EdXSO-1NebEs8opA8VZPG1tW0Y/