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

feat(shared): adding shared mount support ZFSPV volumes #164

Merged
merged 1 commit into from
Jul 1, 2020

Conversation

pawanpraka1
Copy link
Contributor

@pawanpraka1 pawanpraka1 commented Jun 26, 2020

fixes : #152

Signed-off-by: Pawan pawan@mayadata.io

Why is this PR required? What issue does it fix?:

Applications who wants to share a volume can use below storageclass
to make their volumes shared by multiple pods

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: openebs-zfspv
parameters:
  shared: "yes"
  fstype: "zfs"
  poolname: "zfspv-pool"
provisioner: zfs.csi.openebs.io

Now the provisioned volume using this storageclass can be used by multiple pods.
Here pods have to make sure of the data consistency and have to have locking mechanism.
One thing to note here is pods will be scheduled to the node where volume is present
so that all the pods can use the same volume as they can access it locally only.
This way we can avoid the NFS overhead and can get the optimal performance also.

What this PR does?:
Add a new field "shared" which specifies that the volume can be shared mounted.
Also fixed the log formatting in the GRPC log.

Does this PR require any upgrade changes?:

no

Checklist:

  • Fixes #
  • PR Title follows the convention of <type>(<scope>): <subject>
  • Has the change log section been updated?
  • Commit has unit tests
  • Commit has integration tests
  • (Optional) Are upgrade changes included in this PR? If not, mention the issue/PR to track:
  • (Optional) If documentation changes are required, which issue on https://github.com/openebs/openebs-docs is used to track them:

@pawanpraka1 pawanpraka1 requested a review from kmova June 26, 2020 08:51
@pawanpraka1 pawanpraka1 added the enhancement Add new functionality to existing feature label Jun 26, 2020
@pawanpraka1 pawanpraka1 added this to the v0.9 milestone Jun 26, 2020
@codecov-commenter
Copy link

codecov-commenter commented Jun 26, 2020

Codecov Report

Merging #164 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #164   +/-   ##
=======================================
  Coverage   22.65%   22.65%           
=======================================
  Files          14       14           
  Lines         490      490           
=======================================
  Hits          111      111           
  Misses        378      378           
  Partials        1        1           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d0d1664...179338a. Read the comment docs.

Applications who want to share a volume can use below storageclass
to make their volumes shared by multiple pods

```yaml
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: openebs-zfspv
parameters:
  shared: "yes"
  fstype: "zfs"
  poolname: "zfspv-pool"
provisioner: zfs.csi.openebs.io
```

Now the provisioned volume using this storageclass can be used by multiple pods.
Here pods have to make sure of the data consistency and have to have locking mechanism.
One thing to note here is pods will be scheduled to the node where volume is present
so that all the pods can use the same volume as they can access it locally only.
This was we can avoid the NFS overhead and can get the optimal performance also.

Also fixed the log formatting in the GRPC log.

Signed-off-by: Pawan <pawan@mayadata.io>
@kmova kmova merged commit 27065bf into openebs:master Jul 1, 2020
@pawanpraka1 pawanpraka1 deleted the shared branch July 1, 2020 19:14
pawanpraka1 added a commit to pawanpraka1/zfs-localpv that referenced this pull request Jul 9, 2020
pawanpraka1 added a commit to pawanpraka1/zfs-localpv that referenced this pull request Jul 9, 2020
pawanpraka1 added a commit to pawanpraka1/zfs-localpv that referenced this pull request Jul 13, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Add new functionality to existing feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support R[OW]X for dataset
3 participants