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

Reply via email to