mesos-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Anindya Sinha <anindya_si...@apple.com>
Subject Support for shared resources
Date Thu, 07 Jul 2016 08:36:32 GMT
Hi

This is a followup/update to the work that has been going on for the support for shared resources.
For reference, the epic is MESOS-3421 (https://issues.apache.org/jira/browse/MESOS-3421 <https://issues.apache.org/jira/browse/MESOS-3421>).

Support for shared resources involves the following high level design points that I would
like to share (details in the design document below):
A shared resource can be used by multiple tasks simultaneously (and hence can be offered to
multiple frameworks at the same time).
Any resource can be marked as a shared resource by setting SharedInfo in the Resource protobuf.
Although this functionality is applicable to any resource, this feature is being enabled for
persistent volumes only.
Shared persistent volumes can be created and destroyed via the existing CREATE and DESTROY
calls.
A shared persistent volume can be destroyed only if there is no running or pending task that
has this shared resource assigned. When a shared persistent volume is destroyed, pending offers
containing this shared persistent volume are rescinded.
Internally, the Resources class has been refactored to include the shared count for each Resource
contained in the Resources object.
Resource arithmetic in Resources class takes into consideration the shared count for shared
resources.
There is no change in the algorithm for determination of dominant resource. To account for
fairness when shared resources are involved, we assign equal share of the shared resource
to all frameworks to which the shared resource is allocated to.
Frameworks need to opt in via a capability (SHAREABLE_RESOURCES) to receive shared resources
in the offers received from mesos master. If this capability is not opted for, the functionality
is same as in the HEAD today.

For more details on the functionality and high level implementation, please refer to the design
document:
https://docs.google.com/document/d/18O4SH3H4BQriW6CTrg3TlQTiVC-rBRsMePhz99Y_bss/edit?usp=sharing
<https://docs.google.com/document/d/18O4SH3H4BQriW6CTrg3TlQTiVC-rBRsMePhz99Y_bss/edit?usp=sharing>

Thanks
Anindya
Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message