Uploaded image for project: 'Mesos'
  1. Mesos
  2. MESOS-6432

Roles with quota assigned can "game" the system to receive excessive resources.

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.2.0
    • Component/s: allocation
    • Labels:
      None
    • Target Version/s:
    • Sprint:
      Mesosphere Sprint 49, Mesosphere Sprint 50, Mesosphere Sprint 51
    • Story Points:
      5

      Description

      The current implementation of quota allocation attempts to satisfy each resource quota for a role, but in doing so can far exceed the quota assigned to the role.

      For example, if a role has quota for [30,20,10], it can consume up to: [∞, ∞, 10] or [∞, 20, ∞] or [30, ∞, ∞] as only once each resource in the quota vector is satisfied do we stop allocating agent's resources to the role!

      As a first step for preventing gaming, we could consider quota satisfied once any of the resources in the vector has quota satisfied. This approach works reasonably well for resources that are required and are present on every agent (cpus, mem, disk). However, it doesn't work well for resources that are optional / only present on some agents (e.g. gpus) (a.k.a. non-ubiquitous / scarce resources). For this we would need to determine which agents have resources that can satisfy the quota prior to performing the allocation.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                bbannier Benjamin Bannier
                Reporter:
                bmahler Benjamin Mahler
                Shepherd:
                Benjamin Mahler
              • Votes:
                0 Vote for this issue
                Watchers:
                10 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: