Skip to content

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

Closed
Ab-hishek wants to merge 3 commits into
openebs:developfrom
Ab-hishek:shared-vg
Closed

[WIP] feat(shared-vg) : add support for create, delete, publish & unpublish of shared volumes#184
Ab-hishek wants to merge 3 commits into
openebs:developfrom
Ab-hishek:shared-vg

Conversation

@Ab-hishek
Copy link
Copy Markdown

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

Signed-off-by: Abhishek Agarwal abhishek.agarwal@mayadata.io

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:

Signed-off-by: Abhishek Agarwal <abhishek.agarwal@mayadata.io>
@Ab-hishek Ab-hishek self-assigned this Apr 6, 2022
Comment thread pkg/driver/agent.go
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
Copy Markdown
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
Copy Markdown
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
Copy Markdown
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