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

Unify cloud provider between legacy and CSI driver #393

Closed
jsafrane opened this issue Oct 23, 2019 · 15 comments
Closed

Unify cloud provider between legacy and CSI driver #393

jsafrane opened this issue Oct 23, 2019 · 15 comments
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.

Comments

@jsafrane
Copy link
Contributor

Kubernetes cloud provider for AWS is still being actively maintained and bugs are fixed there. It could be worth importing it instead of using a fork in this repo. The code there has been well tested in real world and it would ensure that migration to CSI is as smooth as possible.

On the other hand, the code is old and has very little unit tests so refactoring is hard.

@wongma7
Copy link
Contributor

wongma7 commented Oct 23, 2019

100% agree. For example, #389 refers to a fix in legacy cloudprovider. If we use legacy, we could get the fixes for free instead of having to backport every improvement to our "mini" cloudprovider fork in pkg/cloud

@leakingtapan
Copy link
Contributor

leakingtapan commented Nov 25, 2019

I like the idea of unifying the two cloud provider between legacy cloud provider and the once being implemented in this CSI driver. I would like more discussion on which one to pick before we can go with importing legacy cloud provider. Several questions:

  1. I'm assuming you are proposing to use legacy provider for AWS to replace the cloud.go in this package, right?

  2. Both provider defines the interface in slight different way, do we know what are the deltas? Also the cloud.go in the package implements extra features such as snapshot. I don't think it will be a drop in replacement.

  3. What's your long term view of the legacy provider? My understanding is that it will be moved to CCM for non EBS related code and EBS related code will be moved into this project.

Given above, I would propose to change this issue topic to Unify cloud provider between legacy and CSI driver

@jsafrane
Copy link
Contributor Author

I'm assuming you are proposing to use legacy provider for AWS to replace the cloud.go in this package, right?

Yes

Both provider defines the interface in slight different way, do we know what are the deltas? Also the cloud.go in the package implements extra features such as snapshot. I don't think it will be a drop in replacement.

I don't disagree...

What's your long term view of the legacy provider? My understanding is that it will be moved to CCM for non EBS related code and EBS related code will be moved into this project.

Yes, probably.

Given above, I would propose to change this issue topic to Unify cloud provider between legacy and CSI driver

Ack, all I want is to pull the fixes we do in the legacy cloud provider also into the CSI driver. The legacy provider has been tested really lot in production.

@jsafrane jsafrane changed the title Consider using legacy Kubernetes cloud provider Unify cloud provider between legacy and CSI driver Nov 28, 2019
@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Feb 26, 2020
@jsafrane
Copy link
Contributor Author

/remove-lifecycle stale

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Feb 28, 2020
@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label May 28, 2020
@fejta-bot
Copy link

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle rotten

@k8s-ci-robot k8s-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Jun 27, 2020
@jsafrane
Copy link
Contributor Author

/remove-lifecycle rotten

@k8s-ci-robot k8s-ci-robot removed the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Jul 16, 2020
@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Oct 14, 2020
@fejta-bot
Copy link

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle rotten

@k8s-ci-robot k8s-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Nov 13, 2020
@fejta-bot
Copy link

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/close

@k8s-ci-robot
Copy link
Contributor

@fejta-bot: Closing this issue.

In response to this:

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@wongma7
Copy link
Contributor

wongma7 commented Dec 15, 2020

/reopen

/lifecycle frozen

this is imporant otherwise the csi driver will just suffer all the same bugs the intree driver ran into over the years

@k8s-ci-robot k8s-ci-robot reopened this Dec 15, 2020
@k8s-ci-robot
Copy link
Contributor

@wongma7: Reopened this issue.

In response to this:

/reopen

/lifecycle frozen

this is imporant otherwise the csi driver will just suffer all the same bugs the intree driver ran into over the years

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@k8s-ci-robot k8s-ci-robot added lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. and removed lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. labels Dec 15, 2020
@wongma7
Copy link
Contributor

wongma7 commented Jul 29, 2022

closing, we have mostly copy/pasted the important parts from cloudprovider-aws into pkg/cloud , so we kind of have achieved goal of unifying, just in the opposite direction. cloud-provider-aws is working on v2 api, someday we might depend on it but it's probably easier to treat this repo's pkg/cloud as source of truth.

@wongma7 wongma7 closed this as completed Jul 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.
Projects
None yet
Development

No branches or pull requests

5 participants