-
Notifications
You must be signed in to change notification settings - Fork 526
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
rbd: Add exclusive-lock and journaling image features for RBD image #684
Conversation
Hi, I'm glad to join ceph-csi. If I have wrong code or concept, please let me know. I will fix up immediately. Thanks! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@techhanx Thanks for the PR 👍
I would like to see a few things in this PR
- passing
exlusive-lock
andjournaling
from storageclass - E2E to cover this scenario
- Testing with krbd and rbd-nbd
@dillaman PTAL |
@Madhu-1
|
okay I missed adding more information we need to update documentation and storageclass examples for these features https://github.com/ceph/ceph-csi/blob/master/examples/rbd/storageclass.yaml#L24-L26 and https://github.com/ceph/ceph-csi/blob/master/docs/deploy-rbd.md
i that case we need to error out in the node stage request if the mounter is |
@Madhu-1 I applied your suggestion:) Could you please check the commit? Thanks. |
How about object-map feature? Any reason to not enable it? |
@dimm0 Yes, there's no reason to not enable the object-map feature. But the pr stale for now, If pr is processed, I will add the feature. Thanks :) |
Is this still pending in the new version? |
@Madhu-1 did you get a chance to review this PR? Thank you. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
changes look good, can you please resolve merge conflicts
@Madhu-1 I made some code changes to make it easy to add image features in the future. For example, if we want to add a fast-diff image feature, we need to specify it requires an object map feature. Could you please review the code again? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
changes looks good, Thanks for adding Unit testing. i will review it once again
@Madhu-1 I am looking at how to change this PR and trying to change the current rbdVolume
changed rbdVolume
|
we have json tag to support backward compatibility for v1.0.0 volumes, removing/changing the fields may result in breakage |
Ok, I will proceed without changing the field. Thanks! |
@Madhu-1 I added a new commit, and it seems to work fine. Can you please review again? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks pretty good to me. Just a few minor comments that can be addressed.
This PR upgrade go-ceph version to v0.3.0 Signed-off-by: woohhan <woohyung_han@tmax.co.kr>
Current rbd plugin only supports the layering feature for rbd image. Add exclusive-lock and journaling image features for the rbd plugin. Signed-off-by: woohhan <woohyung_han@tmax.co.kr>
I think the CI failed because of this problem:
In case the attacher/rbd-plugin needs to write to (note that the Semantic Pull Request bot is not enforced, failing is accepted - and we don't understand yet why it fails) |
@nixpanic looks deploy mounts /sys here? But it's strange, I haven't changed the code. I think I need to build a test environment again and fix it... |
} | ||
if err = validateImageFeatures(rbdVol.ImageFeatures, rbdVol.Mounter); err != nil { | ||
// for backward compatibility, just log and pass | ||
klog.Errorf(err.Error()) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
logging and passing is not a good idea.
for _, f := range arr { | ||
sf, found := supportedFeatures[f] | ||
if !found { | ||
return errors.Errorf("invalid feature %s for volume csi-rbdplugin", f) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
return errors.Errorf("invalid feature %s for volume csi-rbdplugin", f) | |
return errors.Errorf("invalid feature %s for %s", f,reqName) |
please pass request name for more clarity
the issue here is its using rbd mounted for image features |
This pull request now has conflicts with the target branch. Could you please resolve conflicts and force push the corrected changes? 🙏 |
moved this out of release-v3.0.0 milestone |
Why!? |
As this PR is stale for at least last 2 months moved it to next release -v3.1.0 |
@woohhan do you have free time to work on this one? or shall I take it over and mention your name as a co-author? |
@Madhu-1 Could you please take it over? unfortunately i have no time to proceed... thanks |
Current rbd plugin only supports the layering feature for rbd image. Add exclusive-lock and journaling image features for the rbd. Signed-off-by: woohhan <woohyung_han@tmax.co.kr> Co-authored-by: Madhu Rajanna <madhupr007@gmail.com> This will abandon the PR ceph#684
closing this one in favor of #1325 |
Current rbd plugin only supports the layering feature for rbd image. Add exclusive-lock and journaling image features for the rbd. Signed-off-by: woohhan <woohyung_han@tmax.co.kr> Co-authored-by: Madhu Rajanna <madhupr007@gmail.com> This will abandon the PR ceph#684
Current rbd plugin only supports the layering feature for rbd image. Add exclusive-lock and journaling image features for the rbd. Signed-off-by: woohhan <woohyung_han@tmax.co.kr> Co-authored-by: Madhu Rajanna <madhupr007@gmail.com> This will abandon the PR ceph#684
Current rbd plugin only supports the layering feature for rbd image. Add exclusive-lock and journaling image features for the rbd. Signed-off-by: woohhan <woohyung_han@tmax.co.kr> Co-authored-by: Madhu Rajanna <madhupr007@gmail.com> This will abandon the PR ceph#684
Current rbd plugin only supports the layering feature for rbd image. Add exclusive-lock and journaling image features for the rbd. Signed-off-by: woohhan <woohyung_han@tmax.co.kr> Co-authored-by: Madhu Rajanna <madhupr007@gmail.com> This will abandon the PR ceph#684
Current rbd plugin only supports the layering feature for rbd image. Add exclusive-lock and journaling image features for the rbd. Signed-off-by: woohhan <woohyung_han@tmax.co.kr> Co-authored-by: Madhu Rajanna <madhupr007@gmail.com> This will abandon the PR ceph#684
Current rbd plugin only supports the layering feature for rbd image. Add exclusive-lock and journaling image features for the rbd. Signed-off-by: woohhan <woohyung_han@tmax.co.kr> Co-authored-by: Madhu Rajanna <madhupr007@gmail.com> This will abandon the PR ceph#684
Current rbd plugin only supports the layering feature for rbd image. Add exclusive-lock and journaling image features for the rbd. Signed-off-by: woohhan <woohyung_han@tmax.co.kr> Co-authored-by: Madhu Rajanna <madhupr007@gmail.com> This will abandon the PR ceph#684
Current rbd plugin only supports the layering feature for rbd image. Add exclusive-lock and journaling image features for the rbd. Signed-off-by: woohhan <woohyung_han@tmax.co.kr> Co-authored-by: Madhu Rajanna <madhupr007@gmail.com> This will abandon the PR ceph#684
Current rbd plugin only supports the layering feature for rbd image. Add exclusive-lock and journaling image features for the rbd. Signed-off-by: woohhan <woohyung_han@tmax.co.kr> Co-authored-by: Madhu Rajanna <madhupr007@gmail.com> This will abandon the PR ceph#684
Describe what this PR does
Add exclusive-lock and journaling image features for rbd image
Is there anything that requires special attention
If we enable the journaling feature, krbd doesn't work for the mount. We need to force mapping by rbd-nbd.
Related issues
closes: #676
Future concerns
NONE