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

[WIP] feat(shared-vg) : add support for create, delete, publish & unpublish of shared volumes #184

Closed
wants to merge 3 commits into from

Conversation

Ab-hishek
Copy link
Member

@Ab-hishek Ab-hishek commented Apr 6, 2022

Signed-off-by: Abhishek Agarwal [email protected]

Why is this PR required? What issue does it fix?:
This PR addresses the issue of adding support for creating volumes LVM2 shared volume groups.

What this PR does?:
Add new features for volumes on top of shared volume groups. This PR adds support for the following workflows:

  1. Creating an exclusively shared volume on shared volume group.
  2. Deleting an exclusively shared volume on shared volume group.
  3. Publishing(mounting) an exclusively shared LVM volume onto a pod.
  4. Unpublishing(unmounting) an exclusively shared LVM volume.

NOTE:

  1. This PR only adds support for exclusively shared LVM volume.
  2. Features such as volume expanding and volume snapshots are not supported for exclusively shared LVM volumes.

Does this PR require any upgrade changes?:

If the changes in this PR are manually verified, list down the scenarios covered::
Testing is yet to be done

Any additional information for your reviewer? :
Design doc for this PR: https://docs.google.com/document/d/1QJUPW3C8DSSwRkCjgh_O472KfZcgTnU9/edit?usp=sharing&ouid=106351714067742402436&rtpof=true&sd=true

Checklist:

@Ab-hishek Ab-hishek self-assigned this Apr 6, 2022
if vol.Spec.SharedMode == apis.LVMExclusiveSharedMode {
// Deactivate the LV before sending a successful response
// lvchange -an <lv-name>
err = lvm.ActivateLVMLogicalVolume(vol, false)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

let us not use name ActivateLVMLogicalVolume when using it for deactivation. We can use function name as ChangeLVMVolume and pass the desired status in the argument.

@pawanpraka1
Copy link
Contributor

@Ab-hishek can you please add the details about how much testing has been done and what part needs to be tested yet.

@avishnu
Copy link
Member

avishnu commented Aug 23, 2023

The implementation of this change resulted in unknown and complex scenarios. It's been decided after consulting the original author of the PR, that we can close this PR. If any one is interested to continue the shared-vg feature development, please feel free to re-open and refer the code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support for creating volumes on LVM2 shared volume group
3 participants