Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mount CephFS once per node and bind mount the subvolumes for subsequent NodeStage requests #476

Closed
ShyamsundarR opened this issue Jul 15, 2019 · 2 comments
Labels
component/cephfs Issues related to CephFS

Comments

@ShyamsundarR
Copy link
Contributor

Describe the feature you'd like to have

Each CephFS subvolume that goes through NodeStage request maps the subvolume to the passed in target_path. Instead, we could try and check if we can map the subvolumes_group, and then bind mount the sub-directory for the request. Thereby, reuse the mount of the subvolumes_group for other NodeStage requests on the same node.

What is the value to the end user? (why is it a priority?)

This would reduce the number of CephFS mounts on the system from number of subvolumes in use to the number of subvolume_groups in use. Hence, reducing resource consumption on these nodes and also making the staging process faster.

How will we know we have a good solution? (acceptance criteria)

If we schedule more than one pod using a PV from the same CephFS storageclass (in kubernetes) we should only see one CephFS mount.

Additional context

There maybe some security gotchas here, that we may need to think through before implementation. Also, as we would get NodeStage once per PV and not once per PVs parent subvolume_group use count of such a mount needs to be maintained by the plugin, and recovery of the same also needs consideration when using kernel CephFS and the plugin is restarted (IOW, use count is lost but the filesystem is still mounted and in use by multiple pods).

@ShyamsundarR
Copy link
Contributor Author

This is part of the request put into #269 and as we are removing the per subvolume credential creation, we should be able to think about this enhancement separately.

@humblec
Copy link
Collaborator

humblec commented Sep 30, 2020

@ShyamsundarR considering subvolume namespaced mounts brings more security and better persmission handling, I believe we no longer require this. Closing this for now. Please feel free to reopen if required.

@humblec humblec closed this as completed Sep 30, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/cephfs Issues related to CephFS
Projects
None yet
Development

No branches or pull requests

3 participants