Benjamin Mahler created MESOS-6633:
--------------------------------------

             Summary: Introduce Resource.AllocationInfo.
                 Key: MESOS-6633
                 URL: https://issues.apache.org/jira/browse/MESOS-6633
             Project: Mesos
          Issue Type: Task
          Components: framework api
            Reporter: Benjamin Mahler


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:

{code}
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;

  ...
}
{code}

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.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to