[ 
https://issues.apache.org/jira/browse/MESOS-2018?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Park updated MESOS-2018:
--------------------------------
    Description: 
h3. Overview

This is a feature to provide better support for running stateful services on 
Mesos such as HDFS (Distributed Filesystem), Cassandra (Distributed Database), 
or MySQL (Local Database).
Current resource reservations (henceforth called "static" reservations) are 
statically determined by the slave operator at slave start time, and individual 
frameworks have no authority to reserve resources themselves.
Dynamic reservations allow a framework to dynamically reserve offered 
resources, such that those resources will only be re-offered to the same 
framework (or other frameworks with the same role).
This is especially useful if the framework's task stored some state on the 
slave, and needs a guaranteed set of resources reserved so that it can 
re-launch a task on the same slave to recover that state.

h3. Planned Stages

1. MESOS-2489: Enable a framework to perform reservation operations.

The goal of this stage is to allow the framework to send back a 
Reserve/Unreserve operation which gets validated by the master and updates the 
allocator resources. The allocator's {{allocate}} logic is left unchanged and 
the resources get offered back to the framework's role as desired.

2. MESOS-2491: Persist the reservation state on the slave.

The goal of this stage is to persist the reservation state on the slave. 
Currently the master knows to store the persistent volumes in the 
{{checkpointedResources}} data structure which gets sent to individual slaves 
to be checkpointed. We will update the master such that dynamically reserved 
resources are stored in the {{checkpointedResources}} as well. This stage also 
involves subtasks such as updating the slave re(register) logic to support 
slave re-starts.

3. MESOS-2600: Introduce reservation HTTP endpoints on the master.

The goal of this stage is to enable operators to perform reservation operations 
via HTTP endpoints on the master.

  was:
This is a feature to provide better support for running stateful services on 
Mesos such as HDFS (Distributed Filesystem), Cassandra (Distributed Database), 
or MySQL (Local Database).
Current resource reservations (henceforth called "static" reservations) are 
statically determined by the slave operator at slave start time, and individual 
frameworks have no authority to reserve resources themselves.
Dynamic reservations allow a framework to dynamically reserve offered 
resources, such that those resources will only be re-offered to the same 
framework (or other frameworks with the same role).
This is especially useful if the framework's task stored some state on the 
slave, and needs a guaranteed set of resources reserved so that it can 
re-launch a task on the same slave to recover that state.

h3. Planned Stages

1. MESOS-2489: Enable a framework to perform reservation operations.

The goal of this stage is to allow the framework to send back a 
Reserve/Unreserve operation which gets validated by the master and updates the 
allocator resources. The allocator's {{allocate}} logic is left unchanged and 
the resources get offered back to the framework's role as desired.

2. MESOS-2491: Persist the reservation state on the slave.

The goal of this stage is to persist the reservation state on the slave. 
Currently the master knows to store the persistent volumes in the 
{{checkpointedResources}} data structure which gets sent to individual slaves 
to be checkpointed. We will update the master such that dynamically reserved 
resources are stored in the {{checkpointedResources}} as well. This stage also 
involves subtasks such as updating the slave re(register) logic to support 
slave re-starts.


> Dynamic Reservation
> -------------------
>
>                 Key: MESOS-2018
>                 URL: https://issues.apache.org/jira/browse/MESOS-2018
>             Project: Mesos
>          Issue Type: Epic
>          Components: allocation, framework, master, slave
>            Reporter: Adam B
>            Assignee: Michael Park
>              Labels: mesosphere, offer, persistence, reservations, resource, 
> stateful, storage
>
> h3. Overview
> This is a feature to provide better support for running stateful services on 
> Mesos such as HDFS (Distributed Filesystem), Cassandra (Distributed 
> Database), or MySQL (Local Database).
> Current resource reservations (henceforth called "static" reservations) are 
> statically determined by the slave operator at slave start time, and 
> individual frameworks have no authority to reserve resources themselves.
> Dynamic reservations allow a framework to dynamically reserve offered 
> resources, such that those resources will only be re-offered to the same 
> framework (or other frameworks with the same role).
> This is especially useful if the framework's task stored some state on the 
> slave, and needs a guaranteed set of resources reserved so that it can 
> re-launch a task on the same slave to recover that state.
> h3. Planned Stages
> 1. MESOS-2489: Enable a framework to perform reservation operations.
> The goal of this stage is to allow the framework to send back a 
> Reserve/Unreserve operation which gets validated by the master and updates 
> the allocator resources. The allocator's {{allocate}} logic is left unchanged 
> and the resources get offered back to the framework's role as desired.
> 2. MESOS-2491: Persist the reservation state on the slave.
> The goal of this stage is to persist the reservation state on the slave. 
> Currently the master knows to store the persistent volumes in the 
> {{checkpointedResources}} data structure which gets sent to individual slaves 
> to be checkpointed. We will update the master such that dynamically reserved 
> resources are stored in the {{checkpointedResources}} as well. This stage 
> also involves subtasks such as updating the slave re(register) logic to 
> support slave re-starts.
> 3. MESOS-2600: Introduce reservation HTTP endpoints on the master.
> The goal of this stage is to enable operators to perform reservation 
> operations via HTTP endpoints on the master.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to