[ 
https://issues.apache.org/jira/browse/MESOS-6575?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16382948#comment-16382948
 ] 

James Peach commented on MESOS-6575:
------------------------------------

{quote}
When the resource is updated in the xfs handler they are not tracked, but 
instead are added up.
{quote}

This is because the XFS isolator doesn't support path volumes so there's no 
need to track any paths. It might be interesting to refactor a unified way to 
tracking disk resource, as a prerequisite to any other XFS changes, but AFAICT 
that's not actually required here.

{quote}
The idea behind the "diff_bytes" would be that you'd take the hard limit of any 
given task and subtract that amount of bytes to create a soft_limit below the 
hard limit.
{quote}

Thinking about this some more, I'm not sure that we need to do anything with 
soft limits at all. Let's assume that we implement this for task sandboxes by 
applying a hard limit that is "disk_resource + some_constant_slop". We still 
need to have the isolator periodically check the usage in order to raise the 
limitation, so it doesn't really matter whether we have a soft limit. All we 
really need to do is check the current usage against the resource limit.

> Change `disk/xfs` isolator to terminate executor when it exceeds quota
> ----------------------------------------------------------------------
>
>                 Key: MESOS-6575
>                 URL: https://issues.apache.org/jira/browse/MESOS-6575
>             Project: Mesos
>          Issue Type: Task
>          Components: agent, containerization
>            Reporter: Santhosh Kumar Shanmugham
>            Assignee: James Peach
>            Priority: Major
>
> Unlike {{disk/du}} isolator which sends a {{ContainerLimitation}} protobuf 
> when the executor exceeds the quota, {{disk/xfs}} isolator, which relies on 
> XFS's internal quota enforcement, silently fails the {{write}} operation, 
> that causes the quota limit to be exceeded, without surfacing the quota 
> breach information.
> This task is to change the `disk/xfs` isolator so that, a 
> {{ContainerLimitation}} message is triggered when the quota is exceeded. 
> This feature will rely on the underlying filesystem being mounted with 
> {{pqnoenforce}} (accounting-only mode), so that XFS does not silently causes 
> a {{EDQUOT}} error on writes that causes the quota to be exceeded. Now the 
> isolator can track the disk quota via {{xfs_quota}}, very much like 
> {{disk/du}} using {{du}}, every {{container_disk_watch_interval}} and surface 
> the disk quota limit exceed event via a {{ContainerLimitation}} protobuf, 
> causing the executor to be terminated. This feature can then be turned on/off 
> via the existing {{enforce_container_disk_quota}} option.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to