[jira] [Commented] (MESOS-5158) Provide XFS quota support for persistent volumes.
[ https://issues.apache.org/jira/browse/MESOS-5158?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16575181#comment-16575181 ] James Peach commented on MESOS-5158: Working on this now. > Provide XFS quota support for persistent volumes. > - > > Key: MESOS-5158 > URL: https://issues.apache.org/jira/browse/MESOS-5158 > Project: Mesos > Issue Type: Improvement > Components: containerization >Reporter: Yan Xu >Assignee: James Peach >Priority: Major > > Given that the lifecycle of persistent volumes is managed outside of the > isolator, we may need to further abstract out the quota management > functionality to do it outside the XFS isolator. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MESOS-5158) Provide XFS quota support for persistent volumes.
[ https://issues.apache.org/jira/browse/MESOS-5158?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16513175#comment-16513175 ] James Peach commented on MESOS-5158: For CSI volumes, we can assume that the CSI plugin is enforcing quota and ignore it in the isolator. This means that if we call {{getPersistentVolumePath()}}, we have to verify that it is not CSI volume beforehand. > Provide XFS quota support for persistent volumes. > - > > Key: MESOS-5158 > URL: https://issues.apache.org/jira/browse/MESOS-5158 > Project: Mesos > Issue Type: Improvement > Components: containerization >Reporter: Yan Xu >Assignee: James Peach >Priority: Major > > Given that the lifecycle of persistent volumes is managed outside of the > isolator, we may need to further abstract out the quota management > functionality to do it outside the XFS isolator. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MESOS-5158) Provide XFS quota support for persistent volumes.
[ https://issues.apache.org/jira/browse/MESOS-5158?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16513015#comment-16513015 ] James Peach commented on MESOS-5158: Persistent volumes are managed in {{Slave::syncCheckpointedResources()}}, which will create new volumes and also delete old ones. The isolators are not notified about these changes. To support persistent volumes in the XFS isolators, we need to do a few things: # On recovery, we need to scan existing persistent volumes in order to recover the project IDs # On resources update, we need to notice any new persistent volumes and allocate a project ID for them # Periodically, we need to re-scan the persistent volumes to reclaim project IDs for volumes that have been deleted. # If we are doing active enforcement, we need to add the persistent volumes into the set of quotas that we are polling for usage. We need to consider which tasks would be killed if the volume is filled. There's no explicit way to support the the {{GROW_VOLUME}} or {{SHRINK_VOLUME}} operations since we would need to know how to update the quota when that happens. The agent doesn't explicitly grow the volume, it just updates its checkpointed resources. However, updating the quota when it is attached to a task would work, since the size of shared volumes cannot be altered. > Provide XFS quota support for persistent volumes. > - > > Key: MESOS-5158 > URL: https://issues.apache.org/jira/browse/MESOS-5158 > Project: Mesos > Issue Type: Improvement > Components: containerization >Reporter: Yan Xu >Priority: Major > > Given that the lifecycle of persistent volumes is managed outside of the > isolator, we may need to further abstract out the quota management > functionality to do it outside the XFS isolator. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MESOS-5158) Provide XFS quota support for persistent volumes.
[ https://issues.apache.org/jira/browse/MESOS-5158?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16383595#comment-16383595 ] Harold Dost III commented on MESOS-5158: Hey [~jamespeach], On a related note, one of the things mentioned in the source is about the fact that the isolator does not necessarily have knowledge of whether the persistent volume is available. Should we consider making some general utilities inspired by the ones in the xfs isolator that could be refactored so that they may be used by frameworks and isolators alike. Sound like right now there is no reference to the number of containers access a persistent volume. Maybe we would want some sort of reference counting and have a way that volumes in essence manage themselves. I am still learning the lifecycles of some of the different components, but I think it may be better when persistent volumes are are created {{src/common/sources.cpp}} to allocate a project id for the directory, and then as task use the same one increase their usage. As containers are cleaned up reduce the count. > Provide XFS quota support for persistent volumes. > - > > Key: MESOS-5158 > URL: https://issues.apache.org/jira/browse/MESOS-5158 > Project: Mesos > Issue Type: Improvement > Components: containerization >Reporter: Yan Xu >Priority: Major > > Given that the lifecycle of persistent volumes is managed outside of the > isolator, we may need to further abstract out the quota management > functionality to do it outside the XFS isolator. -- This message was sent by Atlassian JIRA (v7.6.3#76005)