[
https://issues.apache.org/jira/browse/MESOS-8760?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16695192#comment-16695192
]
Chun-Hung Hsiao commented on MESOS-8760:
----------------------------------------
If we go with MESOS-9387, an alternative approach for this is to add a
framework-supplied workload ID in the {{Volume}} protobuf, then do proper
unpublish/publish in SLRP.
> Make resource provider aware of workloads.
> ------------------------------------------
>
> Key: MESOS-8760
> URL: https://issues.apache.org/jira/browse/MESOS-8760
> Project: Mesos
> Issue Type: Task
> Reporter: Chun-Hung Hsiao
> Assignee: Chun-Hung Hsiao
> Priority: Major
>
> Since the {{NodePublishVolume}} CSI call is supposed to be called for each
> workload, SLRP it self should be aware of workloads. Potentially, we could
> have the following event in the resource provider API:
> {noformat}
> // Received when the master or agent wants to update the resource usage of
> // this resource provider for each workload (e.g., framework or container).
> message ApplyResourceUsage {
> required UUID uuid = 1;
> // A map from a workload identifier (e.g., FrameworkID or ContainerID) to
> // the resources used by the workload.
> map<string, Resources> resources = 2;
> }
> {noformat}
> For SLRP or any local resource provider, a workload is a container, and SLRP
> can implement {{ApplyResourceUsage}} by checking if a resource is used by a
> new workload, and call {{NodeUnpublishVolume}} and {{NodePublishVolume}}
> accordingly.
> For ERP, a workload can be a framework, so the resource provider can
> checkpoint which framework is using what resources and provide such
> information to the allocator after a failover.
> Note that the {{ApplyResourceUsage}} call should report *all* resources being
> used on an agent, so it can handle resources without identifiers (such as
> cpus, mem) correctly.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)