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

KEP-2923: Ceph RBD CSI Migration #2963

Merged
merged 1 commit into from
Sep 15, 2021
Merged

Conversation

Jiawei0227
Copy link
Contributor

  • One-line PR description: Adding new KEP
  • Other comments:

/sig storage
/cc @msau42

@k8s-ci-robot k8s-ci-robot added sig/storage Categorizes an issue or PR as relevant to SIG Storage. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. kind/kep Categorizes KEP tracking issues and PRs modifying the KEP directory labels Sep 8, 2021
@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Sep 8, 2021
@msau42
Copy link
Member

msau42 commented Sep 8, 2021

/lgtm
/approve

This is to track the Ceph-specific implementation of CSIMigration. The design, test plan and PRR sections from
https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/625-csi-migration apply here.

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Sep 8, 2021
Copy link
Member

@ehashman ehashman left a comment

Choose a reason for hiding this comment

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

Original review and approval: #2432

when this feature flag && the `CSIMigration` is enabled at the same time, the in-tree volume
plugin that the cloud-provider use will be redirect to use the corresponding CSI driver. From a
user perspective, nothing will be noticed.
- InTreePluginCephRBDUnregister
Copy link
Member

Choose a reason for hiding this comment

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

This feature gate isn't present or described in https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/625-csi-migration/README.md -- is there precedent for it? What happens if this feature flag is enabled but the others are not?

I think it's a bit confusing for end-users to have so many feature flags controlling an identical feature. Why is this controlled with a feature flag rather than a config?

I think you will need to ensure this is accounted for in the beta questionnaire.

Copy link
Member

Choose a reason for hiding this comment

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

Each feature flag serves a different purpose:

  • CSIMigration: The core feature that controls the vendor-neutral logic
  • CSIMigrationVendor: Enables the feature for a specific vendor
  • InTreePluginVendorUnregister: Disables the in-tree plugin from being registered with Kubernetes. This actually can be used independently from CSIMigration* flags. Is your suggestion that this particular flag may be better suited as a config? Given that this flag is still alpha we have the opportunity to change it, but I think I would actually not track this as part of the CSI migration feature. It's a more general problem of how do we disable in-tree volume plugins.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes, as Michelle has already pointed out. The flags serves all different purpose and there is no way to replace one with another. And technically speaking, this InTreePluginCephRBDUnregister flag is not part of the CSI migration design. It is just happen to be related with CSI Migration feature. Itself is actually another big question which is in-tree volume plugins. I will rephrase this paragraph to reflect this. Thanks for the advice!

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I try to rephrase and make it more clear. Please help to take a look! Thanks and appreciate!

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I also make another PR to update the original KEP section to include the feature gates. Hopefully it makes more sense now.
#2966

Copy link
Member

Choose a reason for hiding this comment

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

It's clear to me the flags all serve different purposes, but the combination of having to use three different feature flags doesn't make for a great user experience imho.

Wearing my PRR reviewer hat, I'm stuck because you're asking me to approve this changed based on the KEP-625 questionnaire, but you've added a new feature flag here that's not discussed there :) Hence, I can't do that because this third flag's behaviour isn't documented ... it needs to be added to the PRR questions.

Copy link
Member

Choose a reason for hiding this comment

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

Let's continue discussion in #2966 which is adding documentation for the new feature gate.

@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Sep 9, 2021
Copy link
Member

@ehashman ehashman left a comment

Choose a reason for hiding this comment

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

/approve
for PRR

/hold
waiting on #2966 to merge

@k8s-ci-robot k8s-ci-robot added do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Sep 15, 2021
@xing-yang
Copy link
Contributor

/lgtm
/approve

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Sep 15, 2021
@xing-yang
Copy link
Contributor

/hold cancel

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ehashman, Jiawei0227, msau42, xing-yang

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Sep 15, 2021
@k8s-ci-robot k8s-ci-robot merged commit 54e8bed into kubernetes:master Sep 15, 2021
@k8s-ci-robot k8s-ci-robot added this to the v1.23 milestone Sep 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/kep Categorizes KEP tracking issues and PRs modifying the KEP directory lgtm "Looks good to me", indicates that a PR is ready to be merged. sig/storage Categorizes an issue or PR as relevant to SIG Storage. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants