openebs / lvm-localpv

Dynamically provision Stateful Persistent Node-Local Volumes & Filesystems for Kubernetes that is integrated with a backend LVM2 data storage stack.
Apache License 2.0
245 stars 92 forks source link

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

Closed Ab-hishek closed 1 year ago

Ab-hishek commented 2 years ago

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:

pawanpraka1 commented 2 years ago

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

avishnu commented 1 year ago

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.