[
https://issues.apache.org/jira/browse/MESOS-3891?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Klaus Ma updated MESOS-3891:
----------------------------
Description:
Launching a task using revocable resources should be funnelled through an
accounting system:
* If a task is launched using revocable resources, the resources must not be in
use when launching the task. If they are in use, then the task should fail to
start.
* If a task is launched using reserved resources, the resources must be made
available. This means potentially evicting tasks which are using revocable
resources.
Both cases could be implemented by adding a check in Slave::runTask, like a new
helper method:
{noformat}
class Slave {
...
// Checks if the given resources are available (i.e. not utilized)
// for starting a task. If not, the task should either fail to
// start or result in the eviction of revocable resources.
virtual process::Future<bool> checkAvailableResources(
const Resources& resources);
...
}
{noformat}
was:
{noformat}
class Slave {
...
// Checks if the given resources are available (i.e. not utilized)
// for starting a task. If not, the task should either fail to
// start or result in the eviction of revocable resources.
virtual process::Future<bool> checkAvailableResources(
const Resources& resources);
...
}
{noformat}
> Add a helper function to the Agent to check available resources before
> launching a task.
> -----------------------------------------------------------------------------------------
>
> Key: MESOS-3891
> URL: https://issues.apache.org/jira/browse/MESOS-3891
> Project: Mesos
> Issue Type: Bug
> Reporter: Artem Harutyunyan
> Assignee: Artem Harutyunyan
> Labels: mesosphere
>
> Launching a task using revocable resources should be funnelled through an
> accounting system:
> * If a task is launched using revocable resources, the resources must not be
> in use when launching the task. If they are in use, then the task should
> fail to start.
> * If a task is launched using reserved resources, the resources must be made
> available. This means potentially evicting tasks which are using revocable
> resources.
> Both cases could be implemented by adding a check in Slave::runTask, like a
> new helper method:
> {noformat}
> class Slave {
> ...
> // Checks if the given resources are available (i.e. not utilized)
> // for starting a task. If not, the task should either fail to
> // start or result in the eviction of revocable resources.
> virtual process::Future<bool> checkAvailableResources(
> const Resources& resources);
> ...
> }
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)