[
https://issues.apache.org/jira/browse/MESOS-4923?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Guangya Liu updated MESOS-4923:
-------------------------------
Description:
The current logic of roleSorter is that when it do role sorter, the resources
in it will include both regular resources and revocable resources, and this may
not accurate for some cases, take the following case as an instance:
1) framework1 and framework2.
2) framework1 got 1 reserved cpu and 9 revocable cpu. cpu(r1):1;cpu(*){REV}:9
3) framework2 got 9 reserved cpus: cpu(r1):9
When allocator allocate resources in next cycle, framework2 will be handled
first as it has less SCALAR resources than framework1, but this may not be
right for some cases as framework1 is using only 1 reserved resources and other
resources are revocable which can be easily got evicted.
A proposal here is treat revocable resources as a separate pool when
considering fairness, this can be achieved by introducing a new sorter for
revocable resources so as to distinguish the sorter for regular resources and
revocable resources. To the built in allocator, the logic would be as this:
1) Quota Role Sorter
2) non-revocable Role Sorter
3) Revocable Role Sorter
was:
The current logic of roleSorter is that when it do role sorter, the resources
in it will include both regular resources and revocable resources, and this may
not accurate for some cases, take the following case as an instance:
1) framework1 and framework2.
2) framework1 got 1 reserved cpu and 9 revocable cpu. cpu(r1):1;cpu(*){REV}:9
3) framework2 got 9 reserved cpus: cpu(r1):9
When allocator allocate resources in next cycle, framework2 will be handled
first as it has less SCALAR resources than framework1, but this may not be
right for some cases as framework1 is using only 1 reserved resources and other
resources are revocable which can be easily got evicted.
A proposal here is introducing a new sorter for revocable resources so as to
distinguish the sorter for regular resources and revocable resources. To the
built in allocator, the logic would be as this:
1) Quota Role Sorter
2) non-revocable Role Sorter
3) Revocable Role Sorter
> Treat revocable resources as a separate pool when considering fairness
> ----------------------------------------------------------------------
>
> Key: MESOS-4923
> URL: https://issues.apache.org/jira/browse/MESOS-4923
> Project: Mesos
> Issue Type: Bug
> Reporter: Guangya Liu
> Assignee: Klaus Ma
>
> The current logic of roleSorter is that when it do role sorter, the resources
> in it will include both regular resources and revocable resources, and this
> may not accurate for some cases, take the following case as an instance:
> 1) framework1 and framework2.
> 2) framework1 got 1 reserved cpu and 9 revocable cpu. cpu(r1):1;cpu(*){REV}:9
> 3) framework2 got 9 reserved cpus: cpu(r1):9
> When allocator allocate resources in next cycle, framework2 will be handled
> first as it has less SCALAR resources than framework1, but this may not be
> right for some cases as framework1 is using only 1 reserved resources and
> other resources are revocable which can be easily got evicted.
> A proposal here is treat revocable resources as a separate pool when
> considering fairness, this can be achieved by introducing a new sorter for
> revocable resources so as to distinguish the sorter for regular resources and
> revocable resources. To the built in allocator, the logic would be as this:
> 1) Quota Role Sorter
> 2) non-revocable Role Sorter
> 3) Revocable Role Sorter
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)