Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
-
None
Description
There have been some discussions for allowing reservations to multiple roles (or more generally, role expressions).
E.g. All resources on GPU agents are reserved for "eng/machine-learning" or "finance/forecasting" or "data-science/modeling" to use, because these are the roles in my organization that make use of GPUs, and I want to guarantee that none of the non-GPU workloads tie up the GPU machines cpus/mem/disk.
This GPU related example would allow us to deprecate and remove the GPU_RESOURCES capability, which is a hack implementation of reservations to multiple roles. Mesos will only offer GPU machine resources to GPU capable schedulers. Having the ability to make reservations to multiple roles obviates this hack.
With hierarchical roles, we have a restricted version of reservations to multiple roles, where the roles are restricted to the descendant roles. For example, a reservation for "gpu-workloads" can be allocated to "gpu-workloads/eng/image-processing", "gpu-workloads/data-science/modeling", "gpu-workloads/finance/forecasting etc. What isn't achievable is a reservation to multiple roles across the tree, e.g. "eng/image-processing" OR "finance/forecasting" OR "data-science/modeling". This can get clumsy because if "eng/ML" wants to get in on the reserved gpus, the user would have to place a related role underneath the "gpu-workloads" role, e.g. "gpu-workloads/eng/ML".
A similar use case has been that some agents are "public" and there are disparate roles in the organization that need access to these hosts, so we want to ensure that only these roles get access and no other roles can tie up the resources on these hosts.
Attachments
Issue Links
- blocks
-
MESOS-7577 Remove GPU_RESOURCES capability and master flag `--filter-gpu-resources={true|false}`
- Open
-
MESOS-7579 Deprecate GPU_RESOURCES capability and master flag `--filter-gpu-resources={true|false}`
- Open
- relates to
-
MESOS-7576 Add master flag `--filter-gpu-resources={true|false}`
- Resolved
- links to