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

Introduce Resource.AllocationInfo.

    XMLWordPrintableJSON

Details

    • Task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 1.2.0
    • scheduler api
    • None

    Description

      As part of supporting multi-role frameworks, we can no longer assume that the framework ID maps directly to a role. Even without multi-role framework support, this assumption breaks if we want to allow frameworks to modify their role.

      To determine which role resources are allocated to, we now need to store allocation information within the Resource:

      message Resource {
        ...
      
        // The role that this resource is reserved for. If "*", this indicates
        // that the resource is unreserved. Otherwise, the resource will only
        // be offered to frameworks that belong to this role.
        optional string role = 6 [default = "*"];
        
        message AllocationInfo {
          // If set, this resource is allocated to a role. Note that
          // in the future, this may be unset and the scheduler
          // may be responsible for allocating to one of its roles.
          optional string role = 1;
      
      
          // In the future, we may add additional fields here, e.g. priority tier,
          // type of allocation (quota / fair share).
        }
      
        optional AllocationInfo allocation_info = X;
      
        ...
      }
      

      An alternative considered was to augment TaskInfo or ExecutorInfo or introduce another layer on top of Resource called Allocation which contains Resource. The first option does not work since some components that need to know about the allocation do not have visibility into the tasks/executors. The second option requires dramatic changes and so is harder to accomplish.

      Attachments

        Issue Links

          Activity

            People

              guoger Jay Guo
              bmahler Benjamin Mahler
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: